001package org.hl7.fhir.dstu3.formats; 002 003/* 004 Copyright (c) 2011+, HL7, Inc. 005 All rights reserved. 006 007 Redistribution and use in source and binary forms, with or without modification, 008 are permitted provided that the following conditions are met: 009 010 * Redistributions of source code must retain the above copyright notice, this 011 list of conditions and the following disclaimer. 012 * Redistributions in binary form must reproduce the above copyright notice, 013 this list of conditions and the following disclaimer in the documentation 014 and/or other materials provided with the distribution. 015 * Neither the name of HL7 nor the names of its contributors may be used to 016 endorse or promote products derived from this software without specific 017 prior written permission. 018 019 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 020 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 021 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 022 IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 023 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 024 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 025 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 026 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 027 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 028 POSSIBILITY OF SUCH DAMAGE. 029 030*/ 031 032// Generated on Mon, Apr 17, 2017 08:38+1000 for FHIR v3.0.1 033 034import org.hl7.fhir.dstu3.model.DateType; 035import org.hl7.fhir.dstu3.model.DateTimeType; 036import org.hl7.fhir.dstu3.model.CodeType; 037import org.hl7.fhir.dstu3.model.StringType; 038import org.hl7.fhir.dstu3.model.IntegerType; 039import org.hl7.fhir.dstu3.model.OidType; 040import org.hl7.fhir.dstu3.model.UriType; 041import org.hl7.fhir.dstu3.model.UuidType; 042import org.hl7.fhir.dstu3.model.InstantType; 043import org.hl7.fhir.dstu3.model.BooleanType; 044import org.hl7.fhir.dstu3.model.Base64BinaryType; 045import org.hl7.fhir.dstu3.model.UnsignedIntType; 046import org.hl7.fhir.dstu3.model.MarkdownType; 047import org.hl7.fhir.dstu3.model.TimeType; 048import org.hl7.fhir.dstu3.model.IdType; 049import org.hl7.fhir.dstu3.model.PositiveIntType; 050import org.hl7.fhir.dstu3.model.DecimalType; 051import org.hl7.fhir.dstu3.model.*; 052import org.xmlpull.v1.*; 053import org.hl7.fhir.utilities.Utilities; 054import org.hl7.fhir.exceptions.FHIRFormatError; 055import org.hl7.fhir.exceptions.FHIRException; 056import java.io.IOException; 057 058public class XmlParser extends XmlParserBase { 059 060 public XmlParser() { 061 super(); 062 } 063 064 public XmlParser(boolean allowUnknownContent) { 065 super(); 066 setAllowUnknownContent(allowUnknownContent); 067 } 068 069 070 protected boolean parseElementContent(int eventType, XmlPullParser xpp, Element res) throws XmlPullParserException, IOException, FHIRFormatError { 071 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("extension")) 072 res.getExtension().add(parseExtension(xpp)); 073 else 074 return false; 075 076 return true; 077 } 078 079 protected boolean parseBackboneContent(int eventType, XmlPullParser xpp, BackboneElement res) throws XmlPullParserException, IOException, FHIRFormatError { 080 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifierExtension")) 081 res.getModifierExtension().add(parseExtension(xpp)); 082 else 083 return parseElementContent(eventType, xpp, res); 084 085 return true; 086 } 087 088 @SuppressWarnings("unchecked") 089 protected <E extends Enum<E>> Enumeration<E> parseEnumeration(XmlPullParser xpp, E item, EnumFactory e) throws XmlPullParserException, IOException, FHIRFormatError { 090 Enumeration<E> res = new Enumeration<E>(e); 091 parseElementAttributes(xpp, res); 092 res.setValue((E) e.fromCode(xpp.getAttributeValue(null, "value"))); 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 DateType parseDate(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 106 DateType res = new DateType(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 DateTimeType parseDateTime(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 121 DateTimeType res = new DateTimeType(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 CodeType parseCode(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 136 CodeType res = new CodeType(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 StringType parseString(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 151 StringType res = new StringType(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 IntegerType parseInteger(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 166 IntegerType res = new IntegerType(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 OidType parseOid(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 181 OidType res = new OidType(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 UriType parseUri(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 196 UriType res = new UriType(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 UuidType parseUuid(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 211 UuidType res = new UuidType(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 InstantType parseInstant(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 226 InstantType res = new InstantType(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 BooleanType parseBoolean(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 241 BooleanType res = new BooleanType(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 Base64BinaryType parseBase64Binary(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 256 Base64BinaryType res = new Base64BinaryType(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 UnsignedIntType parseUnsignedInt(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 271 UnsignedIntType res = new UnsignedIntType(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 MarkdownType parseMarkdown(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 286 MarkdownType res = new MarkdownType(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 TimeType parseTime(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 301 TimeType res = new TimeType(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 IdType parseId(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 316 IdType res = new IdType(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 PositiveIntType parsePositiveInt(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 331 PositiveIntType res = new PositiveIntType(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 DecimalType parseDecimal(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 346 DecimalType res = new DecimalType(xpp.getAttributeValue(null, "value")); 347 parseElementAttributes(xpp, res); 348 next(xpp); 349 int eventType = nextNoWhitespace(xpp); 350 while (eventType != XmlPullParser.END_TAG) { 351 if (!parseElementContent(eventType, xpp, res)) 352 unknownContent(xpp); 353 eventType = nextNoWhitespace(xpp); 354 } 355 next(xpp); 356 parseElementClose(res); 357 return res; 358 } 359 360 protected Extension parseExtension(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 361 Extension res = new Extension(); 362 parseElementAttributes(xpp, res); 363 if (xpp.getAttributeValue(null, "url") != null) 364 res.setUrl(xpp.getAttributeValue(null, "url")); 365 next(xpp); 366 int eventType = nextNoWhitespace(xpp); 367 while (eventType != XmlPullParser.END_TAG) { 368 if (!parseExtensionContent(eventType, xpp, res)) 369 unknownContent(xpp); 370 eventType = nextNoWhitespace(xpp); 371 } 372 next(xpp); 373 parseElementClose(res); 374 return res; 375 } 376 377 protected boolean parseExtensionContent(int eventType, XmlPullParser xpp, Extension res) throws XmlPullParserException, IOException, FHIRFormatError { 378 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 379 res.setValue(parseType("value", xpp)); 380 } else if (!parseElementContent(eventType, xpp, res)) 381 return false; 382 return true; 383 } 384 385 protected Narrative parseNarrative(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 386 Narrative res = new Narrative(); 387 parseElementAttributes(xpp, res); 388 next(xpp); 389 int eventType = nextNoWhitespace(xpp); 390 while (eventType != XmlPullParser.END_TAG) { 391 if (!parseNarrativeContent(eventType, xpp, res)) 392 unknownContent(xpp); 393 eventType = nextNoWhitespace(xpp); 394 } 395 next(xpp); 396 parseElementClose(res); 397 return res; 398 } 399 400 protected boolean parseNarrativeContent(int eventType, XmlPullParser xpp, Narrative res) throws XmlPullParserException, IOException, FHIRFormatError { 401 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 402 res.setStatusElement(parseEnumeration(xpp, Narrative.NarrativeStatus.NULL, new Narrative.NarrativeStatusEnumFactory())); 403 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("div")) { 404 res.setDiv(parseXhtml(xpp)); 405 } else if (!parseElementContent(eventType, xpp, res)) 406 return false; 407 return true; 408 } 409 410 protected Reference parseReference(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 411 Reference res = new Reference(); 412 parseTypeAttributes(xpp, res); 413 next(xpp); 414 int eventType = nextNoWhitespace(xpp); 415 while (eventType != XmlPullParser.END_TAG) { 416 if (!parseReferenceContent(eventType, xpp, res)) 417 unknownContent(xpp); 418 eventType = nextNoWhitespace(xpp); 419 } 420 next(xpp); 421 parseElementClose(res); 422 return res; 423 } 424 425 protected boolean parseReferenceContent(int eventType, XmlPullParser xpp, Reference res) throws XmlPullParserException, IOException, FHIRFormatError { 426 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 427 res.setReferenceElement(parseString(xpp)); 428 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 429 res.setIdentifier(parseIdentifier(xpp)); 430 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 431 res.setDisplayElement(parseString(xpp)); 432 } else if (!parseElementContent(eventType, xpp, res)) 433 return false; 434 return true; 435 } 436 437 protected Quantity parseQuantity(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 438 Quantity res = new Quantity(); 439 parseTypeAttributes(xpp, res); 440 next(xpp); 441 int eventType = nextNoWhitespace(xpp); 442 while (eventType != XmlPullParser.END_TAG) { 443 if (!parseQuantityContent(eventType, xpp, res)) 444 unknownContent(xpp); 445 eventType = nextNoWhitespace(xpp); 446 } 447 next(xpp); 448 parseElementClose(res); 449 return res; 450 } 451 452 protected boolean parseQuantityContent(int eventType, XmlPullParser xpp, Quantity res) throws XmlPullParserException, IOException, FHIRFormatError { 453 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 454 res.setValueElement(parseDecimal(xpp)); 455 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comparator")) { 456 res.setComparatorElement(parseEnumeration(xpp, Quantity.QuantityComparator.NULL, new Quantity.QuantityComparatorEnumFactory())); 457 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unit")) { 458 res.setUnitElement(parseString(xpp)); 459 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 460 res.setSystemElement(parseUri(xpp)); 461 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 462 res.setCodeElement(parseCode(xpp)); 463 } else if (!parseElementContent(eventType, xpp, res)) 464 return false; 465 return true; 466 } 467 468 protected Period parsePeriod(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 469 Period res = new Period(); 470 parseTypeAttributes(xpp, res); 471 next(xpp); 472 int eventType = nextNoWhitespace(xpp); 473 while (eventType != XmlPullParser.END_TAG) { 474 if (!parsePeriodContent(eventType, xpp, res)) 475 unknownContent(xpp); 476 eventType = nextNoWhitespace(xpp); 477 } 478 next(xpp); 479 parseElementClose(res); 480 return res; 481 } 482 483 protected boolean parsePeriodContent(int eventType, XmlPullParser xpp, Period res) throws XmlPullParserException, IOException, FHIRFormatError { 484 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("start")) { 485 res.setStartElement(parseDateTime(xpp)); 486 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("end")) { 487 res.setEndElement(parseDateTime(xpp)); 488 } else if (!parseElementContent(eventType, xpp, res)) 489 return false; 490 return true; 491 } 492 493 protected Attachment parseAttachment(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 494 Attachment res = new Attachment(); 495 parseTypeAttributes(xpp, res); 496 next(xpp); 497 int eventType = nextNoWhitespace(xpp); 498 while (eventType != XmlPullParser.END_TAG) { 499 if (!parseAttachmentContent(eventType, xpp, res)) 500 unknownContent(xpp); 501 eventType = nextNoWhitespace(xpp); 502 } 503 next(xpp); 504 parseElementClose(res); 505 return res; 506 } 507 508 protected boolean parseAttachmentContent(int eventType, XmlPullParser xpp, Attachment res) throws XmlPullParserException, IOException, FHIRFormatError { 509 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentType")) { 510 res.setContentTypeElement(parseCode(xpp)); 511 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 512 res.setLanguageElement(parseCode(xpp)); 513 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("data")) { 514 res.setDataElement(parseBase64Binary(xpp)); 515 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 516 res.setUrlElement(parseUri(xpp)); 517 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("size")) { 518 res.setSizeElement(parseUnsignedInt(xpp)); 519 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("hash")) { 520 res.setHashElement(parseBase64Binary(xpp)); 521 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 522 res.setTitleElement(parseString(xpp)); 523 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("creation")) { 524 res.setCreationElement(parseDateTime(xpp)); 525 } else if (!parseElementContent(eventType, xpp, res)) 526 return false; 527 return true; 528 } 529 530 protected Duration parseDuration(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 531 Duration res = new Duration(); 532 parseTypeAttributes(xpp, res); 533 next(xpp); 534 int eventType = nextNoWhitespace(xpp); 535 while (eventType != XmlPullParser.END_TAG) { 536 if (!parseDurationContent(eventType, xpp, res)) 537 unknownContent(xpp); 538 eventType = nextNoWhitespace(xpp); 539 } 540 next(xpp); 541 parseElementClose(res); 542 return res; 543 } 544 545 protected boolean parseDurationContent(int eventType, XmlPullParser xpp, Duration res) throws XmlPullParserException, IOException, FHIRFormatError { 546 if (!parseQuantityContent(eventType, xpp, res)) 547 return false; 548 return true; 549 } 550 551 protected Count parseCount(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 552 Count res = new Count(); 553 parseTypeAttributes(xpp, res); 554 next(xpp); 555 int eventType = nextNoWhitespace(xpp); 556 while (eventType != XmlPullParser.END_TAG) { 557 if (!parseCountContent(eventType, xpp, res)) 558 unknownContent(xpp); 559 eventType = nextNoWhitespace(xpp); 560 } 561 next(xpp); 562 parseElementClose(res); 563 return res; 564 } 565 566 protected boolean parseCountContent(int eventType, XmlPullParser xpp, Count res) throws XmlPullParserException, IOException, FHIRFormatError { 567 if (!parseQuantityContent(eventType, xpp, res)) 568 return false; 569 return true; 570 } 571 572 protected Range parseRange(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 573 Range res = new Range(); 574 parseTypeAttributes(xpp, res); 575 next(xpp); 576 int eventType = nextNoWhitespace(xpp); 577 while (eventType != XmlPullParser.END_TAG) { 578 if (!parseRangeContent(eventType, xpp, res)) 579 unknownContent(xpp); 580 eventType = nextNoWhitespace(xpp); 581 } 582 next(xpp); 583 parseElementClose(res); 584 return res; 585 } 586 587 protected boolean parseRangeContent(int eventType, XmlPullParser xpp, Range res) throws XmlPullParserException, IOException, FHIRFormatError { 588 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("low")) { 589 res.setLow(parseSimpleQuantity(xpp)); 590 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("high")) { 591 res.setHigh(parseSimpleQuantity(xpp)); 592 } else if (!parseElementContent(eventType, xpp, res)) 593 return false; 594 return true; 595 } 596 597 protected Annotation parseAnnotation(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 598 Annotation res = new Annotation(); 599 parseTypeAttributes(xpp, res); 600 next(xpp); 601 int eventType = nextNoWhitespace(xpp); 602 while (eventType != XmlPullParser.END_TAG) { 603 if (!parseAnnotationContent(eventType, xpp, res)) 604 unknownContent(xpp); 605 eventType = nextNoWhitespace(xpp); 606 } 607 next(xpp); 608 parseElementClose(res); 609 return res; 610 } 611 612 protected boolean parseAnnotationContent(int eventType, XmlPullParser xpp, Annotation res) throws XmlPullParserException, IOException, FHIRFormatError { 613 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "author")) { 614 res.setAuthor(parseType("author", xpp)); 615 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("time")) { 616 res.setTimeElement(parseDateTime(xpp)); 617 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 618 res.setTextElement(parseString(xpp)); 619 } else if (!parseElementContent(eventType, xpp, res)) 620 return false; 621 return true; 622 } 623 624 protected Money parseMoney(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 625 Money res = new Money(); 626 parseTypeAttributes(xpp, res); 627 next(xpp); 628 int eventType = nextNoWhitespace(xpp); 629 while (eventType != XmlPullParser.END_TAG) { 630 if (!parseMoneyContent(eventType, xpp, res)) 631 unknownContent(xpp); 632 eventType = nextNoWhitespace(xpp); 633 } 634 next(xpp); 635 parseElementClose(res); 636 return res; 637 } 638 639 protected boolean parseMoneyContent(int eventType, XmlPullParser xpp, Money res) throws XmlPullParserException, IOException, FHIRFormatError { 640 if (!parseQuantityContent(eventType, xpp, res)) 641 return false; 642 return true; 643 } 644 645 protected Identifier parseIdentifier(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 646 Identifier res = new Identifier(); 647 parseTypeAttributes(xpp, res); 648 next(xpp); 649 int eventType = nextNoWhitespace(xpp); 650 while (eventType != XmlPullParser.END_TAG) { 651 if (!parseIdentifierContent(eventType, xpp, res)) 652 unknownContent(xpp); 653 eventType = nextNoWhitespace(xpp); 654 } 655 next(xpp); 656 parseElementClose(res); 657 return res; 658 } 659 660 protected boolean parseIdentifierContent(int eventType, XmlPullParser xpp, Identifier res) throws XmlPullParserException, IOException, FHIRFormatError { 661 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 662 res.setUseElement(parseEnumeration(xpp, Identifier.IdentifierUse.NULL, new Identifier.IdentifierUseEnumFactory())); 663 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 664 res.setType(parseCodeableConcept(xpp)); 665 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 666 res.setSystemElement(parseUri(xpp)); 667 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 668 res.setValueElement(parseString(xpp)); 669 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 670 res.setPeriod(parsePeriod(xpp)); 671 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assigner")) { 672 res.setAssigner(parseReference(xpp)); 673 } else if (!parseElementContent(eventType, xpp, res)) 674 return false; 675 return true; 676 } 677 678 protected Coding parseCoding(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 679 Coding res = new Coding(); 680 parseTypeAttributes(xpp, res); 681 next(xpp); 682 int eventType = nextNoWhitespace(xpp); 683 while (eventType != XmlPullParser.END_TAG) { 684 if (!parseCodingContent(eventType, xpp, res)) 685 unknownContent(xpp); 686 eventType = nextNoWhitespace(xpp); 687 } 688 next(xpp); 689 parseElementClose(res); 690 return res; 691 } 692 693 protected boolean parseCodingContent(int eventType, XmlPullParser xpp, Coding res) throws XmlPullParserException, IOException, FHIRFormatError { 694 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 695 res.setSystemElement(parseUri(xpp)); 696 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 697 res.setVersionElement(parseString(xpp)); 698 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 699 res.setCodeElement(parseCode(xpp)); 700 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 701 res.setDisplayElement(parseString(xpp)); 702 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("userSelected")) { 703 res.setUserSelectedElement(parseBoolean(xpp)); 704 } else if (!parseElementContent(eventType, xpp, res)) 705 return false; 706 return true; 707 } 708 709 protected Signature parseSignature(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 710 Signature res = new Signature(); 711 parseTypeAttributes(xpp, res); 712 next(xpp); 713 int eventType = nextNoWhitespace(xpp); 714 while (eventType != XmlPullParser.END_TAG) { 715 if (!parseSignatureContent(eventType, xpp, res)) 716 unknownContent(xpp); 717 eventType = nextNoWhitespace(xpp); 718 } 719 next(xpp); 720 parseElementClose(res); 721 return res; 722 } 723 724 protected boolean parseSignatureContent(int eventType, XmlPullParser xpp, Signature res) throws XmlPullParserException, IOException, FHIRFormatError { 725 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 726 res.getType().add(parseCoding(xpp)); 727 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("when")) { 728 res.setWhenElement(parseInstant(xpp)); 729 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "who")) { 730 res.setWho(parseType("who", xpp)); 731 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "onBehalfOf")) { 732 res.setOnBehalfOf(parseType("onBehalfOf", xpp)); 733 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentType")) { 734 res.setContentTypeElement(parseCode(xpp)); 735 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("blob")) { 736 res.setBlobElement(parseBase64Binary(xpp)); 737 } else if (!parseElementContent(eventType, xpp, res)) 738 return false; 739 return true; 740 } 741 742 protected SampledData parseSampledData(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 743 SampledData res = new SampledData(); 744 parseTypeAttributes(xpp, res); 745 next(xpp); 746 int eventType = nextNoWhitespace(xpp); 747 while (eventType != XmlPullParser.END_TAG) { 748 if (!parseSampledDataContent(eventType, xpp, res)) 749 unknownContent(xpp); 750 eventType = nextNoWhitespace(xpp); 751 } 752 next(xpp); 753 parseElementClose(res); 754 return res; 755 } 756 757 protected boolean parseSampledDataContent(int eventType, XmlPullParser xpp, SampledData res) throws XmlPullParserException, IOException, FHIRFormatError { 758 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("origin")) { 759 res.setOrigin(parseSimpleQuantity(xpp)); 760 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 761 res.setPeriodElement(parseDecimal(xpp)); 762 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 763 res.setFactorElement(parseDecimal(xpp)); 764 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lowerLimit")) { 765 res.setLowerLimitElement(parseDecimal(xpp)); 766 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("upperLimit")) { 767 res.setUpperLimitElement(parseDecimal(xpp)); 768 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dimensions")) { 769 res.setDimensionsElement(parsePositiveInt(xpp)); 770 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("data")) { 771 res.setDataElement(parseString(xpp)); 772 } else if (!parseElementContent(eventType, xpp, res)) 773 return false; 774 return true; 775 } 776 777 protected Ratio parseRatio(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 778 Ratio res = new Ratio(); 779 parseTypeAttributes(xpp, res); 780 next(xpp); 781 int eventType = nextNoWhitespace(xpp); 782 while (eventType != XmlPullParser.END_TAG) { 783 if (!parseRatioContent(eventType, xpp, res)) 784 unknownContent(xpp); 785 eventType = nextNoWhitespace(xpp); 786 } 787 next(xpp); 788 parseElementClose(res); 789 return res; 790 } 791 792 protected boolean parseRatioContent(int eventType, XmlPullParser xpp, Ratio res) throws XmlPullParserException, IOException, FHIRFormatError { 793 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("numerator")) { 794 res.setNumerator(parseQuantity(xpp)); 795 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("denominator")) { 796 res.setDenominator(parseQuantity(xpp)); 797 } else if (!parseElementContent(eventType, xpp, res)) 798 return false; 799 return true; 800 } 801 802 protected Distance parseDistance(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 803 Distance res = new Distance(); 804 parseTypeAttributes(xpp, res); 805 next(xpp); 806 int eventType = nextNoWhitespace(xpp); 807 while (eventType != XmlPullParser.END_TAG) { 808 if (!parseDistanceContent(eventType, xpp, res)) 809 unknownContent(xpp); 810 eventType = nextNoWhitespace(xpp); 811 } 812 next(xpp); 813 parseElementClose(res); 814 return res; 815 } 816 817 protected boolean parseDistanceContent(int eventType, XmlPullParser xpp, Distance res) throws XmlPullParserException, IOException, FHIRFormatError { 818 if (!parseQuantityContent(eventType, xpp, res)) 819 return false; 820 return true; 821 } 822 823 protected Age parseAge(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 824 Age res = new Age(); 825 parseTypeAttributes(xpp, res); 826 next(xpp); 827 int eventType = nextNoWhitespace(xpp); 828 while (eventType != XmlPullParser.END_TAG) { 829 if (!parseAgeContent(eventType, xpp, res)) 830 unknownContent(xpp); 831 eventType = nextNoWhitespace(xpp); 832 } 833 next(xpp); 834 parseElementClose(res); 835 return res; 836 } 837 838 protected boolean parseAgeContent(int eventType, XmlPullParser xpp, Age res) throws XmlPullParserException, IOException, FHIRFormatError { 839 if (!parseQuantityContent(eventType, xpp, res)) 840 return false; 841 return true; 842 } 843 844 protected CodeableConcept parseCodeableConcept(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 845 CodeableConcept res = new CodeableConcept(); 846 parseTypeAttributes(xpp, res); 847 next(xpp); 848 int eventType = nextNoWhitespace(xpp); 849 while (eventType != XmlPullParser.END_TAG) { 850 if (!parseCodeableConceptContent(eventType, xpp, res)) 851 unknownContent(xpp); 852 eventType = nextNoWhitespace(xpp); 853 } 854 next(xpp); 855 parseElementClose(res); 856 return res; 857 } 858 859 protected boolean parseCodeableConceptContent(int eventType, XmlPullParser xpp, CodeableConcept res) throws XmlPullParserException, IOException, FHIRFormatError { 860 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coding")) { 861 res.getCoding().add(parseCoding(xpp)); 862 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 863 res.setTextElement(parseString(xpp)); 864 } else if (!parseElementContent(eventType, xpp, res)) 865 return false; 866 return true; 867 } 868 869 protected SimpleQuantity parseSimpleQuantity(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 870 SimpleQuantity res = new SimpleQuantity(); 871 parseElementAttributes(xpp, res); 872 next(xpp); 873 int eventType = nextNoWhitespace(xpp); 874 while (eventType != XmlPullParser.END_TAG) { 875 if (!parseSimpleQuantityContent(eventType, xpp, res)) 876 unknownContent(xpp); 877 eventType = nextNoWhitespace(xpp); 878 } 879 next(xpp); 880 parseElementClose(res); 881 return res; 882 } 883 884 protected boolean parseSimpleQuantityContent(int eventType, XmlPullParser xpp, SimpleQuantity res) throws XmlPullParserException, IOException, FHIRFormatError { 885 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 886 res.setValueElement(parseDecimal(xpp)); 887 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comparator")) { 888 res.setComparatorElement(parseEnumeration(xpp, Quantity.QuantityComparator.NULL, new Quantity.QuantityComparatorEnumFactory())); 889 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unit")) { 890 res.setUnitElement(parseString(xpp)); 891 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 892 res.setSystemElement(parseUri(xpp)); 893 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 894 res.setCodeElement(parseCode(xpp)); 895 } else if (!parseElementContent(eventType, xpp, res)) 896 return false; 897 return true; 898 } 899 900 protected Meta parseMeta(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 901 Meta res = new Meta(); 902 parseElementAttributes(xpp, res); 903 next(xpp); 904 int eventType = nextNoWhitespace(xpp); 905 while (eventType != XmlPullParser.END_TAG) { 906 if (!parseMetaContent(eventType, xpp, res)) 907 unknownContent(xpp); 908 eventType = nextNoWhitespace(xpp); 909 } 910 next(xpp); 911 parseElementClose(res); 912 return res; 913 } 914 915 protected boolean parseMetaContent(int eventType, XmlPullParser xpp, Meta res) throws XmlPullParserException, IOException, FHIRFormatError { 916 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("versionId")) { 917 res.setVersionIdElement(parseId(xpp)); 918 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastUpdated")) { 919 res.setLastUpdatedElement(parseInstant(xpp)); 920 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 921 res.getProfile().add(parseUri(xpp)); 922 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("security")) { 923 res.getSecurity().add(parseCoding(xpp)); 924 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("tag")) { 925 res.getTag().add(parseCoding(xpp)); 926 } else if (!parseElementContent(eventType, xpp, res)) 927 return false; 928 return true; 929 } 930 931 protected Address parseAddress(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 932 Address res = new Address(); 933 parseElementAttributes(xpp, res); 934 next(xpp); 935 int eventType = nextNoWhitespace(xpp); 936 while (eventType != XmlPullParser.END_TAG) { 937 if (!parseAddressContent(eventType, xpp, res)) 938 unknownContent(xpp); 939 eventType = nextNoWhitespace(xpp); 940 } 941 next(xpp); 942 parseElementClose(res); 943 return res; 944 } 945 946 protected boolean parseAddressContent(int eventType, XmlPullParser xpp, Address res) throws XmlPullParserException, IOException, FHIRFormatError { 947 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 948 res.setUseElement(parseEnumeration(xpp, Address.AddressUse.NULL, new Address.AddressUseEnumFactory())); 949 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 950 res.setTypeElement(parseEnumeration(xpp, Address.AddressType.NULL, new Address.AddressTypeEnumFactory())); 951 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 952 res.setTextElement(parseString(xpp)); 953 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("line")) { 954 res.getLine().add(parseString(xpp)); 955 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("city")) { 956 res.setCityElement(parseString(xpp)); 957 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("district")) { 958 res.setDistrictElement(parseString(xpp)); 959 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("state")) { 960 res.setStateElement(parseString(xpp)); 961 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("postalCode")) { 962 res.setPostalCodeElement(parseString(xpp)); 963 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("country")) { 964 res.setCountryElement(parseString(xpp)); 965 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 966 res.setPeriod(parsePeriod(xpp)); 967 } else if (!parseElementContent(eventType, xpp, res)) 968 return false; 969 return true; 970 } 971 972 protected TriggerDefinition parseTriggerDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 973 TriggerDefinition res = new TriggerDefinition(); 974 parseElementAttributes(xpp, res); 975 next(xpp); 976 int eventType = nextNoWhitespace(xpp); 977 while (eventType != XmlPullParser.END_TAG) { 978 if (!parseTriggerDefinitionContent(eventType, xpp, res)) 979 unknownContent(xpp); 980 eventType = nextNoWhitespace(xpp); 981 } 982 next(xpp); 983 parseElementClose(res); 984 return res; 985 } 986 987 protected boolean parseTriggerDefinitionContent(int eventType, XmlPullParser xpp, TriggerDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 988 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 989 res.setTypeElement(parseEnumeration(xpp, TriggerDefinition.TriggerType.NULL, new TriggerDefinition.TriggerTypeEnumFactory())); 990 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eventName")) { 991 res.setEventNameElement(parseString(xpp)); 992 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "eventTiming")) { 993 res.setEventTiming(parseType("eventTiming", xpp)); 994 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eventData")) { 995 res.setEventData(parseDataRequirement(xpp)); 996 } else if (!parseElementContent(eventType, xpp, res)) 997 return false; 998 return true; 999 } 1000 1001 protected Contributor parseContributor(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1002 Contributor res = new Contributor(); 1003 parseElementAttributes(xpp, res); 1004 next(xpp); 1005 int eventType = nextNoWhitespace(xpp); 1006 while (eventType != XmlPullParser.END_TAG) { 1007 if (!parseContributorContent(eventType, xpp, res)) 1008 unknownContent(xpp); 1009 eventType = nextNoWhitespace(xpp); 1010 } 1011 next(xpp); 1012 parseElementClose(res); 1013 return res; 1014 } 1015 1016 protected boolean parseContributorContent(int eventType, XmlPullParser xpp, Contributor res) throws XmlPullParserException, IOException, FHIRFormatError { 1017 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1018 res.setTypeElement(parseEnumeration(xpp, Contributor.ContributorType.NULL, new Contributor.ContributorTypeEnumFactory())); 1019 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 1020 res.setNameElement(parseString(xpp)); 1021 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 1022 res.getContact().add(parseContactDetail(xpp)); 1023 } else if (!parseElementContent(eventType, xpp, res)) 1024 return false; 1025 return true; 1026 } 1027 1028 protected DataRequirement parseDataRequirement(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1029 DataRequirement res = new DataRequirement(); 1030 parseElementAttributes(xpp, res); 1031 next(xpp); 1032 int eventType = nextNoWhitespace(xpp); 1033 while (eventType != XmlPullParser.END_TAG) { 1034 if (!parseDataRequirementContent(eventType, xpp, res)) 1035 unknownContent(xpp); 1036 eventType = nextNoWhitespace(xpp); 1037 } 1038 next(xpp); 1039 parseElementClose(res); 1040 return res; 1041 } 1042 1043 protected boolean parseDataRequirementContent(int eventType, XmlPullParser xpp, DataRequirement res) throws XmlPullParserException, IOException, FHIRFormatError { 1044 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1045 res.setTypeElement(parseCode(xpp)); 1046 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 1047 res.getProfile().add(parseUri(xpp)); 1048 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mustSupport")) { 1049 res.getMustSupport().add(parseString(xpp)); 1050 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("codeFilter")) { 1051 res.getCodeFilter().add(parseDataRequirementDataRequirementCodeFilterComponent(xpp, res)); 1052 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateFilter")) { 1053 res.getDateFilter().add(parseDataRequirementDataRequirementDateFilterComponent(xpp, res)); 1054 } else if (!parseElementContent(eventType, xpp, res)) 1055 return false; 1056 return true; 1057 } 1058 1059 protected DataRequirement.DataRequirementCodeFilterComponent parseDataRequirementDataRequirementCodeFilterComponent(XmlPullParser xpp, DataRequirement owner) throws XmlPullParserException, IOException, FHIRFormatError { 1060 DataRequirement.DataRequirementCodeFilterComponent res = new DataRequirement.DataRequirementCodeFilterComponent(); 1061 parseElementAttributes(xpp, res); 1062 next(xpp); 1063 int eventType = nextNoWhitespace(xpp); 1064 while (eventType != XmlPullParser.END_TAG) { 1065 if (!parseDataRequirementDataRequirementCodeFilterComponentContent(eventType, xpp, owner, res)) 1066 unknownContent(xpp); 1067 eventType = nextNoWhitespace(xpp); 1068 } 1069 next(xpp); 1070 parseElementClose(res); 1071 return res; 1072 } 1073 1074 protected boolean parseDataRequirementDataRequirementCodeFilterComponentContent(int eventType, XmlPullParser xpp, DataRequirement owner, DataRequirement.DataRequirementCodeFilterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1075 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 1076 res.setPathElement(parseString(xpp)); 1077 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "valueSet")) { 1078 res.setValueSet(parseType("valueSet", xpp)); 1079 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valueCode")) { 1080 res.getValueCode().add(parseCode(xpp)); 1081 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valueCoding")) { 1082 res.getValueCoding().add(parseCoding(xpp)); 1083 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valueCodeableConcept")) { 1084 res.getValueCodeableConcept().add(parseCodeableConcept(xpp)); 1085 } else if (!parseElementContent(eventType, xpp, res)) 1086 return false; 1087 return true; 1088 } 1089 1090 protected DataRequirement.DataRequirementDateFilterComponent parseDataRequirementDataRequirementDateFilterComponent(XmlPullParser xpp, DataRequirement owner) throws XmlPullParserException, IOException, FHIRFormatError { 1091 DataRequirement.DataRequirementDateFilterComponent res = new DataRequirement.DataRequirementDateFilterComponent(); 1092 parseElementAttributes(xpp, res); 1093 next(xpp); 1094 int eventType = nextNoWhitespace(xpp); 1095 while (eventType != XmlPullParser.END_TAG) { 1096 if (!parseDataRequirementDataRequirementDateFilterComponentContent(eventType, xpp, owner, res)) 1097 unknownContent(xpp); 1098 eventType = nextNoWhitespace(xpp); 1099 } 1100 next(xpp); 1101 parseElementClose(res); 1102 return res; 1103 } 1104 1105 protected boolean parseDataRequirementDataRequirementDateFilterComponentContent(int eventType, XmlPullParser xpp, DataRequirement owner, DataRequirement.DataRequirementDateFilterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1106 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 1107 res.setPathElement(parseString(xpp)); 1108 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 1109 res.setValue(parseType("value", xpp)); 1110 } else if (!parseElementContent(eventType, xpp, res)) 1111 return false; 1112 return true; 1113 } 1114 1115 protected Dosage parseDosage(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1116 Dosage res = new Dosage(); 1117 parseElementAttributes(xpp, res); 1118 next(xpp); 1119 int eventType = nextNoWhitespace(xpp); 1120 while (eventType != XmlPullParser.END_TAG) { 1121 if (!parseDosageContent(eventType, xpp, res)) 1122 unknownContent(xpp); 1123 eventType = nextNoWhitespace(xpp); 1124 } 1125 next(xpp); 1126 parseElementClose(res); 1127 return res; 1128 } 1129 1130 protected boolean parseDosageContent(int eventType, XmlPullParser xpp, Dosage res) throws XmlPullParserException, IOException, FHIRFormatError { 1131 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 1132 res.setSequenceElement(parseInteger(xpp)); 1133 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 1134 res.setTextElement(parseString(xpp)); 1135 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("additionalInstruction")) { 1136 res.getAdditionalInstruction().add(parseCodeableConcept(xpp)); 1137 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patientInstruction")) { 1138 res.setPatientInstructionElement(parseString(xpp)); 1139 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("timing")) { 1140 res.setTiming(parseTiming(xpp)); 1141 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "asNeeded")) { 1142 res.setAsNeeded(parseType("asNeeded", xpp)); 1143 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("site")) { 1144 res.setSite(parseCodeableConcept(xpp)); 1145 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("route")) { 1146 res.setRoute(parseCodeableConcept(xpp)); 1147 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 1148 res.setMethod(parseCodeableConcept(xpp)); 1149 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "dose")) { 1150 res.setDose(parseType("dose", xpp)); 1151 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxDosePerPeriod")) { 1152 res.setMaxDosePerPeriod(parseRatio(xpp)); 1153 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxDosePerAdministration")) { 1154 res.setMaxDosePerAdministration(parseSimpleQuantity(xpp)); 1155 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxDosePerLifetime")) { 1156 res.setMaxDosePerLifetime(parseSimpleQuantity(xpp)); 1157 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "rate")) { 1158 res.setRate(parseType("rate", xpp)); 1159 } else if (!parseElementContent(eventType, xpp, res)) 1160 return false; 1161 return true; 1162 } 1163 1164 protected RelatedArtifact parseRelatedArtifact(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1165 RelatedArtifact res = new RelatedArtifact(); 1166 parseElementAttributes(xpp, res); 1167 next(xpp); 1168 int eventType = nextNoWhitespace(xpp); 1169 while (eventType != XmlPullParser.END_TAG) { 1170 if (!parseRelatedArtifactContent(eventType, xpp, res)) 1171 unknownContent(xpp); 1172 eventType = nextNoWhitespace(xpp); 1173 } 1174 next(xpp); 1175 parseElementClose(res); 1176 return res; 1177 } 1178 1179 protected boolean parseRelatedArtifactContent(int eventType, XmlPullParser xpp, RelatedArtifact res) throws XmlPullParserException, IOException, FHIRFormatError { 1180 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1181 res.setTypeElement(parseEnumeration(xpp, RelatedArtifact.RelatedArtifactType.NULL, new RelatedArtifact.RelatedArtifactTypeEnumFactory())); 1182 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 1183 res.setDisplayElement(parseString(xpp)); 1184 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("citation")) { 1185 res.setCitationElement(parseString(xpp)); 1186 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 1187 res.setUrlElement(parseUri(xpp)); 1188 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("document")) { 1189 res.setDocument(parseAttachment(xpp)); 1190 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 1191 res.setResource(parseReference(xpp)); 1192 } else if (!parseElementContent(eventType, xpp, res)) 1193 return false; 1194 return true; 1195 } 1196 1197 protected ContactDetail parseContactDetail(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1198 ContactDetail res = new ContactDetail(); 1199 parseElementAttributes(xpp, res); 1200 next(xpp); 1201 int eventType = nextNoWhitespace(xpp); 1202 while (eventType != XmlPullParser.END_TAG) { 1203 if (!parseContactDetailContent(eventType, xpp, res)) 1204 unknownContent(xpp); 1205 eventType = nextNoWhitespace(xpp); 1206 } 1207 next(xpp); 1208 parseElementClose(res); 1209 return res; 1210 } 1211 1212 protected boolean parseContactDetailContent(int eventType, XmlPullParser xpp, ContactDetail res) throws XmlPullParserException, IOException, FHIRFormatError { 1213 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 1214 res.setNameElement(parseString(xpp)); 1215 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 1216 res.getTelecom().add(parseContactPoint(xpp)); 1217 } else if (!parseElementContent(eventType, xpp, res)) 1218 return false; 1219 return true; 1220 } 1221 1222 protected HumanName parseHumanName(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1223 HumanName res = new HumanName(); 1224 parseElementAttributes(xpp, res); 1225 next(xpp); 1226 int eventType = nextNoWhitespace(xpp); 1227 while (eventType != XmlPullParser.END_TAG) { 1228 if (!parseHumanNameContent(eventType, xpp, res)) 1229 unknownContent(xpp); 1230 eventType = nextNoWhitespace(xpp); 1231 } 1232 next(xpp); 1233 parseElementClose(res); 1234 return res; 1235 } 1236 1237 protected boolean parseHumanNameContent(int eventType, XmlPullParser xpp, HumanName res) throws XmlPullParserException, IOException, FHIRFormatError { 1238 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 1239 res.setUseElement(parseEnumeration(xpp, HumanName.NameUse.NULL, new HumanName.NameUseEnumFactory())); 1240 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 1241 res.setTextElement(parseString(xpp)); 1242 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("family")) { 1243 res.setFamilyElement(parseString(xpp)); 1244 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("given")) { 1245 res.getGiven().add(parseString(xpp)); 1246 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prefix")) { 1247 res.getPrefix().add(parseString(xpp)); 1248 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("suffix")) { 1249 res.getSuffix().add(parseString(xpp)); 1250 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 1251 res.setPeriod(parsePeriod(xpp)); 1252 } else if (!parseElementContent(eventType, xpp, res)) 1253 return false; 1254 return true; 1255 } 1256 1257 protected ContactPoint parseContactPoint(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1258 ContactPoint res = new ContactPoint(); 1259 parseElementAttributes(xpp, res); 1260 next(xpp); 1261 int eventType = nextNoWhitespace(xpp); 1262 while (eventType != XmlPullParser.END_TAG) { 1263 if (!parseContactPointContent(eventType, xpp, res)) 1264 unknownContent(xpp); 1265 eventType = nextNoWhitespace(xpp); 1266 } 1267 next(xpp); 1268 parseElementClose(res); 1269 return res; 1270 } 1271 1272 protected boolean parseContactPointContent(int eventType, XmlPullParser xpp, ContactPoint res) throws XmlPullParserException, IOException, FHIRFormatError { 1273 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 1274 res.setSystemElement(parseEnumeration(xpp, ContactPoint.ContactPointSystem.NULL, new ContactPoint.ContactPointSystemEnumFactory())); 1275 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 1276 res.setValueElement(parseString(xpp)); 1277 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 1278 res.setUseElement(parseEnumeration(xpp, ContactPoint.ContactPointUse.NULL, new ContactPoint.ContactPointUseEnumFactory())); 1279 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rank")) { 1280 res.setRankElement(parsePositiveInt(xpp)); 1281 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 1282 res.setPeriod(parsePeriod(xpp)); 1283 } else if (!parseElementContent(eventType, xpp, res)) 1284 return false; 1285 return true; 1286 } 1287 1288 protected UsageContext parseUsageContext(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1289 UsageContext res = new UsageContext(); 1290 parseElementAttributes(xpp, res); 1291 next(xpp); 1292 int eventType = nextNoWhitespace(xpp); 1293 while (eventType != XmlPullParser.END_TAG) { 1294 if (!parseUsageContextContent(eventType, xpp, res)) 1295 unknownContent(xpp); 1296 eventType = nextNoWhitespace(xpp); 1297 } 1298 next(xpp); 1299 parseElementClose(res); 1300 return res; 1301 } 1302 1303 protected boolean parseUsageContextContent(int eventType, XmlPullParser xpp, UsageContext res) throws XmlPullParserException, IOException, FHIRFormatError { 1304 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 1305 res.setCode(parseCoding(xpp)); 1306 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 1307 res.setValue(parseType("value", xpp)); 1308 } else if (!parseElementContent(eventType, xpp, res)) 1309 return false; 1310 return true; 1311 } 1312 1313 protected Timing parseTiming(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1314 Timing res = new Timing(); 1315 parseElementAttributes(xpp, res); 1316 next(xpp); 1317 int eventType = nextNoWhitespace(xpp); 1318 while (eventType != XmlPullParser.END_TAG) { 1319 if (!parseTimingContent(eventType, xpp, res)) 1320 unknownContent(xpp); 1321 eventType = nextNoWhitespace(xpp); 1322 } 1323 next(xpp); 1324 parseElementClose(res); 1325 return res; 1326 } 1327 1328 protected boolean parseTimingContent(int eventType, XmlPullParser xpp, Timing res) throws XmlPullParserException, IOException, FHIRFormatError { 1329 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 1330 res.getEvent().add(parseDateTime(xpp)); 1331 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("repeat")) { 1332 res.setRepeat(parseTimingTimingRepeatComponent(xpp, res)); 1333 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 1334 res.setCode(parseCodeableConcept(xpp)); 1335 } else if (!parseElementContent(eventType, xpp, res)) 1336 return false; 1337 return true; 1338 } 1339 1340 protected Timing.TimingRepeatComponent parseTimingTimingRepeatComponent(XmlPullParser xpp, Timing owner) throws XmlPullParserException, IOException, FHIRFormatError { 1341 Timing.TimingRepeatComponent res = new Timing.TimingRepeatComponent(); 1342 parseElementAttributes(xpp, res); 1343 next(xpp); 1344 int eventType = nextNoWhitespace(xpp); 1345 while (eventType != XmlPullParser.END_TAG) { 1346 if (!parseTimingTimingRepeatComponentContent(eventType, xpp, owner, res)) 1347 unknownContent(xpp); 1348 eventType = nextNoWhitespace(xpp); 1349 } 1350 next(xpp); 1351 parseElementClose(res); 1352 return res; 1353 } 1354 1355 protected boolean parseTimingTimingRepeatComponentContent(int eventType, XmlPullParser xpp, Timing owner, Timing.TimingRepeatComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1356 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "bounds")) { 1357 res.setBounds(parseType("bounds", xpp)); 1358 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("count")) { 1359 res.setCountElement(parseInteger(xpp)); 1360 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("countMax")) { 1361 res.setCountMaxElement(parseInteger(xpp)); 1362 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("duration")) { 1363 res.setDurationElement(parseDecimal(xpp)); 1364 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("durationMax")) { 1365 res.setDurationMaxElement(parseDecimal(xpp)); 1366 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("durationUnit")) { 1367 res.setDurationUnitElement(parseEnumeration(xpp, Timing.UnitsOfTime.NULL, new Timing.UnitsOfTimeEnumFactory())); 1368 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("frequency")) { 1369 res.setFrequencyElement(parseInteger(xpp)); 1370 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("frequencyMax")) { 1371 res.setFrequencyMaxElement(parseInteger(xpp)); 1372 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 1373 res.setPeriodElement(parseDecimal(xpp)); 1374 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("periodMax")) { 1375 res.setPeriodMaxElement(parseDecimal(xpp)); 1376 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("periodUnit")) { 1377 res.setPeriodUnitElement(parseEnumeration(xpp, Timing.UnitsOfTime.NULL, new Timing.UnitsOfTimeEnumFactory())); 1378 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dayOfWeek")) { 1379 res.getDayOfWeek().add(parseEnumeration(xpp, Timing.DayOfWeek.NULL, new Timing.DayOfWeekEnumFactory())); 1380 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("timeOfDay")) { 1381 res.getTimeOfDay().add(parseTime(xpp)); 1382 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("when")) { 1383 res.getWhen().add(parseEnumeration(xpp, Timing.EventTiming.NULL, new Timing.EventTimingEnumFactory())); 1384 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("offset")) { 1385 res.setOffsetElement(parseUnsignedInt(xpp)); 1386 } else if (!parseElementContent(eventType, xpp, res)) 1387 return false; 1388 return true; 1389 } 1390 1391 protected ElementDefinition parseElementDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1392 ElementDefinition res = new ElementDefinition(); 1393 parseElementAttributes(xpp, res); 1394 next(xpp); 1395 int eventType = nextNoWhitespace(xpp); 1396 while (eventType != XmlPullParser.END_TAG) { 1397 if (!parseElementDefinitionContent(eventType, xpp, res)) 1398 unknownContent(xpp); 1399 eventType = nextNoWhitespace(xpp); 1400 } 1401 next(xpp); 1402 parseElementClose(res); 1403 return res; 1404 } 1405 1406 protected boolean parseElementDefinitionContent(int eventType, XmlPullParser xpp, ElementDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 1407 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 1408 res.setPathElement(parseString(xpp)); 1409 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("representation")) { 1410 res.getRepresentation().add(parseEnumeration(xpp, ElementDefinition.PropertyRepresentation.NULL, new ElementDefinition.PropertyRepresentationEnumFactory())); 1411 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sliceName")) { 1412 res.setSliceNameElement(parseString(xpp)); 1413 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("label")) { 1414 res.setLabelElement(parseString(xpp)); 1415 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 1416 res.getCode().add(parseCoding(xpp)); 1417 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("slicing")) { 1418 res.setSlicing(parseElementDefinitionElementDefinitionSlicingComponent(xpp, res)); 1419 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("short")) { 1420 res.setShortElement(parseString(xpp)); 1421 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 1422 res.setDefinitionElement(parseMarkdown(xpp)); 1423 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 1424 res.setCommentElement(parseMarkdown(xpp)); 1425 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirements")) { 1426 res.setRequirementsElement(parseMarkdown(xpp)); 1427 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("alias")) { 1428 res.getAlias().add(parseString(xpp)); 1429 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("min")) { 1430 res.setMinElement(parseUnsignedInt(xpp)); 1431 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("max")) { 1432 res.setMaxElement(parseString(xpp)); 1433 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("base")) { 1434 res.setBase(parseElementDefinitionElementDefinitionBaseComponent(xpp, res)); 1435 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentReference")) { 1436 res.setContentReferenceElement(parseUri(xpp)); 1437 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1438 res.getType().add(parseElementDefinitionTypeRefComponent(xpp, res)); 1439 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "defaultValue")) { 1440 res.setDefaultValue(parseType("defaultValue", xpp)); 1441 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("meaningWhenMissing")) { 1442 res.setMeaningWhenMissingElement(parseMarkdown(xpp)); 1443 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orderMeaning")) { 1444 res.setOrderMeaningElement(parseString(xpp)); 1445 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "fixed")) { 1446 res.setFixed(parseType("fixed", xpp)); 1447 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "pattern")) { 1448 res.setPattern(parseType("pattern", xpp)); 1449 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("example")) { 1450 res.getExample().add(parseElementDefinitionElementDefinitionExampleComponent(xpp, res)); 1451 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "minValue")) { 1452 res.setMinValue(parseType("minValue", xpp)); 1453 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "maxValue")) { 1454 res.setMaxValue(parseType("maxValue", xpp)); 1455 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxLength")) { 1456 res.setMaxLengthElement(parseInteger(xpp)); 1457 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 1458 res.getCondition().add(parseId(xpp)); 1459 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("constraint")) { 1460 res.getConstraint().add(parseElementDefinitionElementDefinitionConstraintComponent(xpp, res)); 1461 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mustSupport")) { 1462 res.setMustSupportElement(parseBoolean(xpp)); 1463 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("isModifier")) { 1464 res.setIsModifierElement(parseBoolean(xpp)); 1465 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("isSummary")) { 1466 res.setIsSummaryElement(parseBoolean(xpp)); 1467 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("binding")) { 1468 res.setBinding(parseElementDefinitionElementDefinitionBindingComponent(xpp, res)); 1469 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mapping")) { 1470 res.getMapping().add(parseElementDefinitionElementDefinitionMappingComponent(xpp, res)); 1471 } else if (!parseElementContent(eventType, xpp, res)) 1472 return false; 1473 return true; 1474 } 1475 1476 protected ElementDefinition.ElementDefinitionSlicingComponent parseElementDefinitionElementDefinitionSlicingComponent(XmlPullParser xpp, ElementDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 1477 ElementDefinition.ElementDefinitionSlicingComponent res = new ElementDefinition.ElementDefinitionSlicingComponent(); 1478 parseElementAttributes(xpp, res); 1479 next(xpp); 1480 int eventType = nextNoWhitespace(xpp); 1481 while (eventType != XmlPullParser.END_TAG) { 1482 if (!parseElementDefinitionElementDefinitionSlicingComponentContent(eventType, xpp, owner, res)) 1483 unknownContent(xpp); 1484 eventType = nextNoWhitespace(xpp); 1485 } 1486 next(xpp); 1487 parseElementClose(res); 1488 return res; 1489 } 1490 1491 protected boolean parseElementDefinitionElementDefinitionSlicingComponentContent(int eventType, XmlPullParser xpp, ElementDefinition owner, ElementDefinition.ElementDefinitionSlicingComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1492 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("discriminator")) { 1493 res.getDiscriminator().add(parseElementDefinitionElementDefinitionSlicingDiscriminatorComponent(xpp, owner)); 1494 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 1495 res.setDescriptionElement(parseString(xpp)); 1496 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ordered")) { 1497 res.setOrderedElement(parseBoolean(xpp)); 1498 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rules")) { 1499 res.setRulesElement(parseEnumeration(xpp, ElementDefinition.SlicingRules.NULL, new ElementDefinition.SlicingRulesEnumFactory())); 1500 } else if (!parseElementContent(eventType, xpp, res)) 1501 return false; 1502 return true; 1503 } 1504 1505 protected ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent parseElementDefinitionElementDefinitionSlicingDiscriminatorComponent(XmlPullParser xpp, ElementDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 1506 ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent res = new ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent(); 1507 parseElementAttributes(xpp, res); 1508 next(xpp); 1509 int eventType = nextNoWhitespace(xpp); 1510 while (eventType != XmlPullParser.END_TAG) { 1511 if (!parseElementDefinitionElementDefinitionSlicingDiscriminatorComponentContent(eventType, xpp, owner, res)) 1512 unknownContent(xpp); 1513 eventType = nextNoWhitespace(xpp); 1514 } 1515 next(xpp); 1516 parseElementClose(res); 1517 return res; 1518 } 1519 1520 protected boolean parseElementDefinitionElementDefinitionSlicingDiscriminatorComponentContent(int eventType, XmlPullParser xpp, ElementDefinition owner, ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1521 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1522 res.setTypeElement(parseEnumeration(xpp, ElementDefinition.DiscriminatorType.NULL, new ElementDefinition.DiscriminatorTypeEnumFactory())); 1523 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 1524 res.setPathElement(parseString(xpp)); 1525 } else if (!parseElementContent(eventType, xpp, res)) 1526 return false; 1527 return true; 1528 } 1529 1530 protected ElementDefinition.ElementDefinitionBaseComponent parseElementDefinitionElementDefinitionBaseComponent(XmlPullParser xpp, ElementDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 1531 ElementDefinition.ElementDefinitionBaseComponent res = new ElementDefinition.ElementDefinitionBaseComponent(); 1532 parseElementAttributes(xpp, res); 1533 next(xpp); 1534 int eventType = nextNoWhitespace(xpp); 1535 while (eventType != XmlPullParser.END_TAG) { 1536 if (!parseElementDefinitionElementDefinitionBaseComponentContent(eventType, xpp, owner, res)) 1537 unknownContent(xpp); 1538 eventType = nextNoWhitespace(xpp); 1539 } 1540 next(xpp); 1541 parseElementClose(res); 1542 return res; 1543 } 1544 1545 protected boolean parseElementDefinitionElementDefinitionBaseComponentContent(int eventType, XmlPullParser xpp, ElementDefinition owner, ElementDefinition.ElementDefinitionBaseComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1546 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 1547 res.setPathElement(parseString(xpp)); 1548 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("min")) { 1549 res.setMinElement(parseUnsignedInt(xpp)); 1550 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("max")) { 1551 res.setMaxElement(parseString(xpp)); 1552 } else if (!parseElementContent(eventType, xpp, res)) 1553 return false; 1554 return true; 1555 } 1556 1557 protected ElementDefinition.TypeRefComponent parseElementDefinitionTypeRefComponent(XmlPullParser xpp, ElementDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 1558 ElementDefinition.TypeRefComponent res = new ElementDefinition.TypeRefComponent(); 1559 parseElementAttributes(xpp, res); 1560 next(xpp); 1561 int eventType = nextNoWhitespace(xpp); 1562 while (eventType != XmlPullParser.END_TAG) { 1563 if (!parseElementDefinitionTypeRefComponentContent(eventType, xpp, owner, res)) 1564 unknownContent(xpp); 1565 eventType = nextNoWhitespace(xpp); 1566 } 1567 next(xpp); 1568 parseElementClose(res); 1569 return res; 1570 } 1571 1572 protected boolean parseElementDefinitionTypeRefComponentContent(int eventType, XmlPullParser xpp, ElementDefinition owner, ElementDefinition.TypeRefComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1573 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 1574 res.setCodeElement(parseUri(xpp)); 1575 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 1576 res.setProfileElement(parseUri(xpp)); 1577 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("targetProfile")) { 1578 res.setTargetProfileElement(parseUri(xpp)); 1579 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("aggregation")) { 1580 res.getAggregation().add(parseEnumeration(xpp, ElementDefinition.AggregationMode.NULL, new ElementDefinition.AggregationModeEnumFactory())); 1581 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("versioning")) { 1582 res.setVersioningElement(parseEnumeration(xpp, ElementDefinition.ReferenceVersionRules.NULL, new ElementDefinition.ReferenceVersionRulesEnumFactory())); 1583 } else if (!parseElementContent(eventType, xpp, res)) 1584 return false; 1585 return true; 1586 } 1587 1588 protected ElementDefinition.ElementDefinitionExampleComponent parseElementDefinitionElementDefinitionExampleComponent(XmlPullParser xpp, ElementDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 1589 ElementDefinition.ElementDefinitionExampleComponent res = new ElementDefinition.ElementDefinitionExampleComponent(); 1590 parseElementAttributes(xpp, res); 1591 next(xpp); 1592 int eventType = nextNoWhitespace(xpp); 1593 while (eventType != XmlPullParser.END_TAG) { 1594 if (!parseElementDefinitionElementDefinitionExampleComponentContent(eventType, xpp, owner, res)) 1595 unknownContent(xpp); 1596 eventType = nextNoWhitespace(xpp); 1597 } 1598 next(xpp); 1599 parseElementClose(res); 1600 return res; 1601 } 1602 1603 protected boolean parseElementDefinitionElementDefinitionExampleComponentContent(int eventType, XmlPullParser xpp, ElementDefinition owner, ElementDefinition.ElementDefinitionExampleComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1604 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("label")) { 1605 res.setLabelElement(parseString(xpp)); 1606 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 1607 res.setValue(parseType("value", xpp)); 1608 } else if (!parseElementContent(eventType, xpp, res)) 1609 return false; 1610 return true; 1611 } 1612 1613 protected ElementDefinition.ElementDefinitionConstraintComponent parseElementDefinitionElementDefinitionConstraintComponent(XmlPullParser xpp, ElementDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 1614 ElementDefinition.ElementDefinitionConstraintComponent res = new ElementDefinition.ElementDefinitionConstraintComponent(); 1615 parseElementAttributes(xpp, res); 1616 next(xpp); 1617 int eventType = nextNoWhitespace(xpp); 1618 while (eventType != XmlPullParser.END_TAG) { 1619 if (!parseElementDefinitionElementDefinitionConstraintComponentContent(eventType, xpp, owner, res)) 1620 unknownContent(xpp); 1621 eventType = nextNoWhitespace(xpp); 1622 } 1623 next(xpp); 1624 parseElementClose(res); 1625 return res; 1626 } 1627 1628 protected boolean parseElementDefinitionElementDefinitionConstraintComponentContent(int eventType, XmlPullParser xpp, ElementDefinition owner, ElementDefinition.ElementDefinitionConstraintComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1629 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("key")) { 1630 res.setKeyElement(parseId(xpp)); 1631 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirements")) { 1632 res.setRequirementsElement(parseString(xpp)); 1633 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("severity")) { 1634 res.setSeverityElement(parseEnumeration(xpp, ElementDefinition.ConstraintSeverity.NULL, new ElementDefinition.ConstraintSeverityEnumFactory())); 1635 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("human")) { 1636 res.setHumanElement(parseString(xpp)); 1637 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 1638 res.setExpressionElement(parseString(xpp)); 1639 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("xpath")) { 1640 res.setXpathElement(parseString(xpp)); 1641 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 1642 res.setSourceElement(parseUri(xpp)); 1643 } else if (!parseElementContent(eventType, xpp, res)) 1644 return false; 1645 return true; 1646 } 1647 1648 protected ElementDefinition.ElementDefinitionBindingComponent parseElementDefinitionElementDefinitionBindingComponent(XmlPullParser xpp, ElementDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 1649 ElementDefinition.ElementDefinitionBindingComponent res = new ElementDefinition.ElementDefinitionBindingComponent(); 1650 parseElementAttributes(xpp, res); 1651 next(xpp); 1652 int eventType = nextNoWhitespace(xpp); 1653 while (eventType != XmlPullParser.END_TAG) { 1654 if (!parseElementDefinitionElementDefinitionBindingComponentContent(eventType, xpp, owner, res)) 1655 unknownContent(xpp); 1656 eventType = nextNoWhitespace(xpp); 1657 } 1658 next(xpp); 1659 parseElementClose(res); 1660 return res; 1661 } 1662 1663 protected boolean parseElementDefinitionElementDefinitionBindingComponentContent(int eventType, XmlPullParser xpp, ElementDefinition owner, ElementDefinition.ElementDefinitionBindingComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1664 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("strength")) { 1665 res.setStrengthElement(parseEnumeration(xpp, Enumerations.BindingStrength.NULL, new Enumerations.BindingStrengthEnumFactory())); 1666 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 1667 res.setDescriptionElement(parseString(xpp)); 1668 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "valueSet")) { 1669 res.setValueSet(parseType("valueSet", xpp)); 1670 } else if (!parseElementContent(eventType, xpp, res)) 1671 return false; 1672 return true; 1673 } 1674 1675 protected ElementDefinition.ElementDefinitionMappingComponent parseElementDefinitionElementDefinitionMappingComponent(XmlPullParser xpp, ElementDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 1676 ElementDefinition.ElementDefinitionMappingComponent res = new ElementDefinition.ElementDefinitionMappingComponent(); 1677 parseElementAttributes(xpp, res); 1678 next(xpp); 1679 int eventType = nextNoWhitespace(xpp); 1680 while (eventType != XmlPullParser.END_TAG) { 1681 if (!parseElementDefinitionElementDefinitionMappingComponentContent(eventType, xpp, owner, res)) 1682 unknownContent(xpp); 1683 eventType = nextNoWhitespace(xpp); 1684 } 1685 next(xpp); 1686 parseElementClose(res); 1687 return res; 1688 } 1689 1690 protected boolean parseElementDefinitionElementDefinitionMappingComponentContent(int eventType, XmlPullParser xpp, ElementDefinition owner, ElementDefinition.ElementDefinitionMappingComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1691 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identity")) { 1692 res.setIdentityElement(parseId(xpp)); 1693 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 1694 res.setLanguageElement(parseCode(xpp)); 1695 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("map")) { 1696 res.setMapElement(parseString(xpp)); 1697 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 1698 res.setCommentElement(parseString(xpp)); 1699 } else if (!parseElementContent(eventType, xpp, res)) 1700 return false; 1701 return true; 1702 } 1703 1704 protected ParameterDefinition parseParameterDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1705 ParameterDefinition res = new ParameterDefinition(); 1706 parseElementAttributes(xpp, res); 1707 next(xpp); 1708 int eventType = nextNoWhitespace(xpp); 1709 while (eventType != XmlPullParser.END_TAG) { 1710 if (!parseParameterDefinitionContent(eventType, xpp, res)) 1711 unknownContent(xpp); 1712 eventType = nextNoWhitespace(xpp); 1713 } 1714 next(xpp); 1715 parseElementClose(res); 1716 return res; 1717 } 1718 1719 protected boolean parseParameterDefinitionContent(int eventType, XmlPullParser xpp, ParameterDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 1720 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 1721 res.setNameElement(parseCode(xpp)); 1722 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 1723 res.setUseElement(parseEnumeration(xpp, ParameterDefinition.ParameterUse.NULL, new ParameterDefinition.ParameterUseEnumFactory())); 1724 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("min")) { 1725 res.setMinElement(parseInteger(xpp)); 1726 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("max")) { 1727 res.setMaxElement(parseString(xpp)); 1728 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 1729 res.setDocumentationElement(parseString(xpp)); 1730 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1731 res.setTypeElement(parseCode(xpp)); 1732 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 1733 res.setProfile(parseReference(xpp)); 1734 } else if (!parseElementContent(eventType, xpp, res)) 1735 return false; 1736 return true; 1737 } 1738 1739 protected void parseDomainResourceAttributes(XmlPullParser xpp, DomainResource res) throws XmlPullParserException, IOException, FHIRFormatError { 1740 parseResourceAttributes(xpp, res); 1741 } 1742 1743 protected boolean parseDomainResourceContent(int eventType, XmlPullParser xpp, DomainResource res) throws XmlPullParserException, IOException, FHIRFormatError { 1744 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 1745 res.setText(parseNarrative(xpp)); 1746 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contained")) { 1747 res.getContained().add(parseResourceContained(xpp)); 1748 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("extension")) { 1749 res.getExtension().add(parseExtension(xpp)); 1750 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifierExtension")) { 1751 res.getModifierExtension().add(parseExtension(xpp)); 1752 } else 1753 return parseResourceContent(eventType, xpp, res); 1754 return true; 1755 } 1756 1757 protected Parameters parseParameters(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1758 Parameters res = new Parameters(); 1759 parseResourceAttributes(xpp, res); 1760 next(xpp); 1761 int eventType = nextNoWhitespace(xpp); 1762 while (eventType != XmlPullParser.END_TAG) { 1763 if (!parseParametersContent(eventType, xpp, res)) 1764 unknownContent(xpp); 1765 eventType = nextNoWhitespace(xpp); 1766 } 1767 next(xpp); 1768 parseElementClose(res); 1769 return res; 1770 } 1771 1772 protected boolean parseParametersContent(int eventType, XmlPullParser xpp, Parameters res) throws XmlPullParserException, IOException, FHIRFormatError { 1773 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameter")) { 1774 res.getParameter().add(parseParametersParametersParameterComponent(xpp, res)); 1775 } else if (!parseResourceContent(eventType, xpp, res)) 1776 return false; 1777 return true; 1778 } 1779 1780 protected Parameters.ParametersParameterComponent parseParametersParametersParameterComponent(XmlPullParser xpp, Parameters owner) throws XmlPullParserException, IOException, FHIRFormatError { 1781 Parameters.ParametersParameterComponent res = new Parameters.ParametersParameterComponent(); 1782 parseBackboneAttributes(xpp, res); 1783 next(xpp); 1784 int eventType = nextNoWhitespace(xpp); 1785 while (eventType != XmlPullParser.END_TAG) { 1786 if (!parseParametersParametersParameterComponentContent(eventType, xpp, owner, res)) 1787 unknownContent(xpp); 1788 eventType = nextNoWhitespace(xpp); 1789 } 1790 next(xpp); 1791 parseElementClose(res); 1792 return res; 1793 } 1794 1795 protected boolean parseParametersParametersParameterComponentContent(int eventType, XmlPullParser xpp, Parameters owner, Parameters.ParametersParameterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1796 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 1797 res.setNameElement(parseString(xpp)); 1798 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 1799 res.setValue(parseType("value", xpp)); 1800 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 1801 res.setResource(parseResourceContained(xpp)); 1802 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("part")) { 1803 res.getPart().add(parseParametersParametersParameterComponent(xpp, owner)); 1804 } else if (!parseBackboneContent(eventType, xpp, res)) 1805 return false; 1806 return true; 1807 } 1808 1809 protected void parseResourceAttributes(XmlPullParser xpp, Resource res) throws XmlPullParserException, IOException, FHIRFormatError { 1810 if (!comments.isEmpty()) { 1811 res.getFormatCommentsPre().addAll(comments); 1812 comments.clear(); 1813 } 1814 } 1815 1816 protected boolean parseResourceContent(int eventType, XmlPullParser xpp, Resource res) throws XmlPullParserException, IOException, FHIRFormatError { 1817 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("id")) { 1818 res.setIdElement(parseId(xpp)); 1819 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("meta")) { 1820 res.setMeta(parseMeta(xpp)); 1821 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("implicitRules")) { 1822 res.setImplicitRulesElement(parseUri(xpp)); 1823 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 1824 res.setLanguageElement(parseCode(xpp)); 1825 } else 1826 return false; 1827 return true; 1828 } 1829 1830 protected Account parseAccount(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1831 Account res = new Account(); 1832 parseDomainResourceAttributes(xpp, res); 1833 next(xpp); 1834 int eventType = nextNoWhitespace(xpp); 1835 while (eventType != XmlPullParser.END_TAG) { 1836 if (!parseAccountContent(eventType, xpp, res)) 1837 unknownContent(xpp); 1838 eventType = nextNoWhitespace(xpp); 1839 } 1840 next(xpp); 1841 parseElementClose(res); 1842 return res; 1843 } 1844 1845 protected boolean parseAccountContent(int eventType, XmlPullParser xpp, Account res) throws XmlPullParserException, IOException, FHIRFormatError { 1846 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 1847 res.getIdentifier().add(parseIdentifier(xpp)); 1848 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 1849 res.setStatusElement(parseEnumeration(xpp, Account.AccountStatus.NULL, new Account.AccountStatusEnumFactory())); 1850 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1851 res.setType(parseCodeableConcept(xpp)); 1852 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 1853 res.setNameElement(parseString(xpp)); 1854 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 1855 res.setSubject(parseReference(xpp)); 1856 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 1857 res.setPeriod(parsePeriod(xpp)); 1858 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 1859 res.setActive(parsePeriod(xpp)); 1860 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("balance")) { 1861 res.setBalance(parseMoney(xpp)); 1862 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverage")) { 1863 res.getCoverage().add(parseAccountCoverageComponent(xpp, res)); 1864 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("owner")) { 1865 res.setOwner(parseReference(xpp)); 1866 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 1867 res.setDescriptionElement(parseString(xpp)); 1868 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("guarantor")) { 1869 res.getGuarantor().add(parseAccountGuarantorComponent(xpp, res)); 1870 } else if (!parseDomainResourceContent(eventType, xpp, res)) 1871 return false; 1872 return true; 1873 } 1874 1875 protected Account.CoverageComponent parseAccountCoverageComponent(XmlPullParser xpp, Account owner) throws XmlPullParserException, IOException, FHIRFormatError { 1876 Account.CoverageComponent res = new Account.CoverageComponent(); 1877 parseBackboneAttributes(xpp, res); 1878 next(xpp); 1879 int eventType = nextNoWhitespace(xpp); 1880 while (eventType != XmlPullParser.END_TAG) { 1881 if (!parseAccountCoverageComponentContent(eventType, xpp, owner, res)) 1882 unknownContent(xpp); 1883 eventType = nextNoWhitespace(xpp); 1884 } 1885 next(xpp); 1886 parseElementClose(res); 1887 return res; 1888 } 1889 1890 protected boolean parseAccountCoverageComponentContent(int eventType, XmlPullParser xpp, Account owner, Account.CoverageComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1891 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverage")) { 1892 res.setCoverage(parseReference(xpp)); 1893 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 1894 res.setPriorityElement(parsePositiveInt(xpp)); 1895 } else if (!parseBackboneContent(eventType, xpp, res)) 1896 return false; 1897 return true; 1898 } 1899 1900 protected Account.GuarantorComponent parseAccountGuarantorComponent(XmlPullParser xpp, Account owner) throws XmlPullParserException, IOException, FHIRFormatError { 1901 Account.GuarantorComponent res = new Account.GuarantorComponent(); 1902 parseBackboneAttributes(xpp, res); 1903 next(xpp); 1904 int eventType = nextNoWhitespace(xpp); 1905 while (eventType != XmlPullParser.END_TAG) { 1906 if (!parseAccountGuarantorComponentContent(eventType, xpp, owner, res)) 1907 unknownContent(xpp); 1908 eventType = nextNoWhitespace(xpp); 1909 } 1910 next(xpp); 1911 parseElementClose(res); 1912 return res; 1913 } 1914 1915 protected boolean parseAccountGuarantorComponentContent(int eventType, XmlPullParser xpp, Account owner, Account.GuarantorComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1916 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("party")) { 1917 res.setParty(parseReference(xpp)); 1918 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onHold")) { 1919 res.setOnHoldElement(parseBoolean(xpp)); 1920 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 1921 res.setPeriod(parsePeriod(xpp)); 1922 } else if (!parseBackboneContent(eventType, xpp, res)) 1923 return false; 1924 return true; 1925 } 1926 1927 protected ActivityDefinition parseActivityDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1928 ActivityDefinition res = new ActivityDefinition(); 1929 parseDomainResourceAttributes(xpp, res); 1930 next(xpp); 1931 int eventType = nextNoWhitespace(xpp); 1932 while (eventType != XmlPullParser.END_TAG) { 1933 if (!parseActivityDefinitionContent(eventType, xpp, res)) 1934 unknownContent(xpp); 1935 eventType = nextNoWhitespace(xpp); 1936 } 1937 next(xpp); 1938 parseElementClose(res); 1939 return res; 1940 } 1941 1942 protected boolean parseActivityDefinitionContent(int eventType, XmlPullParser xpp, ActivityDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 1943 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 1944 res.setUrlElement(parseUri(xpp)); 1945 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 1946 res.getIdentifier().add(parseIdentifier(xpp)); 1947 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 1948 res.setVersionElement(parseString(xpp)); 1949 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 1950 res.setNameElement(parseString(xpp)); 1951 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 1952 res.setTitleElement(parseString(xpp)); 1953 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 1954 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 1955 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 1956 res.setExperimentalElement(parseBoolean(xpp)); 1957 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 1958 res.setDateElement(parseDateTime(xpp)); 1959 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 1960 res.setPublisherElement(parseString(xpp)); 1961 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 1962 res.setDescriptionElement(parseMarkdown(xpp)); 1963 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 1964 res.setPurposeElement(parseMarkdown(xpp)); 1965 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usage")) { 1966 res.setUsageElement(parseString(xpp)); 1967 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("approvalDate")) { 1968 res.setApprovalDateElement(parseDate(xpp)); 1969 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastReviewDate")) { 1970 res.setLastReviewDateElement(parseDate(xpp)); 1971 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectivePeriod")) { 1972 res.setEffectivePeriod(parsePeriod(xpp)); 1973 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 1974 res.getUseContext().add(parseUsageContext(xpp)); 1975 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 1976 res.getJurisdiction().add(parseCodeableConcept(xpp)); 1977 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { 1978 res.getTopic().add(parseCodeableConcept(xpp)); 1979 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contributor")) { 1980 res.getContributor().add(parseContributor(xpp)); 1981 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 1982 res.getContact().add(parseContactDetail(xpp)); 1983 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 1984 res.setCopyrightElement(parseMarkdown(xpp)); 1985 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedArtifact")) { 1986 res.getRelatedArtifact().add(parseRelatedArtifact(xpp)); 1987 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("library")) { 1988 res.getLibrary().add(parseReference(xpp)); 1989 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 1990 res.setKindElement(parseEnumeration(xpp, ActivityDefinition.ActivityDefinitionKind.NULL, new ActivityDefinition.ActivityDefinitionKindEnumFactory())); 1991 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 1992 res.setCode(parseCodeableConcept(xpp)); 1993 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "timing")) { 1994 res.setTiming(parseType("timing", xpp)); 1995 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 1996 res.setLocation(parseReference(xpp)); 1997 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 1998 res.getParticipant().add(parseActivityDefinitionActivityDefinitionParticipantComponent(xpp, res)); 1999 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "product")) { 2000 res.setProduct(parseType("product", xpp)); 2001 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 2002 res.setQuantity(parseSimpleQuantity(xpp)); 2003 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dosage")) { 2004 res.getDosage().add(parseDosage(xpp)); 2005 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 2006 res.getBodySite().add(parseCodeableConcept(xpp)); 2007 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("transform")) { 2008 res.setTransform(parseReference(xpp)); 2009 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dynamicValue")) { 2010 res.getDynamicValue().add(parseActivityDefinitionActivityDefinitionDynamicValueComponent(xpp, res)); 2011 } else if (!parseDomainResourceContent(eventType, xpp, res)) 2012 return false; 2013 return true; 2014 } 2015 2016 protected ActivityDefinition.ActivityDefinitionParticipantComponent parseActivityDefinitionActivityDefinitionParticipantComponent(XmlPullParser xpp, ActivityDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 2017 ActivityDefinition.ActivityDefinitionParticipantComponent res = new ActivityDefinition.ActivityDefinitionParticipantComponent(); 2018 parseBackboneAttributes(xpp, res); 2019 next(xpp); 2020 int eventType = nextNoWhitespace(xpp); 2021 while (eventType != XmlPullParser.END_TAG) { 2022 if (!parseActivityDefinitionActivityDefinitionParticipantComponentContent(eventType, xpp, owner, res)) 2023 unknownContent(xpp); 2024 eventType = nextNoWhitespace(xpp); 2025 } 2026 next(xpp); 2027 parseElementClose(res); 2028 return res; 2029 } 2030 2031 protected boolean parseActivityDefinitionActivityDefinitionParticipantComponentContent(int eventType, XmlPullParser xpp, ActivityDefinition owner, ActivityDefinition.ActivityDefinitionParticipantComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2032 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2033 res.setTypeElement(parseEnumeration(xpp, ActivityDefinition.ActivityParticipantType.NULL, new ActivityDefinition.ActivityParticipantTypeEnumFactory())); 2034 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 2035 res.setRole(parseCodeableConcept(xpp)); 2036 } else if (!parseBackboneContent(eventType, xpp, res)) 2037 return false; 2038 return true; 2039 } 2040 2041 protected ActivityDefinition.ActivityDefinitionDynamicValueComponent parseActivityDefinitionActivityDefinitionDynamicValueComponent(XmlPullParser xpp, ActivityDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 2042 ActivityDefinition.ActivityDefinitionDynamicValueComponent res = new ActivityDefinition.ActivityDefinitionDynamicValueComponent(); 2043 parseBackboneAttributes(xpp, res); 2044 next(xpp); 2045 int eventType = nextNoWhitespace(xpp); 2046 while (eventType != XmlPullParser.END_TAG) { 2047 if (!parseActivityDefinitionActivityDefinitionDynamicValueComponentContent(eventType, xpp, owner, res)) 2048 unknownContent(xpp); 2049 eventType = nextNoWhitespace(xpp); 2050 } 2051 next(xpp); 2052 parseElementClose(res); 2053 return res; 2054 } 2055 2056 protected boolean parseActivityDefinitionActivityDefinitionDynamicValueComponentContent(int eventType, XmlPullParser xpp, ActivityDefinition owner, ActivityDefinition.ActivityDefinitionDynamicValueComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2057 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 2058 res.setDescriptionElement(parseString(xpp)); 2059 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 2060 res.setPathElement(parseString(xpp)); 2061 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 2062 res.setLanguageElement(parseString(xpp)); 2063 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 2064 res.setExpressionElement(parseString(xpp)); 2065 } else if (!parseBackboneContent(eventType, xpp, res)) 2066 return false; 2067 return true; 2068 } 2069 2070 protected AdverseEvent parseAdverseEvent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2071 AdverseEvent res = new AdverseEvent(); 2072 parseDomainResourceAttributes(xpp, res); 2073 next(xpp); 2074 int eventType = nextNoWhitespace(xpp); 2075 while (eventType != XmlPullParser.END_TAG) { 2076 if (!parseAdverseEventContent(eventType, xpp, res)) 2077 unknownContent(xpp); 2078 eventType = nextNoWhitespace(xpp); 2079 } 2080 next(xpp); 2081 parseElementClose(res); 2082 return res; 2083 } 2084 2085 protected boolean parseAdverseEventContent(int eventType, XmlPullParser xpp, AdverseEvent res) throws XmlPullParserException, IOException, FHIRFormatError { 2086 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 2087 res.setIdentifier(parseIdentifier(xpp)); 2088 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 2089 res.setCategoryElement(parseEnumeration(xpp, AdverseEvent.AdverseEventCategory.NULL, new AdverseEvent.AdverseEventCategoryEnumFactory())); 2090 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2091 res.setType(parseCodeableConcept(xpp)); 2092 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 2093 res.setSubject(parseReference(xpp)); 2094 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 2095 res.setDateElement(parseDateTime(xpp)); 2096 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reaction")) { 2097 res.getReaction().add(parseReference(xpp)); 2098 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 2099 res.setLocation(parseReference(xpp)); 2100 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("seriousness")) { 2101 res.setSeriousness(parseCodeableConcept(xpp)); 2102 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 2103 res.setOutcome(parseCodeableConcept(xpp)); 2104 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recorder")) { 2105 res.setRecorder(parseReference(xpp)); 2106 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eventParticipant")) { 2107 res.setEventParticipant(parseReference(xpp)); 2108 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 2109 res.setDescriptionElement(parseString(xpp)); 2110 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("suspectEntity")) { 2111 res.getSuspectEntity().add(parseAdverseEventAdverseEventSuspectEntityComponent(xpp, res)); 2112 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subjectMedicalHistory")) { 2113 res.getSubjectMedicalHistory().add(parseReference(xpp)); 2114 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referenceDocument")) { 2115 res.getReferenceDocument().add(parseReference(xpp)); 2116 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("study")) { 2117 res.getStudy().add(parseReference(xpp)); 2118 } else if (!parseDomainResourceContent(eventType, xpp, res)) 2119 return false; 2120 return true; 2121 } 2122 2123 protected AdverseEvent.AdverseEventSuspectEntityComponent parseAdverseEventAdverseEventSuspectEntityComponent(XmlPullParser xpp, AdverseEvent owner) throws XmlPullParserException, IOException, FHIRFormatError { 2124 AdverseEvent.AdverseEventSuspectEntityComponent res = new AdverseEvent.AdverseEventSuspectEntityComponent(); 2125 parseBackboneAttributes(xpp, res); 2126 next(xpp); 2127 int eventType = nextNoWhitespace(xpp); 2128 while (eventType != XmlPullParser.END_TAG) { 2129 if (!parseAdverseEventAdverseEventSuspectEntityComponentContent(eventType, xpp, owner, res)) 2130 unknownContent(xpp); 2131 eventType = nextNoWhitespace(xpp); 2132 } 2133 next(xpp); 2134 parseElementClose(res); 2135 return res; 2136 } 2137 2138 protected boolean parseAdverseEventAdverseEventSuspectEntityComponentContent(int eventType, XmlPullParser xpp, AdverseEvent owner, AdverseEvent.AdverseEventSuspectEntityComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2139 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instance")) { 2140 res.setInstance(parseReference(xpp)); 2141 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("causality")) { 2142 res.setCausalityElement(parseEnumeration(xpp, AdverseEvent.AdverseEventCausality.NULL, new AdverseEvent.AdverseEventCausalityEnumFactory())); 2143 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("causalityAssessment")) { 2144 res.setCausalityAssessment(parseCodeableConcept(xpp)); 2145 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("causalityProductRelatedness")) { 2146 res.setCausalityProductRelatednessElement(parseString(xpp)); 2147 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("causalityMethod")) { 2148 res.setCausalityMethod(parseCodeableConcept(xpp)); 2149 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("causalityAuthor")) { 2150 res.setCausalityAuthor(parseReference(xpp)); 2151 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("causalityResult")) { 2152 res.setCausalityResult(parseCodeableConcept(xpp)); 2153 } else if (!parseBackboneContent(eventType, xpp, res)) 2154 return false; 2155 return true; 2156 } 2157 2158 protected AllergyIntolerance parseAllergyIntolerance(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2159 AllergyIntolerance res = new AllergyIntolerance(); 2160 parseDomainResourceAttributes(xpp, res); 2161 next(xpp); 2162 int eventType = nextNoWhitespace(xpp); 2163 while (eventType != XmlPullParser.END_TAG) { 2164 if (!parseAllergyIntoleranceContent(eventType, xpp, res)) 2165 unknownContent(xpp); 2166 eventType = nextNoWhitespace(xpp); 2167 } 2168 next(xpp); 2169 parseElementClose(res); 2170 return res; 2171 } 2172 2173 protected boolean parseAllergyIntoleranceContent(int eventType, XmlPullParser xpp, AllergyIntolerance res) throws XmlPullParserException, IOException, FHIRFormatError { 2174 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 2175 res.getIdentifier().add(parseIdentifier(xpp)); 2176 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("clinicalStatus")) { 2177 res.setClinicalStatusElement(parseEnumeration(xpp, AllergyIntolerance.AllergyIntoleranceClinicalStatus.NULL, new AllergyIntolerance.AllergyIntoleranceClinicalStatusEnumFactory())); 2178 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("verificationStatus")) { 2179 res.setVerificationStatusElement(parseEnumeration(xpp, AllergyIntolerance.AllergyIntoleranceVerificationStatus.NULL, new AllergyIntolerance.AllergyIntoleranceVerificationStatusEnumFactory())); 2180 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2181 res.setTypeElement(parseEnumeration(xpp, AllergyIntolerance.AllergyIntoleranceType.NULL, new AllergyIntolerance.AllergyIntoleranceTypeEnumFactory())); 2182 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 2183 res.getCategory().add(parseEnumeration(xpp, AllergyIntolerance.AllergyIntoleranceCategory.NULL, new AllergyIntolerance.AllergyIntoleranceCategoryEnumFactory())); 2184 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("criticality")) { 2185 res.setCriticalityElement(parseEnumeration(xpp, AllergyIntolerance.AllergyIntoleranceCriticality.NULL, new AllergyIntolerance.AllergyIntoleranceCriticalityEnumFactory())); 2186 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 2187 res.setCode(parseCodeableConcept(xpp)); 2188 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 2189 res.setPatient(parseReference(xpp)); 2190 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "onset")) { 2191 res.setOnset(parseType("onset", xpp)); 2192 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assertedDate")) { 2193 res.setAssertedDateElement(parseDateTime(xpp)); 2194 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recorder")) { 2195 res.setRecorder(parseReference(xpp)); 2196 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("asserter")) { 2197 res.setAsserter(parseReference(xpp)); 2198 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastOccurrence")) { 2199 res.setLastOccurrenceElement(parseDateTime(xpp)); 2200 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 2201 res.getNote().add(parseAnnotation(xpp)); 2202 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reaction")) { 2203 res.getReaction().add(parseAllergyIntoleranceAllergyIntoleranceReactionComponent(xpp, res)); 2204 } else if (!parseDomainResourceContent(eventType, xpp, res)) 2205 return false; 2206 return true; 2207 } 2208 2209 protected AllergyIntolerance.AllergyIntoleranceReactionComponent parseAllergyIntoleranceAllergyIntoleranceReactionComponent(XmlPullParser xpp, AllergyIntolerance owner) throws XmlPullParserException, IOException, FHIRFormatError { 2210 AllergyIntolerance.AllergyIntoleranceReactionComponent res = new AllergyIntolerance.AllergyIntoleranceReactionComponent(); 2211 parseBackboneAttributes(xpp, res); 2212 next(xpp); 2213 int eventType = nextNoWhitespace(xpp); 2214 while (eventType != XmlPullParser.END_TAG) { 2215 if (!parseAllergyIntoleranceAllergyIntoleranceReactionComponentContent(eventType, xpp, owner, res)) 2216 unknownContent(xpp); 2217 eventType = nextNoWhitespace(xpp); 2218 } 2219 next(xpp); 2220 parseElementClose(res); 2221 return res; 2222 } 2223 2224 protected boolean parseAllergyIntoleranceAllergyIntoleranceReactionComponentContent(int eventType, XmlPullParser xpp, AllergyIntolerance owner, AllergyIntolerance.AllergyIntoleranceReactionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2225 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("substance")) { 2226 res.setSubstance(parseCodeableConcept(xpp)); 2227 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manifestation")) { 2228 res.getManifestation().add(parseCodeableConcept(xpp)); 2229 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 2230 res.setDescriptionElement(parseString(xpp)); 2231 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onset")) { 2232 res.setOnsetElement(parseDateTime(xpp)); 2233 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("severity")) { 2234 res.setSeverityElement(parseEnumeration(xpp, AllergyIntolerance.AllergyIntoleranceSeverity.NULL, new AllergyIntolerance.AllergyIntoleranceSeverityEnumFactory())); 2235 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exposureRoute")) { 2236 res.setExposureRoute(parseCodeableConcept(xpp)); 2237 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 2238 res.getNote().add(parseAnnotation(xpp)); 2239 } else if (!parseBackboneContent(eventType, xpp, res)) 2240 return false; 2241 return true; 2242 } 2243 2244 protected Appointment parseAppointment(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2245 Appointment res = new Appointment(); 2246 parseDomainResourceAttributes(xpp, res); 2247 next(xpp); 2248 int eventType = nextNoWhitespace(xpp); 2249 while (eventType != XmlPullParser.END_TAG) { 2250 if (!parseAppointmentContent(eventType, xpp, res)) 2251 unknownContent(xpp); 2252 eventType = nextNoWhitespace(xpp); 2253 } 2254 next(xpp); 2255 parseElementClose(res); 2256 return res; 2257 } 2258 2259 protected boolean parseAppointmentContent(int eventType, XmlPullParser xpp, Appointment res) throws XmlPullParserException, IOException, FHIRFormatError { 2260 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 2261 res.getIdentifier().add(parseIdentifier(xpp)); 2262 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 2263 res.setStatusElement(parseEnumeration(xpp, Appointment.AppointmentStatus.NULL, new Appointment.AppointmentStatusEnumFactory())); 2264 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceCategory")) { 2265 res.setServiceCategory(parseCodeableConcept(xpp)); 2266 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceType")) { 2267 res.getServiceType().add(parseCodeableConcept(xpp)); 2268 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialty")) { 2269 res.getSpecialty().add(parseCodeableConcept(xpp)); 2270 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("appointmentType")) { 2271 res.setAppointmentType(parseCodeableConcept(xpp)); 2272 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 2273 res.getReason().add(parseCodeableConcept(xpp)); 2274 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("indication")) { 2275 res.getIndication().add(parseReference(xpp)); 2276 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 2277 res.setPriorityElement(parseUnsignedInt(xpp)); 2278 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 2279 res.setDescriptionElement(parseString(xpp)); 2280 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInformation")) { 2281 res.getSupportingInformation().add(parseReference(xpp)); 2282 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("start")) { 2283 res.setStartElement(parseInstant(xpp)); 2284 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("end")) { 2285 res.setEndElement(parseInstant(xpp)); 2286 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("minutesDuration")) { 2287 res.setMinutesDurationElement(parsePositiveInt(xpp)); 2288 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("slot")) { 2289 res.getSlot().add(parseReference(xpp)); 2290 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 2291 res.setCreatedElement(parseDateTime(xpp)); 2292 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 2293 res.setCommentElement(parseString(xpp)); 2294 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("incomingReferral")) { 2295 res.getIncomingReferral().add(parseReference(xpp)); 2296 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 2297 res.getParticipant().add(parseAppointmentAppointmentParticipantComponent(xpp, res)); 2298 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestedPeriod")) { 2299 res.getRequestedPeriod().add(parsePeriod(xpp)); 2300 } else if (!parseDomainResourceContent(eventType, xpp, res)) 2301 return false; 2302 return true; 2303 } 2304 2305 protected Appointment.AppointmentParticipantComponent parseAppointmentAppointmentParticipantComponent(XmlPullParser xpp, Appointment owner) throws XmlPullParserException, IOException, FHIRFormatError { 2306 Appointment.AppointmentParticipantComponent res = new Appointment.AppointmentParticipantComponent(); 2307 parseBackboneAttributes(xpp, res); 2308 next(xpp); 2309 int eventType = nextNoWhitespace(xpp); 2310 while (eventType != XmlPullParser.END_TAG) { 2311 if (!parseAppointmentAppointmentParticipantComponentContent(eventType, xpp, owner, res)) 2312 unknownContent(xpp); 2313 eventType = nextNoWhitespace(xpp); 2314 } 2315 next(xpp); 2316 parseElementClose(res); 2317 return res; 2318 } 2319 2320 protected boolean parseAppointmentAppointmentParticipantComponentContent(int eventType, XmlPullParser xpp, Appointment owner, Appointment.AppointmentParticipantComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2321 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2322 res.getType().add(parseCodeableConcept(xpp)); 2323 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 2324 res.setActor(parseReference(xpp)); 2325 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("required")) { 2326 res.setRequiredElement(parseEnumeration(xpp, Appointment.ParticipantRequired.NULL, new Appointment.ParticipantRequiredEnumFactory())); 2327 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 2328 res.setStatusElement(parseEnumeration(xpp, Appointment.ParticipationStatus.NULL, new Appointment.ParticipationStatusEnumFactory())); 2329 } else if (!parseBackboneContent(eventType, xpp, res)) 2330 return false; 2331 return true; 2332 } 2333 2334 protected AppointmentResponse parseAppointmentResponse(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2335 AppointmentResponse res = new AppointmentResponse(); 2336 parseDomainResourceAttributes(xpp, res); 2337 next(xpp); 2338 int eventType = nextNoWhitespace(xpp); 2339 while (eventType != XmlPullParser.END_TAG) { 2340 if (!parseAppointmentResponseContent(eventType, xpp, res)) 2341 unknownContent(xpp); 2342 eventType = nextNoWhitespace(xpp); 2343 } 2344 next(xpp); 2345 parseElementClose(res); 2346 return res; 2347 } 2348 2349 protected boolean parseAppointmentResponseContent(int eventType, XmlPullParser xpp, AppointmentResponse res) throws XmlPullParserException, IOException, FHIRFormatError { 2350 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 2351 res.getIdentifier().add(parseIdentifier(xpp)); 2352 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("appointment")) { 2353 res.setAppointment(parseReference(xpp)); 2354 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("start")) { 2355 res.setStartElement(parseInstant(xpp)); 2356 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("end")) { 2357 res.setEndElement(parseInstant(xpp)); 2358 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participantType")) { 2359 res.getParticipantType().add(parseCodeableConcept(xpp)); 2360 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 2361 res.setActor(parseReference(xpp)); 2362 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participantStatus")) { 2363 res.setParticipantStatusElement(parseEnumeration(xpp, AppointmentResponse.ParticipantStatus.NULL, new AppointmentResponse.ParticipantStatusEnumFactory())); 2364 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 2365 res.setCommentElement(parseString(xpp)); 2366 } else if (!parseDomainResourceContent(eventType, xpp, res)) 2367 return false; 2368 return true; 2369 } 2370 2371 protected AuditEvent parseAuditEvent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2372 AuditEvent res = new AuditEvent(); 2373 parseDomainResourceAttributes(xpp, res); 2374 next(xpp); 2375 int eventType = nextNoWhitespace(xpp); 2376 while (eventType != XmlPullParser.END_TAG) { 2377 if (!parseAuditEventContent(eventType, xpp, res)) 2378 unknownContent(xpp); 2379 eventType = nextNoWhitespace(xpp); 2380 } 2381 next(xpp); 2382 parseElementClose(res); 2383 return res; 2384 } 2385 2386 protected boolean parseAuditEventContent(int eventType, XmlPullParser xpp, AuditEvent res) throws XmlPullParserException, IOException, FHIRFormatError { 2387 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2388 res.setType(parseCoding(xpp)); 2389 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subtype")) { 2390 res.getSubtype().add(parseCoding(xpp)); 2391 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 2392 res.setActionElement(parseEnumeration(xpp, AuditEvent.AuditEventAction.NULL, new AuditEvent.AuditEventActionEnumFactory())); 2393 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recorded")) { 2394 res.setRecordedElement(parseInstant(xpp)); 2395 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 2396 res.setOutcomeElement(parseEnumeration(xpp, AuditEvent.AuditEventOutcome.NULL, new AuditEvent.AuditEventOutcomeEnumFactory())); 2397 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcomeDesc")) { 2398 res.setOutcomeDescElement(parseString(xpp)); 2399 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purposeOfEvent")) { 2400 res.getPurposeOfEvent().add(parseCodeableConcept(xpp)); 2401 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { 2402 res.getAgent().add(parseAuditEventAuditEventAgentComponent(xpp, res)); 2403 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 2404 res.setSource(parseAuditEventAuditEventSourceComponent(xpp, res)); 2405 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entity")) { 2406 res.getEntity().add(parseAuditEventAuditEventEntityComponent(xpp, res)); 2407 } else if (!parseDomainResourceContent(eventType, xpp, res)) 2408 return false; 2409 return true; 2410 } 2411 2412 protected AuditEvent.AuditEventAgentComponent parseAuditEventAuditEventAgentComponent(XmlPullParser xpp, AuditEvent owner) throws XmlPullParserException, IOException, FHIRFormatError { 2413 AuditEvent.AuditEventAgentComponent res = new AuditEvent.AuditEventAgentComponent(); 2414 parseBackboneAttributes(xpp, res); 2415 next(xpp); 2416 int eventType = nextNoWhitespace(xpp); 2417 while (eventType != XmlPullParser.END_TAG) { 2418 if (!parseAuditEventAuditEventAgentComponentContent(eventType, xpp, owner, res)) 2419 unknownContent(xpp); 2420 eventType = nextNoWhitespace(xpp); 2421 } 2422 next(xpp); 2423 parseElementClose(res); 2424 return res; 2425 } 2426 2427 protected boolean parseAuditEventAuditEventAgentComponentContent(int eventType, XmlPullParser xpp, AuditEvent owner, AuditEvent.AuditEventAgentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2428 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 2429 res.getRole().add(parseCodeableConcept(xpp)); 2430 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 2431 res.setReference(parseReference(xpp)); 2432 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("userId")) { 2433 res.setUserId(parseIdentifier(xpp)); 2434 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("altId")) { 2435 res.setAltIdElement(parseString(xpp)); 2436 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 2437 res.setNameElement(parseString(xpp)); 2438 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestor")) { 2439 res.setRequestorElement(parseBoolean(xpp)); 2440 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 2441 res.setLocation(parseReference(xpp)); 2442 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("policy")) { 2443 res.getPolicy().add(parseUri(xpp)); 2444 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("media")) { 2445 res.setMedia(parseCoding(xpp)); 2446 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("network")) { 2447 res.setNetwork(parseAuditEventAuditEventAgentNetworkComponent(xpp, owner)); 2448 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purposeOfUse")) { 2449 res.getPurposeOfUse().add(parseCodeableConcept(xpp)); 2450 } else if (!parseBackboneContent(eventType, xpp, res)) 2451 return false; 2452 return true; 2453 } 2454 2455 protected AuditEvent.AuditEventAgentNetworkComponent parseAuditEventAuditEventAgentNetworkComponent(XmlPullParser xpp, AuditEvent owner) throws XmlPullParserException, IOException, FHIRFormatError { 2456 AuditEvent.AuditEventAgentNetworkComponent res = new AuditEvent.AuditEventAgentNetworkComponent(); 2457 parseBackboneAttributes(xpp, res); 2458 next(xpp); 2459 int eventType = nextNoWhitespace(xpp); 2460 while (eventType != XmlPullParser.END_TAG) { 2461 if (!parseAuditEventAuditEventAgentNetworkComponentContent(eventType, xpp, owner, res)) 2462 unknownContent(xpp); 2463 eventType = nextNoWhitespace(xpp); 2464 } 2465 next(xpp); 2466 parseElementClose(res); 2467 return res; 2468 } 2469 2470 protected boolean parseAuditEventAuditEventAgentNetworkComponentContent(int eventType, XmlPullParser xpp, AuditEvent owner, AuditEvent.AuditEventAgentNetworkComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2471 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 2472 res.setAddressElement(parseString(xpp)); 2473 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2474 res.setTypeElement(parseEnumeration(xpp, AuditEvent.AuditEventAgentNetworkType.NULL, new AuditEvent.AuditEventAgentNetworkTypeEnumFactory())); 2475 } else if (!parseBackboneContent(eventType, xpp, res)) 2476 return false; 2477 return true; 2478 } 2479 2480 protected AuditEvent.AuditEventSourceComponent parseAuditEventAuditEventSourceComponent(XmlPullParser xpp, AuditEvent owner) throws XmlPullParserException, IOException, FHIRFormatError { 2481 AuditEvent.AuditEventSourceComponent res = new AuditEvent.AuditEventSourceComponent(); 2482 parseBackboneAttributes(xpp, res); 2483 next(xpp); 2484 int eventType = nextNoWhitespace(xpp); 2485 while (eventType != XmlPullParser.END_TAG) { 2486 if (!parseAuditEventAuditEventSourceComponentContent(eventType, xpp, owner, res)) 2487 unknownContent(xpp); 2488 eventType = nextNoWhitespace(xpp); 2489 } 2490 next(xpp); 2491 parseElementClose(res); 2492 return res; 2493 } 2494 2495 protected boolean parseAuditEventAuditEventSourceComponentContent(int eventType, XmlPullParser xpp, AuditEvent owner, AuditEvent.AuditEventSourceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2496 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("site")) { 2497 res.setSiteElement(parseString(xpp)); 2498 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 2499 res.setIdentifier(parseIdentifier(xpp)); 2500 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2501 res.getType().add(parseCoding(xpp)); 2502 } else if (!parseBackboneContent(eventType, xpp, res)) 2503 return false; 2504 return true; 2505 } 2506 2507 protected AuditEvent.AuditEventEntityComponent parseAuditEventAuditEventEntityComponent(XmlPullParser xpp, AuditEvent owner) throws XmlPullParserException, IOException, FHIRFormatError { 2508 AuditEvent.AuditEventEntityComponent res = new AuditEvent.AuditEventEntityComponent(); 2509 parseBackboneAttributes(xpp, res); 2510 next(xpp); 2511 int eventType = nextNoWhitespace(xpp); 2512 while (eventType != XmlPullParser.END_TAG) { 2513 if (!parseAuditEventAuditEventEntityComponentContent(eventType, xpp, owner, res)) 2514 unknownContent(xpp); 2515 eventType = nextNoWhitespace(xpp); 2516 } 2517 next(xpp); 2518 parseElementClose(res); 2519 return res; 2520 } 2521 2522 protected boolean parseAuditEventAuditEventEntityComponentContent(int eventType, XmlPullParser xpp, AuditEvent owner, AuditEvent.AuditEventEntityComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2523 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 2524 res.setIdentifier(parseIdentifier(xpp)); 2525 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 2526 res.setReference(parseReference(xpp)); 2527 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2528 res.setType(parseCoding(xpp)); 2529 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 2530 res.setRole(parseCoding(xpp)); 2531 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lifecycle")) { 2532 res.setLifecycle(parseCoding(xpp)); 2533 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("securityLabel")) { 2534 res.getSecurityLabel().add(parseCoding(xpp)); 2535 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 2536 res.setNameElement(parseString(xpp)); 2537 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 2538 res.setDescriptionElement(parseString(xpp)); 2539 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("query")) { 2540 res.setQueryElement(parseBase64Binary(xpp)); 2541 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 2542 res.getDetail().add(parseAuditEventAuditEventEntityDetailComponent(xpp, owner)); 2543 } else if (!parseBackboneContent(eventType, xpp, res)) 2544 return false; 2545 return true; 2546 } 2547 2548 protected AuditEvent.AuditEventEntityDetailComponent parseAuditEventAuditEventEntityDetailComponent(XmlPullParser xpp, AuditEvent owner) throws XmlPullParserException, IOException, FHIRFormatError { 2549 AuditEvent.AuditEventEntityDetailComponent res = new AuditEvent.AuditEventEntityDetailComponent(); 2550 parseBackboneAttributes(xpp, res); 2551 next(xpp); 2552 int eventType = nextNoWhitespace(xpp); 2553 while (eventType != XmlPullParser.END_TAG) { 2554 if (!parseAuditEventAuditEventEntityDetailComponentContent(eventType, xpp, owner, res)) 2555 unknownContent(xpp); 2556 eventType = nextNoWhitespace(xpp); 2557 } 2558 next(xpp); 2559 parseElementClose(res); 2560 return res; 2561 } 2562 2563 protected boolean parseAuditEventAuditEventEntityDetailComponentContent(int eventType, XmlPullParser xpp, AuditEvent owner, AuditEvent.AuditEventEntityDetailComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2564 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2565 res.setTypeElement(parseString(xpp)); 2566 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 2567 res.setValueElement(parseBase64Binary(xpp)); 2568 } else if (!parseBackboneContent(eventType, xpp, res)) 2569 return false; 2570 return true; 2571 } 2572 2573 protected Basic parseBasic(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2574 Basic res = new Basic(); 2575 parseDomainResourceAttributes(xpp, res); 2576 next(xpp); 2577 int eventType = nextNoWhitespace(xpp); 2578 while (eventType != XmlPullParser.END_TAG) { 2579 if (!parseBasicContent(eventType, xpp, res)) 2580 unknownContent(xpp); 2581 eventType = nextNoWhitespace(xpp); 2582 } 2583 next(xpp); 2584 parseElementClose(res); 2585 return res; 2586 } 2587 2588 protected boolean parseBasicContent(int eventType, XmlPullParser xpp, Basic res) throws XmlPullParserException, IOException, FHIRFormatError { 2589 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 2590 res.getIdentifier().add(parseIdentifier(xpp)); 2591 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 2592 res.setCode(parseCodeableConcept(xpp)); 2593 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 2594 res.setSubject(parseReference(xpp)); 2595 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 2596 res.setCreatedElement(parseDate(xpp)); 2597 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 2598 res.setAuthor(parseReference(xpp)); 2599 } else if (!parseDomainResourceContent(eventType, xpp, res)) 2600 return false; 2601 return true; 2602 } 2603 2604 protected Binary parseBinary(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2605 Binary res = new Binary(); 2606 parseResourceAttributes(xpp, res); 2607 next(xpp); 2608 int eventType = nextNoWhitespace(xpp); 2609 while (eventType != XmlPullParser.END_TAG) { 2610 if (!parseBinaryContent(eventType, xpp, res)) 2611 unknownContent(xpp); 2612 eventType = nextNoWhitespace(xpp); 2613 } 2614 next(xpp); 2615 parseElementClose(res); 2616 return res; 2617 } 2618 2619 protected boolean parseBinaryContent(int eventType, XmlPullParser xpp, Binary res) throws XmlPullParserException, IOException, FHIRFormatError { 2620 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentType")) { 2621 res.setContentTypeElement(parseCode(xpp)); 2622 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("securityContext")) { 2623 res.setSecurityContext(parseReference(xpp)); 2624 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 2625 res.setContentElement(parseBase64Binary(xpp)); 2626 } else if (!parseResourceContent(eventType, xpp, res)) 2627 return false; 2628 return true; 2629 } 2630 2631 protected BodySite parseBodySite(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2632 BodySite res = new BodySite(); 2633 parseDomainResourceAttributes(xpp, res); 2634 next(xpp); 2635 int eventType = nextNoWhitespace(xpp); 2636 while (eventType != XmlPullParser.END_TAG) { 2637 if (!parseBodySiteContent(eventType, xpp, res)) 2638 unknownContent(xpp); 2639 eventType = nextNoWhitespace(xpp); 2640 } 2641 next(xpp); 2642 parseElementClose(res); 2643 return res; 2644 } 2645 2646 protected boolean parseBodySiteContent(int eventType, XmlPullParser xpp, BodySite res) throws XmlPullParserException, IOException, FHIRFormatError { 2647 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 2648 res.getIdentifier().add(parseIdentifier(xpp)); 2649 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 2650 res.setActiveElement(parseBoolean(xpp)); 2651 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 2652 res.setCode(parseCodeableConcept(xpp)); 2653 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("qualifier")) { 2654 res.getQualifier().add(parseCodeableConcept(xpp)); 2655 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 2656 res.setDescriptionElement(parseString(xpp)); 2657 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("image")) { 2658 res.getImage().add(parseAttachment(xpp)); 2659 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 2660 res.setPatient(parseReference(xpp)); 2661 } else if (!parseDomainResourceContent(eventType, xpp, res)) 2662 return false; 2663 return true; 2664 } 2665 2666 protected Bundle parseBundle(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2667 Bundle res = new Bundle(); 2668 parseResourceAttributes(xpp, res); 2669 next(xpp); 2670 int eventType = nextNoWhitespace(xpp); 2671 while (eventType != XmlPullParser.END_TAG) { 2672 if (!parseBundleContent(eventType, xpp, res)) 2673 unknownContent(xpp); 2674 eventType = nextNoWhitespace(xpp); 2675 } 2676 next(xpp); 2677 parseElementClose(res); 2678 return res; 2679 } 2680 2681 protected boolean parseBundleContent(int eventType, XmlPullParser xpp, Bundle res) throws XmlPullParserException, IOException, FHIRFormatError { 2682 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 2683 res.setIdentifier(parseIdentifier(xpp)); 2684 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2685 res.setTypeElement(parseEnumeration(xpp, Bundle.BundleType.NULL, new Bundle.BundleTypeEnumFactory())); 2686 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("total")) { 2687 res.setTotalElement(parseUnsignedInt(xpp)); 2688 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 2689 res.getLink().add(parseBundleBundleLinkComponent(xpp, res)); 2690 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entry")) { 2691 res.getEntry().add(parseBundleBundleEntryComponent(xpp, res)); 2692 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("signature")) { 2693 res.setSignature(parseSignature(xpp)); 2694 } else if (!parseResourceContent(eventType, xpp, res)) 2695 return false; 2696 return true; 2697 } 2698 2699 protected Bundle.BundleLinkComponent parseBundleBundleLinkComponent(XmlPullParser xpp, Bundle owner) throws XmlPullParserException, IOException, FHIRFormatError { 2700 Bundle.BundleLinkComponent res = new Bundle.BundleLinkComponent(); 2701 parseBackboneAttributes(xpp, res); 2702 next(xpp); 2703 int eventType = nextNoWhitespace(xpp); 2704 while (eventType != XmlPullParser.END_TAG) { 2705 if (!parseBundleBundleLinkComponentContent(eventType, xpp, owner, res)) 2706 unknownContent(xpp); 2707 eventType = nextNoWhitespace(xpp); 2708 } 2709 next(xpp); 2710 parseElementClose(res); 2711 return res; 2712 } 2713 2714 protected boolean parseBundleBundleLinkComponentContent(int eventType, XmlPullParser xpp, Bundle owner, Bundle.BundleLinkComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2715 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relation")) { 2716 res.setRelationElement(parseString(xpp)); 2717 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 2718 res.setUrlElement(parseUri(xpp)); 2719 } else if (!parseBackboneContent(eventType, xpp, res)) 2720 return false; 2721 return true; 2722 } 2723 2724 protected Bundle.BundleEntryComponent parseBundleBundleEntryComponent(XmlPullParser xpp, Bundle owner) throws XmlPullParserException, IOException, FHIRFormatError { 2725 Bundle.BundleEntryComponent res = new Bundle.BundleEntryComponent(); 2726 parseBackboneAttributes(xpp, res); 2727 next(xpp); 2728 int eventType = nextNoWhitespace(xpp); 2729 while (eventType != XmlPullParser.END_TAG) { 2730 if (!parseBundleBundleEntryComponentContent(eventType, xpp, owner, res)) 2731 unknownContent(xpp); 2732 eventType = nextNoWhitespace(xpp); 2733 } 2734 next(xpp); 2735 parseElementClose(res); 2736 return res; 2737 } 2738 2739 protected boolean parseBundleBundleEntryComponentContent(int eventType, XmlPullParser xpp, Bundle owner, Bundle.BundleEntryComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2740 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 2741 res.getLink().add(parseBundleBundleLinkComponent(xpp, owner)); 2742 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fullUrl")) { 2743 res.setFullUrlElement(parseUri(xpp)); 2744 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 2745 res.setResource(parseResourceContained(xpp)); 2746 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("search")) { 2747 res.setSearch(parseBundleBundleEntrySearchComponent(xpp, owner)); 2748 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 2749 res.setRequest(parseBundleBundleEntryRequestComponent(xpp, owner)); 2750 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("response")) { 2751 res.setResponse(parseBundleBundleEntryResponseComponent(xpp, owner)); 2752 } else if (!parseBackboneContent(eventType, xpp, res)) 2753 return false; 2754 return true; 2755 } 2756 2757 protected Bundle.BundleEntrySearchComponent parseBundleBundleEntrySearchComponent(XmlPullParser xpp, Bundle owner) throws XmlPullParserException, IOException, FHIRFormatError { 2758 Bundle.BundleEntrySearchComponent res = new Bundle.BundleEntrySearchComponent(); 2759 parseBackboneAttributes(xpp, res); 2760 next(xpp); 2761 int eventType = nextNoWhitespace(xpp); 2762 while (eventType != XmlPullParser.END_TAG) { 2763 if (!parseBundleBundleEntrySearchComponentContent(eventType, xpp, owner, res)) 2764 unknownContent(xpp); 2765 eventType = nextNoWhitespace(xpp); 2766 } 2767 next(xpp); 2768 parseElementClose(res); 2769 return res; 2770 } 2771 2772 protected boolean parseBundleBundleEntrySearchComponentContent(int eventType, XmlPullParser xpp, Bundle owner, Bundle.BundleEntrySearchComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2773 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 2774 res.setModeElement(parseEnumeration(xpp, Bundle.SearchEntryMode.NULL, new Bundle.SearchEntryModeEnumFactory())); 2775 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("score")) { 2776 res.setScoreElement(parseDecimal(xpp)); 2777 } else if (!parseBackboneContent(eventType, xpp, res)) 2778 return false; 2779 return true; 2780 } 2781 2782 protected Bundle.BundleEntryRequestComponent parseBundleBundleEntryRequestComponent(XmlPullParser xpp, Bundle owner) throws XmlPullParserException, IOException, FHIRFormatError { 2783 Bundle.BundleEntryRequestComponent res = new Bundle.BundleEntryRequestComponent(); 2784 parseBackboneAttributes(xpp, res); 2785 next(xpp); 2786 int eventType = nextNoWhitespace(xpp); 2787 while (eventType != XmlPullParser.END_TAG) { 2788 if (!parseBundleBundleEntryRequestComponentContent(eventType, xpp, owner, res)) 2789 unknownContent(xpp); 2790 eventType = nextNoWhitespace(xpp); 2791 } 2792 next(xpp); 2793 parseElementClose(res); 2794 return res; 2795 } 2796 2797 protected boolean parseBundleBundleEntryRequestComponentContent(int eventType, XmlPullParser xpp, Bundle owner, Bundle.BundleEntryRequestComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2798 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 2799 res.setMethodElement(parseEnumeration(xpp, Bundle.HTTPVerb.NULL, new Bundle.HTTPVerbEnumFactory())); 2800 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 2801 res.setUrlElement(parseUri(xpp)); 2802 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ifNoneMatch")) { 2803 res.setIfNoneMatchElement(parseString(xpp)); 2804 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ifModifiedSince")) { 2805 res.setIfModifiedSinceElement(parseInstant(xpp)); 2806 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ifMatch")) { 2807 res.setIfMatchElement(parseString(xpp)); 2808 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ifNoneExist")) { 2809 res.setIfNoneExistElement(parseString(xpp)); 2810 } else if (!parseBackboneContent(eventType, xpp, res)) 2811 return false; 2812 return true; 2813 } 2814 2815 protected Bundle.BundleEntryResponseComponent parseBundleBundleEntryResponseComponent(XmlPullParser xpp, Bundle owner) throws XmlPullParserException, IOException, FHIRFormatError { 2816 Bundle.BundleEntryResponseComponent res = new Bundle.BundleEntryResponseComponent(); 2817 parseBackboneAttributes(xpp, res); 2818 next(xpp); 2819 int eventType = nextNoWhitespace(xpp); 2820 while (eventType != XmlPullParser.END_TAG) { 2821 if (!parseBundleBundleEntryResponseComponentContent(eventType, xpp, owner, res)) 2822 unknownContent(xpp); 2823 eventType = nextNoWhitespace(xpp); 2824 } 2825 next(xpp); 2826 parseElementClose(res); 2827 return res; 2828 } 2829 2830 protected boolean parseBundleBundleEntryResponseComponentContent(int eventType, XmlPullParser xpp, Bundle owner, Bundle.BundleEntryResponseComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2831 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 2832 res.setStatusElement(parseString(xpp)); 2833 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 2834 res.setLocationElement(parseUri(xpp)); 2835 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("etag")) { 2836 res.setEtagElement(parseString(xpp)); 2837 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastModified")) { 2838 res.setLastModifiedElement(parseInstant(xpp)); 2839 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 2840 res.setOutcome(parseResourceContained(xpp)); 2841 } else if (!parseBackboneContent(eventType, xpp, res)) 2842 return false; 2843 return true; 2844 } 2845 2846 protected CapabilityStatement parseCapabilityStatement(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2847 CapabilityStatement res = new CapabilityStatement(); 2848 parseDomainResourceAttributes(xpp, res); 2849 next(xpp); 2850 int eventType = nextNoWhitespace(xpp); 2851 while (eventType != XmlPullParser.END_TAG) { 2852 if (!parseCapabilityStatementContent(eventType, xpp, res)) 2853 unknownContent(xpp); 2854 eventType = nextNoWhitespace(xpp); 2855 } 2856 next(xpp); 2857 parseElementClose(res); 2858 return res; 2859 } 2860 2861 protected boolean parseCapabilityStatementContent(int eventType, XmlPullParser xpp, CapabilityStatement res) throws XmlPullParserException, IOException, FHIRFormatError { 2862 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 2863 res.setUrlElement(parseUri(xpp)); 2864 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 2865 res.setVersionElement(parseString(xpp)); 2866 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 2867 res.setNameElement(parseString(xpp)); 2868 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 2869 res.setTitleElement(parseString(xpp)); 2870 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 2871 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 2872 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 2873 res.setExperimentalElement(parseBoolean(xpp)); 2874 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 2875 res.setDateElement(parseDateTime(xpp)); 2876 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 2877 res.setPublisherElement(parseString(xpp)); 2878 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 2879 res.getContact().add(parseContactDetail(xpp)); 2880 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 2881 res.setDescriptionElement(parseMarkdown(xpp)); 2882 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 2883 res.getUseContext().add(parseUsageContext(xpp)); 2884 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 2885 res.getJurisdiction().add(parseCodeableConcept(xpp)); 2886 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 2887 res.setPurposeElement(parseMarkdown(xpp)); 2888 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 2889 res.setCopyrightElement(parseMarkdown(xpp)); 2890 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 2891 res.setKindElement(parseEnumeration(xpp, CapabilityStatement.CapabilityStatementKind.NULL, new CapabilityStatement.CapabilityStatementKindEnumFactory())); 2892 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instantiates")) { 2893 res.getInstantiates().add(parseUri(xpp)); 2894 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("software")) { 2895 res.setSoftware(parseCapabilityStatementCapabilityStatementSoftwareComponent(xpp, res)); 2896 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("implementation")) { 2897 res.setImplementation(parseCapabilityStatementCapabilityStatementImplementationComponent(xpp, res)); 2898 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fhirVersion")) { 2899 res.setFhirVersionElement(parseId(xpp)); 2900 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("acceptUnknown")) { 2901 res.setAcceptUnknownElement(parseEnumeration(xpp, CapabilityStatement.UnknownContentCode.NULL, new CapabilityStatement.UnknownContentCodeEnumFactory())); 2902 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("format")) { 2903 res.getFormat().add(parseCode(xpp)); 2904 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patchFormat")) { 2905 res.getPatchFormat().add(parseCode(xpp)); 2906 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("implementationGuide")) { 2907 res.getImplementationGuide().add(parseUri(xpp)); 2908 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 2909 res.getProfile().add(parseReference(xpp)); 2910 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rest")) { 2911 res.getRest().add(parseCapabilityStatementCapabilityStatementRestComponent(xpp, res)); 2912 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("messaging")) { 2913 res.getMessaging().add(parseCapabilityStatementCapabilityStatementMessagingComponent(xpp, res)); 2914 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("document")) { 2915 res.getDocument().add(parseCapabilityStatementCapabilityStatementDocumentComponent(xpp, res)); 2916 } else if (!parseDomainResourceContent(eventType, xpp, res)) 2917 return false; 2918 return true; 2919 } 2920 2921 protected CapabilityStatement.CapabilityStatementSoftwareComponent parseCapabilityStatementCapabilityStatementSoftwareComponent(XmlPullParser xpp, CapabilityStatement owner) throws XmlPullParserException, IOException, FHIRFormatError { 2922 CapabilityStatement.CapabilityStatementSoftwareComponent res = new CapabilityStatement.CapabilityStatementSoftwareComponent(); 2923 parseBackboneAttributes(xpp, res); 2924 next(xpp); 2925 int eventType = nextNoWhitespace(xpp); 2926 while (eventType != XmlPullParser.END_TAG) { 2927 if (!parseCapabilityStatementCapabilityStatementSoftwareComponentContent(eventType, xpp, owner, res)) 2928 unknownContent(xpp); 2929 eventType = nextNoWhitespace(xpp); 2930 } 2931 next(xpp); 2932 parseElementClose(res); 2933 return res; 2934 } 2935 2936 protected boolean parseCapabilityStatementCapabilityStatementSoftwareComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement owner, CapabilityStatement.CapabilityStatementSoftwareComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2937 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 2938 res.setNameElement(parseString(xpp)); 2939 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 2940 res.setVersionElement(parseString(xpp)); 2941 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("releaseDate")) { 2942 res.setReleaseDateElement(parseDateTime(xpp)); 2943 } else if (!parseBackboneContent(eventType, xpp, res)) 2944 return false; 2945 return true; 2946 } 2947 2948 protected CapabilityStatement.CapabilityStatementImplementationComponent parseCapabilityStatementCapabilityStatementImplementationComponent(XmlPullParser xpp, CapabilityStatement owner) throws XmlPullParserException, IOException, FHIRFormatError { 2949 CapabilityStatement.CapabilityStatementImplementationComponent res = new CapabilityStatement.CapabilityStatementImplementationComponent(); 2950 parseBackboneAttributes(xpp, res); 2951 next(xpp); 2952 int eventType = nextNoWhitespace(xpp); 2953 while (eventType != XmlPullParser.END_TAG) { 2954 if (!parseCapabilityStatementCapabilityStatementImplementationComponentContent(eventType, xpp, owner, res)) 2955 unknownContent(xpp); 2956 eventType = nextNoWhitespace(xpp); 2957 } 2958 next(xpp); 2959 parseElementClose(res); 2960 return res; 2961 } 2962 2963 protected boolean parseCapabilityStatementCapabilityStatementImplementationComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement owner, CapabilityStatement.CapabilityStatementImplementationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2964 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 2965 res.setDescriptionElement(parseString(xpp)); 2966 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 2967 res.setUrlElement(parseUri(xpp)); 2968 } else if (!parseBackboneContent(eventType, xpp, res)) 2969 return false; 2970 return true; 2971 } 2972 2973 protected CapabilityStatement.CapabilityStatementRestComponent parseCapabilityStatementCapabilityStatementRestComponent(XmlPullParser xpp, CapabilityStatement owner) throws XmlPullParserException, IOException, FHIRFormatError { 2974 CapabilityStatement.CapabilityStatementRestComponent res = new CapabilityStatement.CapabilityStatementRestComponent(); 2975 parseBackboneAttributes(xpp, res); 2976 next(xpp); 2977 int eventType = nextNoWhitespace(xpp); 2978 while (eventType != XmlPullParser.END_TAG) { 2979 if (!parseCapabilityStatementCapabilityStatementRestComponentContent(eventType, xpp, owner, res)) 2980 unknownContent(xpp); 2981 eventType = nextNoWhitespace(xpp); 2982 } 2983 next(xpp); 2984 parseElementClose(res); 2985 return res; 2986 } 2987 2988 protected boolean parseCapabilityStatementCapabilityStatementRestComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement owner, CapabilityStatement.CapabilityStatementRestComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2989 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 2990 res.setModeElement(parseEnumeration(xpp, CapabilityStatement.RestfulCapabilityMode.NULL, new CapabilityStatement.RestfulCapabilityModeEnumFactory())); 2991 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 2992 res.setDocumentationElement(parseString(xpp)); 2993 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("security")) { 2994 res.setSecurity(parseCapabilityStatementCapabilityStatementRestSecurityComponent(xpp, owner)); 2995 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 2996 res.getResource().add(parseCapabilityStatementCapabilityStatementRestResourceComponent(xpp, owner)); 2997 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("interaction")) { 2998 res.getInteraction().add(parseCapabilityStatementSystemInteractionComponent(xpp, owner)); 2999 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("searchParam")) { 3000 res.getSearchParam().add(parseCapabilityStatementCapabilityStatementRestResourceSearchParamComponent(xpp, owner)); 3001 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operation")) { 3002 res.getOperation().add(parseCapabilityStatementCapabilityStatementRestOperationComponent(xpp, owner)); 3003 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("compartment")) { 3004 res.getCompartment().add(parseUri(xpp)); 3005 } else if (!parseBackboneContent(eventType, xpp, res)) 3006 return false; 3007 return true; 3008 } 3009 3010 protected CapabilityStatement.CapabilityStatementRestSecurityComponent parseCapabilityStatementCapabilityStatementRestSecurityComponent(XmlPullParser xpp, CapabilityStatement owner) throws XmlPullParserException, IOException, FHIRFormatError { 3011 CapabilityStatement.CapabilityStatementRestSecurityComponent res = new CapabilityStatement.CapabilityStatementRestSecurityComponent(); 3012 parseBackboneAttributes(xpp, res); 3013 next(xpp); 3014 int eventType = nextNoWhitespace(xpp); 3015 while (eventType != XmlPullParser.END_TAG) { 3016 if (!parseCapabilityStatementCapabilityStatementRestSecurityComponentContent(eventType, xpp, owner, res)) 3017 unknownContent(xpp); 3018 eventType = nextNoWhitespace(xpp); 3019 } 3020 next(xpp); 3021 parseElementClose(res); 3022 return res; 3023 } 3024 3025 protected boolean parseCapabilityStatementCapabilityStatementRestSecurityComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement owner, CapabilityStatement.CapabilityStatementRestSecurityComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3026 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("cors")) { 3027 res.setCorsElement(parseBoolean(xpp)); 3028 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 3029 res.getService().add(parseCodeableConcept(xpp)); 3030 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 3031 res.setDescriptionElement(parseString(xpp)); 3032 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("certificate")) { 3033 res.getCertificate().add(parseCapabilityStatementCapabilityStatementRestSecurityCertificateComponent(xpp, owner)); 3034 } else if (!parseBackboneContent(eventType, xpp, res)) 3035 return false; 3036 return true; 3037 } 3038 3039 protected CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent parseCapabilityStatementCapabilityStatementRestSecurityCertificateComponent(XmlPullParser xpp, CapabilityStatement owner) throws XmlPullParserException, IOException, FHIRFormatError { 3040 CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent res = new CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent(); 3041 parseBackboneAttributes(xpp, res); 3042 next(xpp); 3043 int eventType = nextNoWhitespace(xpp); 3044 while (eventType != XmlPullParser.END_TAG) { 3045 if (!parseCapabilityStatementCapabilityStatementRestSecurityCertificateComponentContent(eventType, xpp, owner, res)) 3046 unknownContent(xpp); 3047 eventType = nextNoWhitespace(xpp); 3048 } 3049 next(xpp); 3050 parseElementClose(res); 3051 return res; 3052 } 3053 3054 protected boolean parseCapabilityStatementCapabilityStatementRestSecurityCertificateComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement owner, CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3055 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 3056 res.setTypeElement(parseCode(xpp)); 3057 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("blob")) { 3058 res.setBlobElement(parseBase64Binary(xpp)); 3059 } else if (!parseBackboneContent(eventType, xpp, res)) 3060 return false; 3061 return true; 3062 } 3063 3064 protected CapabilityStatement.CapabilityStatementRestResourceComponent parseCapabilityStatementCapabilityStatementRestResourceComponent(XmlPullParser xpp, CapabilityStatement owner) throws XmlPullParserException, IOException, FHIRFormatError { 3065 CapabilityStatement.CapabilityStatementRestResourceComponent res = new CapabilityStatement.CapabilityStatementRestResourceComponent(); 3066 parseBackboneAttributes(xpp, res); 3067 next(xpp); 3068 int eventType = nextNoWhitespace(xpp); 3069 while (eventType != XmlPullParser.END_TAG) { 3070 if (!parseCapabilityStatementCapabilityStatementRestResourceComponentContent(eventType, xpp, owner, res)) 3071 unknownContent(xpp); 3072 eventType = nextNoWhitespace(xpp); 3073 } 3074 next(xpp); 3075 parseElementClose(res); 3076 return res; 3077 } 3078 3079 protected boolean parseCapabilityStatementCapabilityStatementRestResourceComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement owner, CapabilityStatement.CapabilityStatementRestResourceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3080 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 3081 res.setTypeElement(parseCode(xpp)); 3082 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 3083 res.setProfile(parseReference(xpp)); 3084 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 3085 res.setDocumentationElement(parseMarkdown(xpp)); 3086 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("interaction")) { 3087 res.getInteraction().add(parseCapabilityStatementResourceInteractionComponent(xpp, owner)); 3088 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("versioning")) { 3089 res.setVersioningElement(parseEnumeration(xpp, CapabilityStatement.ResourceVersionPolicy.NULL, new CapabilityStatement.ResourceVersionPolicyEnumFactory())); 3090 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("readHistory")) { 3091 res.setReadHistoryElement(parseBoolean(xpp)); 3092 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("updateCreate")) { 3093 res.setUpdateCreateElement(parseBoolean(xpp)); 3094 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("conditionalCreate")) { 3095 res.setConditionalCreateElement(parseBoolean(xpp)); 3096 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("conditionalRead")) { 3097 res.setConditionalReadElement(parseEnumeration(xpp, CapabilityStatement.ConditionalReadStatus.NULL, new CapabilityStatement.ConditionalReadStatusEnumFactory())); 3098 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("conditionalUpdate")) { 3099 res.setConditionalUpdateElement(parseBoolean(xpp)); 3100 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("conditionalDelete")) { 3101 res.setConditionalDeleteElement(parseEnumeration(xpp, CapabilityStatement.ConditionalDeleteStatus.NULL, new CapabilityStatement.ConditionalDeleteStatusEnumFactory())); 3102 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referencePolicy")) { 3103 res.getReferencePolicy().add(parseEnumeration(xpp, CapabilityStatement.ReferenceHandlingPolicy.NULL, new CapabilityStatement.ReferenceHandlingPolicyEnumFactory())); 3104 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("searchInclude")) { 3105 res.getSearchInclude().add(parseString(xpp)); 3106 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("searchRevInclude")) { 3107 res.getSearchRevInclude().add(parseString(xpp)); 3108 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("searchParam")) { 3109 res.getSearchParam().add(parseCapabilityStatementCapabilityStatementRestResourceSearchParamComponent(xpp, owner)); 3110 } else if (!parseBackboneContent(eventType, xpp, res)) 3111 return false; 3112 return true; 3113 } 3114 3115 protected CapabilityStatement.ResourceInteractionComponent parseCapabilityStatementResourceInteractionComponent(XmlPullParser xpp, CapabilityStatement owner) throws XmlPullParserException, IOException, FHIRFormatError { 3116 CapabilityStatement.ResourceInteractionComponent res = new CapabilityStatement.ResourceInteractionComponent(); 3117 parseBackboneAttributes(xpp, res); 3118 next(xpp); 3119 int eventType = nextNoWhitespace(xpp); 3120 while (eventType != XmlPullParser.END_TAG) { 3121 if (!parseCapabilityStatementResourceInteractionComponentContent(eventType, xpp, owner, res)) 3122 unknownContent(xpp); 3123 eventType = nextNoWhitespace(xpp); 3124 } 3125 next(xpp); 3126 parseElementClose(res); 3127 return res; 3128 } 3129 3130 protected boolean parseCapabilityStatementResourceInteractionComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement owner, CapabilityStatement.ResourceInteractionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3131 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3132 res.setCodeElement(parseEnumeration(xpp, CapabilityStatement.TypeRestfulInteraction.NULL, new CapabilityStatement.TypeRestfulInteractionEnumFactory())); 3133 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 3134 res.setDocumentationElement(parseString(xpp)); 3135 } else if (!parseBackboneContent(eventType, xpp, res)) 3136 return false; 3137 return true; 3138 } 3139 3140 protected CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent parseCapabilityStatementCapabilityStatementRestResourceSearchParamComponent(XmlPullParser xpp, CapabilityStatement owner) throws XmlPullParserException, IOException, FHIRFormatError { 3141 CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent res = new CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent(); 3142 parseBackboneAttributes(xpp, res); 3143 next(xpp); 3144 int eventType = nextNoWhitespace(xpp); 3145 while (eventType != XmlPullParser.END_TAG) { 3146 if (!parseCapabilityStatementCapabilityStatementRestResourceSearchParamComponentContent(eventType, xpp, owner, res)) 3147 unknownContent(xpp); 3148 eventType = nextNoWhitespace(xpp); 3149 } 3150 next(xpp); 3151 parseElementClose(res); 3152 return res; 3153 } 3154 3155 protected boolean parseCapabilityStatementCapabilityStatementRestResourceSearchParamComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement owner, CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3156 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 3157 res.setNameElement(parseString(xpp)); 3158 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 3159 res.setDefinitionElement(parseUri(xpp)); 3160 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 3161 res.setTypeElement(parseEnumeration(xpp, Enumerations.SearchParamType.NULL, new Enumerations.SearchParamTypeEnumFactory())); 3162 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 3163 res.setDocumentationElement(parseString(xpp)); 3164 } else if (!parseBackboneContent(eventType, xpp, res)) 3165 return false; 3166 return true; 3167 } 3168 3169 protected CapabilityStatement.SystemInteractionComponent parseCapabilityStatementSystemInteractionComponent(XmlPullParser xpp, CapabilityStatement owner) throws XmlPullParserException, IOException, FHIRFormatError { 3170 CapabilityStatement.SystemInteractionComponent res = new CapabilityStatement.SystemInteractionComponent(); 3171 parseBackboneAttributes(xpp, res); 3172 next(xpp); 3173 int eventType = nextNoWhitespace(xpp); 3174 while (eventType != XmlPullParser.END_TAG) { 3175 if (!parseCapabilityStatementSystemInteractionComponentContent(eventType, xpp, owner, res)) 3176 unknownContent(xpp); 3177 eventType = nextNoWhitespace(xpp); 3178 } 3179 next(xpp); 3180 parseElementClose(res); 3181 return res; 3182 } 3183 3184 protected boolean parseCapabilityStatementSystemInteractionComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement owner, CapabilityStatement.SystemInteractionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3185 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3186 res.setCodeElement(parseEnumeration(xpp, CapabilityStatement.SystemRestfulInteraction.NULL, new CapabilityStatement.SystemRestfulInteractionEnumFactory())); 3187 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 3188 res.setDocumentationElement(parseString(xpp)); 3189 } else if (!parseBackboneContent(eventType, xpp, res)) 3190 return false; 3191 return true; 3192 } 3193 3194 protected CapabilityStatement.CapabilityStatementRestOperationComponent parseCapabilityStatementCapabilityStatementRestOperationComponent(XmlPullParser xpp, CapabilityStatement owner) throws XmlPullParserException, IOException, FHIRFormatError { 3195 CapabilityStatement.CapabilityStatementRestOperationComponent res = new CapabilityStatement.CapabilityStatementRestOperationComponent(); 3196 parseBackboneAttributes(xpp, res); 3197 next(xpp); 3198 int eventType = nextNoWhitespace(xpp); 3199 while (eventType != XmlPullParser.END_TAG) { 3200 if (!parseCapabilityStatementCapabilityStatementRestOperationComponentContent(eventType, xpp, owner, res)) 3201 unknownContent(xpp); 3202 eventType = nextNoWhitespace(xpp); 3203 } 3204 next(xpp); 3205 parseElementClose(res); 3206 return res; 3207 } 3208 3209 protected boolean parseCapabilityStatementCapabilityStatementRestOperationComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement owner, CapabilityStatement.CapabilityStatementRestOperationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3210 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 3211 res.setNameElement(parseString(xpp)); 3212 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 3213 res.setDefinition(parseReference(xpp)); 3214 } else if (!parseBackboneContent(eventType, xpp, res)) 3215 return false; 3216 return true; 3217 } 3218 3219 protected CapabilityStatement.CapabilityStatementMessagingComponent parseCapabilityStatementCapabilityStatementMessagingComponent(XmlPullParser xpp, CapabilityStatement owner) throws XmlPullParserException, IOException, FHIRFormatError { 3220 CapabilityStatement.CapabilityStatementMessagingComponent res = new CapabilityStatement.CapabilityStatementMessagingComponent(); 3221 parseBackboneAttributes(xpp, res); 3222 next(xpp); 3223 int eventType = nextNoWhitespace(xpp); 3224 while (eventType != XmlPullParser.END_TAG) { 3225 if (!parseCapabilityStatementCapabilityStatementMessagingComponentContent(eventType, xpp, owner, res)) 3226 unknownContent(xpp); 3227 eventType = nextNoWhitespace(xpp); 3228 } 3229 next(xpp); 3230 parseElementClose(res); 3231 return res; 3232 } 3233 3234 protected boolean parseCapabilityStatementCapabilityStatementMessagingComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement owner, CapabilityStatement.CapabilityStatementMessagingComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3235 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 3236 res.getEndpoint().add(parseCapabilityStatementCapabilityStatementMessagingEndpointComponent(xpp, owner)); 3237 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reliableCache")) { 3238 res.setReliableCacheElement(parseUnsignedInt(xpp)); 3239 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 3240 res.setDocumentationElement(parseString(xpp)); 3241 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportedMessage")) { 3242 res.getSupportedMessage().add(parseCapabilityStatementCapabilityStatementMessagingSupportedMessageComponent(xpp, owner)); 3243 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 3244 res.getEvent().add(parseCapabilityStatementCapabilityStatementMessagingEventComponent(xpp, owner)); 3245 } else if (!parseBackboneContent(eventType, xpp, res)) 3246 return false; 3247 return true; 3248 } 3249 3250 protected CapabilityStatement.CapabilityStatementMessagingEndpointComponent parseCapabilityStatementCapabilityStatementMessagingEndpointComponent(XmlPullParser xpp, CapabilityStatement owner) throws XmlPullParserException, IOException, FHIRFormatError { 3251 CapabilityStatement.CapabilityStatementMessagingEndpointComponent res = new CapabilityStatement.CapabilityStatementMessagingEndpointComponent(); 3252 parseBackboneAttributes(xpp, res); 3253 next(xpp); 3254 int eventType = nextNoWhitespace(xpp); 3255 while (eventType != XmlPullParser.END_TAG) { 3256 if (!parseCapabilityStatementCapabilityStatementMessagingEndpointComponentContent(eventType, xpp, owner, res)) 3257 unknownContent(xpp); 3258 eventType = nextNoWhitespace(xpp); 3259 } 3260 next(xpp); 3261 parseElementClose(res); 3262 return res; 3263 } 3264 3265 protected boolean parseCapabilityStatementCapabilityStatementMessagingEndpointComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement owner, CapabilityStatement.CapabilityStatementMessagingEndpointComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3266 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("protocol")) { 3267 res.setProtocol(parseCoding(xpp)); 3268 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 3269 res.setAddressElement(parseUri(xpp)); 3270 } else if (!parseBackboneContent(eventType, xpp, res)) 3271 return false; 3272 return true; 3273 } 3274 3275 protected CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent parseCapabilityStatementCapabilityStatementMessagingSupportedMessageComponent(XmlPullParser xpp, CapabilityStatement owner) throws XmlPullParserException, IOException, FHIRFormatError { 3276 CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent res = new CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent(); 3277 parseBackboneAttributes(xpp, res); 3278 next(xpp); 3279 int eventType = nextNoWhitespace(xpp); 3280 while (eventType != XmlPullParser.END_TAG) { 3281 if (!parseCapabilityStatementCapabilityStatementMessagingSupportedMessageComponentContent(eventType, xpp, owner, res)) 3282 unknownContent(xpp); 3283 eventType = nextNoWhitespace(xpp); 3284 } 3285 next(xpp); 3286 parseElementClose(res); 3287 return res; 3288 } 3289 3290 protected boolean parseCapabilityStatementCapabilityStatementMessagingSupportedMessageComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement owner, CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3291 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 3292 res.setModeElement(parseEnumeration(xpp, CapabilityStatement.EventCapabilityMode.NULL, new CapabilityStatement.EventCapabilityModeEnumFactory())); 3293 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 3294 res.setDefinition(parseReference(xpp)); 3295 } else if (!parseBackboneContent(eventType, xpp, res)) 3296 return false; 3297 return true; 3298 } 3299 3300 protected CapabilityStatement.CapabilityStatementMessagingEventComponent parseCapabilityStatementCapabilityStatementMessagingEventComponent(XmlPullParser xpp, CapabilityStatement owner) throws XmlPullParserException, IOException, FHIRFormatError { 3301 CapabilityStatement.CapabilityStatementMessagingEventComponent res = new CapabilityStatement.CapabilityStatementMessagingEventComponent(); 3302 parseBackboneAttributes(xpp, res); 3303 next(xpp); 3304 int eventType = nextNoWhitespace(xpp); 3305 while (eventType != XmlPullParser.END_TAG) { 3306 if (!parseCapabilityStatementCapabilityStatementMessagingEventComponentContent(eventType, xpp, owner, res)) 3307 unknownContent(xpp); 3308 eventType = nextNoWhitespace(xpp); 3309 } 3310 next(xpp); 3311 parseElementClose(res); 3312 return res; 3313 } 3314 3315 protected boolean parseCapabilityStatementCapabilityStatementMessagingEventComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement owner, CapabilityStatement.CapabilityStatementMessagingEventComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3316 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3317 res.setCode(parseCoding(xpp)); 3318 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 3319 res.setCategoryElement(parseEnumeration(xpp, CapabilityStatement.MessageSignificanceCategory.NULL, new CapabilityStatement.MessageSignificanceCategoryEnumFactory())); 3320 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 3321 res.setModeElement(parseEnumeration(xpp, CapabilityStatement.EventCapabilityMode.NULL, new CapabilityStatement.EventCapabilityModeEnumFactory())); 3322 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focus")) { 3323 res.setFocusElement(parseCode(xpp)); 3324 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 3325 res.setRequest(parseReference(xpp)); 3326 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("response")) { 3327 res.setResponse(parseReference(xpp)); 3328 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 3329 res.setDocumentationElement(parseString(xpp)); 3330 } else if (!parseBackboneContent(eventType, xpp, res)) 3331 return false; 3332 return true; 3333 } 3334 3335 protected CapabilityStatement.CapabilityStatementDocumentComponent parseCapabilityStatementCapabilityStatementDocumentComponent(XmlPullParser xpp, CapabilityStatement owner) throws XmlPullParserException, IOException, FHIRFormatError { 3336 CapabilityStatement.CapabilityStatementDocumentComponent res = new CapabilityStatement.CapabilityStatementDocumentComponent(); 3337 parseBackboneAttributes(xpp, res); 3338 next(xpp); 3339 int eventType = nextNoWhitespace(xpp); 3340 while (eventType != XmlPullParser.END_TAG) { 3341 if (!parseCapabilityStatementCapabilityStatementDocumentComponentContent(eventType, xpp, owner, res)) 3342 unknownContent(xpp); 3343 eventType = nextNoWhitespace(xpp); 3344 } 3345 next(xpp); 3346 parseElementClose(res); 3347 return res; 3348 } 3349 3350 protected boolean parseCapabilityStatementCapabilityStatementDocumentComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement owner, CapabilityStatement.CapabilityStatementDocumentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3351 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 3352 res.setModeElement(parseEnumeration(xpp, CapabilityStatement.DocumentMode.NULL, new CapabilityStatement.DocumentModeEnumFactory())); 3353 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 3354 res.setDocumentationElement(parseString(xpp)); 3355 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 3356 res.setProfile(parseReference(xpp)); 3357 } else if (!parseBackboneContent(eventType, xpp, res)) 3358 return false; 3359 return true; 3360 } 3361 3362 protected CarePlan parseCarePlan(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3363 CarePlan res = new CarePlan(); 3364 parseDomainResourceAttributes(xpp, res); 3365 next(xpp); 3366 int eventType = nextNoWhitespace(xpp); 3367 while (eventType != XmlPullParser.END_TAG) { 3368 if (!parseCarePlanContent(eventType, xpp, res)) 3369 unknownContent(xpp); 3370 eventType = nextNoWhitespace(xpp); 3371 } 3372 next(xpp); 3373 parseElementClose(res); 3374 return res; 3375 } 3376 3377 protected boolean parseCarePlanContent(int eventType, XmlPullParser xpp, CarePlan res) throws XmlPullParserException, IOException, FHIRFormatError { 3378 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 3379 res.getIdentifier().add(parseIdentifier(xpp)); 3380 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 3381 res.getDefinition().add(parseReference(xpp)); 3382 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 3383 res.getBasedOn().add(parseReference(xpp)); 3384 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("replaces")) { 3385 res.getReplaces().add(parseReference(xpp)); 3386 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 3387 res.getPartOf().add(parseReference(xpp)); 3388 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 3389 res.setStatusElement(parseEnumeration(xpp, CarePlan.CarePlanStatus.NULL, new CarePlan.CarePlanStatusEnumFactory())); 3390 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intent")) { 3391 res.setIntentElement(parseEnumeration(xpp, CarePlan.CarePlanIntent.NULL, new CarePlan.CarePlanIntentEnumFactory())); 3392 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 3393 res.getCategory().add(parseCodeableConcept(xpp)); 3394 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 3395 res.setTitleElement(parseString(xpp)); 3396 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 3397 res.setDescriptionElement(parseString(xpp)); 3398 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 3399 res.setSubject(parseReference(xpp)); 3400 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 3401 res.setContext(parseReference(xpp)); 3402 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 3403 res.setPeriod(parsePeriod(xpp)); 3404 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 3405 res.getAuthor().add(parseReference(xpp)); 3406 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("careTeam")) { 3407 res.getCareTeam().add(parseReference(xpp)); 3408 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("addresses")) { 3409 res.getAddresses().add(parseReference(xpp)); 3410 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInfo")) { 3411 res.getSupportingInfo().add(parseReference(xpp)); 3412 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("goal")) { 3413 res.getGoal().add(parseReference(xpp)); 3414 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("activity")) { 3415 res.getActivity().add(parseCarePlanCarePlanActivityComponent(xpp, res)); 3416 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 3417 res.getNote().add(parseAnnotation(xpp)); 3418 } else if (!parseDomainResourceContent(eventType, xpp, res)) 3419 return false; 3420 return true; 3421 } 3422 3423 protected CarePlan.CarePlanActivityComponent parseCarePlanCarePlanActivityComponent(XmlPullParser xpp, CarePlan owner) throws XmlPullParserException, IOException, FHIRFormatError { 3424 CarePlan.CarePlanActivityComponent res = new CarePlan.CarePlanActivityComponent(); 3425 parseBackboneAttributes(xpp, res); 3426 next(xpp); 3427 int eventType = nextNoWhitespace(xpp); 3428 while (eventType != XmlPullParser.END_TAG) { 3429 if (!parseCarePlanCarePlanActivityComponentContent(eventType, xpp, owner, res)) 3430 unknownContent(xpp); 3431 eventType = nextNoWhitespace(xpp); 3432 } 3433 next(xpp); 3434 parseElementClose(res); 3435 return res; 3436 } 3437 3438 protected boolean parseCarePlanCarePlanActivityComponentContent(int eventType, XmlPullParser xpp, CarePlan owner, CarePlan.CarePlanActivityComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3439 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcomeCodeableConcept")) { 3440 res.getOutcomeCodeableConcept().add(parseCodeableConcept(xpp)); 3441 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcomeReference")) { 3442 res.getOutcomeReference().add(parseReference(xpp)); 3443 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("progress")) { 3444 res.getProgress().add(parseAnnotation(xpp)); 3445 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 3446 res.setReference(parseReference(xpp)); 3447 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 3448 res.setDetail(parseCarePlanCarePlanActivityDetailComponent(xpp, owner)); 3449 } else if (!parseBackboneContent(eventType, xpp, res)) 3450 return false; 3451 return true; 3452 } 3453 3454 protected CarePlan.CarePlanActivityDetailComponent parseCarePlanCarePlanActivityDetailComponent(XmlPullParser xpp, CarePlan owner) throws XmlPullParserException, IOException, FHIRFormatError { 3455 CarePlan.CarePlanActivityDetailComponent res = new CarePlan.CarePlanActivityDetailComponent(); 3456 parseBackboneAttributes(xpp, res); 3457 next(xpp); 3458 int eventType = nextNoWhitespace(xpp); 3459 while (eventType != XmlPullParser.END_TAG) { 3460 if (!parseCarePlanCarePlanActivityDetailComponentContent(eventType, xpp, owner, res)) 3461 unknownContent(xpp); 3462 eventType = nextNoWhitespace(xpp); 3463 } 3464 next(xpp); 3465 parseElementClose(res); 3466 return res; 3467 } 3468 3469 protected boolean parseCarePlanCarePlanActivityDetailComponentContent(int eventType, XmlPullParser xpp, CarePlan owner, CarePlan.CarePlanActivityDetailComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3470 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 3471 res.setCategory(parseCodeableConcept(xpp)); 3472 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 3473 res.setDefinition(parseReference(xpp)); 3474 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3475 res.setCode(parseCodeableConcept(xpp)); 3476 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonCode")) { 3477 res.getReasonCode().add(parseCodeableConcept(xpp)); 3478 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonReference")) { 3479 res.getReasonReference().add(parseReference(xpp)); 3480 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("goal")) { 3481 res.getGoal().add(parseReference(xpp)); 3482 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 3483 res.setStatusElement(parseEnumeration(xpp, CarePlan.CarePlanActivityStatus.NULL, new CarePlan.CarePlanActivityStatusEnumFactory())); 3484 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusReason")) { 3485 res.setStatusReasonElement(parseString(xpp)); 3486 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prohibited")) { 3487 res.setProhibitedElement(parseBoolean(xpp)); 3488 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "scheduled")) { 3489 res.setScheduled(parseType("scheduled", xpp)); 3490 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 3491 res.setLocation(parseReference(xpp)); 3492 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 3493 res.getPerformer().add(parseReference(xpp)); 3494 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "product")) { 3495 res.setProduct(parseType("product", xpp)); 3496 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dailyAmount")) { 3497 res.setDailyAmount(parseSimpleQuantity(xpp)); 3498 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 3499 res.setQuantity(parseSimpleQuantity(xpp)); 3500 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 3501 res.setDescriptionElement(parseString(xpp)); 3502 } else if (!parseBackboneContent(eventType, xpp, res)) 3503 return false; 3504 return true; 3505 } 3506 3507 protected CareTeam parseCareTeam(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3508 CareTeam res = new CareTeam(); 3509 parseDomainResourceAttributes(xpp, res); 3510 next(xpp); 3511 int eventType = nextNoWhitespace(xpp); 3512 while (eventType != XmlPullParser.END_TAG) { 3513 if (!parseCareTeamContent(eventType, xpp, res)) 3514 unknownContent(xpp); 3515 eventType = nextNoWhitespace(xpp); 3516 } 3517 next(xpp); 3518 parseElementClose(res); 3519 return res; 3520 } 3521 3522 protected boolean parseCareTeamContent(int eventType, XmlPullParser xpp, CareTeam res) throws XmlPullParserException, IOException, FHIRFormatError { 3523 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 3524 res.getIdentifier().add(parseIdentifier(xpp)); 3525 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 3526 res.setStatusElement(parseEnumeration(xpp, CareTeam.CareTeamStatus.NULL, new CareTeam.CareTeamStatusEnumFactory())); 3527 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 3528 res.getCategory().add(parseCodeableConcept(xpp)); 3529 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 3530 res.setNameElement(parseString(xpp)); 3531 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 3532 res.setSubject(parseReference(xpp)); 3533 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 3534 res.setContext(parseReference(xpp)); 3535 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 3536 res.setPeriod(parsePeriod(xpp)); 3537 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 3538 res.getParticipant().add(parseCareTeamCareTeamParticipantComponent(xpp, res)); 3539 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonCode")) { 3540 res.getReasonCode().add(parseCodeableConcept(xpp)); 3541 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonReference")) { 3542 res.getReasonReference().add(parseReference(xpp)); 3543 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("managingOrganization")) { 3544 res.getManagingOrganization().add(parseReference(xpp)); 3545 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 3546 res.getNote().add(parseAnnotation(xpp)); 3547 } else if (!parseDomainResourceContent(eventType, xpp, res)) 3548 return false; 3549 return true; 3550 } 3551 3552 protected CareTeam.CareTeamParticipantComponent parseCareTeamCareTeamParticipantComponent(XmlPullParser xpp, CareTeam owner) throws XmlPullParserException, IOException, FHIRFormatError { 3553 CareTeam.CareTeamParticipantComponent res = new CareTeam.CareTeamParticipantComponent(); 3554 parseBackboneAttributes(xpp, res); 3555 next(xpp); 3556 int eventType = nextNoWhitespace(xpp); 3557 while (eventType != XmlPullParser.END_TAG) { 3558 if (!parseCareTeamCareTeamParticipantComponentContent(eventType, xpp, owner, res)) 3559 unknownContent(xpp); 3560 eventType = nextNoWhitespace(xpp); 3561 } 3562 next(xpp); 3563 parseElementClose(res); 3564 return res; 3565 } 3566 3567 protected boolean parseCareTeamCareTeamParticipantComponentContent(int eventType, XmlPullParser xpp, CareTeam owner, CareTeam.CareTeamParticipantComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3568 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 3569 res.setRole(parseCodeableConcept(xpp)); 3570 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("member")) { 3571 res.setMember(parseReference(xpp)); 3572 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onBehalfOf")) { 3573 res.setOnBehalfOf(parseReference(xpp)); 3574 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 3575 res.setPeriod(parsePeriod(xpp)); 3576 } else if (!parseBackboneContent(eventType, xpp, res)) 3577 return false; 3578 return true; 3579 } 3580 3581 protected ChargeItem parseChargeItem(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3582 ChargeItem res = new ChargeItem(); 3583 parseDomainResourceAttributes(xpp, res); 3584 next(xpp); 3585 int eventType = nextNoWhitespace(xpp); 3586 while (eventType != XmlPullParser.END_TAG) { 3587 if (!parseChargeItemContent(eventType, xpp, res)) 3588 unknownContent(xpp); 3589 eventType = nextNoWhitespace(xpp); 3590 } 3591 next(xpp); 3592 parseElementClose(res); 3593 return res; 3594 } 3595 3596 protected boolean parseChargeItemContent(int eventType, XmlPullParser xpp, ChargeItem res) throws XmlPullParserException, IOException, FHIRFormatError { 3597 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 3598 res.setIdentifier(parseIdentifier(xpp)); 3599 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 3600 res.getDefinition().add(parseUri(xpp)); 3601 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 3602 res.setStatusElement(parseEnumeration(xpp, ChargeItem.ChargeItemStatus.NULL, new ChargeItem.ChargeItemStatusEnumFactory())); 3603 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 3604 res.getPartOf().add(parseReference(xpp)); 3605 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3606 res.setCode(parseCodeableConcept(xpp)); 3607 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 3608 res.setSubject(parseReference(xpp)); 3609 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 3610 res.setContext(parseReference(xpp)); 3611 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "occurrence")) { 3612 res.setOccurrence(parseType("occurrence", xpp)); 3613 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 3614 res.getParticipant().add(parseChargeItemChargeItemParticipantComponent(xpp, res)); 3615 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performingOrganization")) { 3616 res.setPerformingOrganization(parseReference(xpp)); 3617 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestingOrganization")) { 3618 res.setRequestingOrganization(parseReference(xpp)); 3619 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 3620 res.setQuantity(parseQuantity(xpp)); 3621 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodysite")) { 3622 res.getBodysite().add(parseCodeableConcept(xpp)); 3623 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factorOverride")) { 3624 res.setFactorOverrideElement(parseDecimal(xpp)); 3625 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priceOverride")) { 3626 res.setPriceOverride(parseMoney(xpp)); 3627 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("overrideReason")) { 3628 res.setOverrideReasonElement(parseString(xpp)); 3629 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("enterer")) { 3630 res.setEnterer(parseReference(xpp)); 3631 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("enteredDate")) { 3632 res.setEnteredDateElement(parseDateTime(xpp)); 3633 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 3634 res.getReason().add(parseCodeableConcept(xpp)); 3635 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 3636 res.getService().add(parseReference(xpp)); 3637 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("account")) { 3638 res.getAccount().add(parseReference(xpp)); 3639 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 3640 res.getNote().add(parseAnnotation(xpp)); 3641 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInformation")) { 3642 res.getSupportingInformation().add(parseReference(xpp)); 3643 } else if (!parseDomainResourceContent(eventType, xpp, res)) 3644 return false; 3645 return true; 3646 } 3647 3648 protected ChargeItem.ChargeItemParticipantComponent parseChargeItemChargeItemParticipantComponent(XmlPullParser xpp, ChargeItem owner) throws XmlPullParserException, IOException, FHIRFormatError { 3649 ChargeItem.ChargeItemParticipantComponent res = new ChargeItem.ChargeItemParticipantComponent(); 3650 parseBackboneAttributes(xpp, res); 3651 next(xpp); 3652 int eventType = nextNoWhitespace(xpp); 3653 while (eventType != XmlPullParser.END_TAG) { 3654 if (!parseChargeItemChargeItemParticipantComponentContent(eventType, xpp, owner, res)) 3655 unknownContent(xpp); 3656 eventType = nextNoWhitespace(xpp); 3657 } 3658 next(xpp); 3659 parseElementClose(res); 3660 return res; 3661 } 3662 3663 protected boolean parseChargeItemChargeItemParticipantComponentContent(int eventType, XmlPullParser xpp, ChargeItem owner, ChargeItem.ChargeItemParticipantComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3664 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 3665 res.setRole(parseCodeableConcept(xpp)); 3666 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 3667 res.setActor(parseReference(xpp)); 3668 } else if (!parseBackboneContent(eventType, xpp, res)) 3669 return false; 3670 return true; 3671 } 3672 3673 protected Claim parseClaim(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3674 Claim res = new Claim(); 3675 parseDomainResourceAttributes(xpp, res); 3676 next(xpp); 3677 int eventType = nextNoWhitespace(xpp); 3678 while (eventType != XmlPullParser.END_TAG) { 3679 if (!parseClaimContent(eventType, xpp, res)) 3680 unknownContent(xpp); 3681 eventType = nextNoWhitespace(xpp); 3682 } 3683 next(xpp); 3684 parseElementClose(res); 3685 return res; 3686 } 3687 3688 protected boolean parseClaimContent(int eventType, XmlPullParser xpp, Claim res) throws XmlPullParserException, IOException, FHIRFormatError { 3689 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 3690 res.getIdentifier().add(parseIdentifier(xpp)); 3691 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 3692 res.setStatusElement(parseEnumeration(xpp, Claim.ClaimStatus.NULL, new Claim.ClaimStatusEnumFactory())); 3693 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 3694 res.setType(parseCodeableConcept(xpp)); 3695 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subType")) { 3696 res.getSubType().add(parseCodeableConcept(xpp)); 3697 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 3698 res.setUseElement(parseEnumeration(xpp, Claim.Use.NULL, new Claim.UseEnumFactory())); 3699 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 3700 res.setPatient(parseReference(xpp)); 3701 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("billablePeriod")) { 3702 res.setBillablePeriod(parsePeriod(xpp)); 3703 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 3704 res.setCreatedElement(parseDateTime(xpp)); 3705 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("enterer")) { 3706 res.setEnterer(parseReference(xpp)); 3707 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurer")) { 3708 res.setInsurer(parseReference(xpp)); 3709 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provider")) { 3710 res.setProvider(parseReference(xpp)); 3711 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 3712 res.setOrganization(parseReference(xpp)); 3713 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 3714 res.setPriority(parseCodeableConcept(xpp)); 3715 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fundsReserve")) { 3716 res.setFundsReserve(parseCodeableConcept(xpp)); 3717 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("related")) { 3718 res.getRelated().add(parseClaimRelatedClaimComponent(xpp, res)); 3719 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prescription")) { 3720 res.setPrescription(parseReference(xpp)); 3721 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("originalPrescription")) { 3722 res.setOriginalPrescription(parseReference(xpp)); 3723 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payee")) { 3724 res.setPayee(parseClaimPayeeComponent(xpp, res)); 3725 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referral")) { 3726 res.setReferral(parseReference(xpp)); 3727 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("facility")) { 3728 res.setFacility(parseReference(xpp)); 3729 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("careTeam")) { 3730 res.getCareTeam().add(parseClaimCareTeamComponent(xpp, res)); 3731 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("information")) { 3732 res.getInformation().add(parseClaimSpecialConditionComponent(xpp, res)); 3733 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnosis")) { 3734 res.getDiagnosis().add(parseClaimDiagnosisComponent(xpp, res)); 3735 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("procedure")) { 3736 res.getProcedure().add(parseClaimProcedureComponent(xpp, res)); 3737 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurance")) { 3738 res.getInsurance().add(parseClaimInsuranceComponent(xpp, res)); 3739 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("accident")) { 3740 res.setAccident(parseClaimAccidentComponent(xpp, res)); 3741 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("employmentImpacted")) { 3742 res.setEmploymentImpacted(parsePeriod(xpp)); 3743 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("hospitalization")) { 3744 res.setHospitalization(parsePeriod(xpp)); 3745 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 3746 res.getItem().add(parseClaimItemComponent(xpp, res)); 3747 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("total")) { 3748 res.setTotal(parseMoney(xpp)); 3749 } else if (!parseDomainResourceContent(eventType, xpp, res)) 3750 return false; 3751 return true; 3752 } 3753 3754 protected Claim.RelatedClaimComponent parseClaimRelatedClaimComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 3755 Claim.RelatedClaimComponent res = new Claim.RelatedClaimComponent(); 3756 parseBackboneAttributes(xpp, res); 3757 next(xpp); 3758 int eventType = nextNoWhitespace(xpp); 3759 while (eventType != XmlPullParser.END_TAG) { 3760 if (!parseClaimRelatedClaimComponentContent(eventType, xpp, owner, res)) 3761 unknownContent(xpp); 3762 eventType = nextNoWhitespace(xpp); 3763 } 3764 next(xpp); 3765 parseElementClose(res); 3766 return res; 3767 } 3768 3769 protected boolean parseClaimRelatedClaimComponentContent(int eventType, XmlPullParser xpp, Claim owner, Claim.RelatedClaimComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3770 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("claim")) { 3771 res.setClaim(parseReference(xpp)); 3772 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 3773 res.setRelationship(parseCodeableConcept(xpp)); 3774 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 3775 res.setReference(parseIdentifier(xpp)); 3776 } else if (!parseBackboneContent(eventType, xpp, res)) 3777 return false; 3778 return true; 3779 } 3780 3781 protected Claim.PayeeComponent parseClaimPayeeComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 3782 Claim.PayeeComponent res = new Claim.PayeeComponent(); 3783 parseBackboneAttributes(xpp, res); 3784 next(xpp); 3785 int eventType = nextNoWhitespace(xpp); 3786 while (eventType != XmlPullParser.END_TAG) { 3787 if (!parseClaimPayeeComponentContent(eventType, xpp, owner, res)) 3788 unknownContent(xpp); 3789 eventType = nextNoWhitespace(xpp); 3790 } 3791 next(xpp); 3792 parseElementClose(res); 3793 return res; 3794 } 3795 3796 protected boolean parseClaimPayeeComponentContent(int eventType, XmlPullParser xpp, Claim owner, Claim.PayeeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3797 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 3798 res.setType(parseCodeableConcept(xpp)); 3799 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resourceType")) { 3800 res.setResourceType(parseCoding(xpp)); 3801 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("party")) { 3802 res.setParty(parseReference(xpp)); 3803 } else if (!parseBackboneContent(eventType, xpp, res)) 3804 return false; 3805 return true; 3806 } 3807 3808 protected Claim.CareTeamComponent parseClaimCareTeamComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 3809 Claim.CareTeamComponent res = new Claim.CareTeamComponent(); 3810 parseBackboneAttributes(xpp, res); 3811 next(xpp); 3812 int eventType = nextNoWhitespace(xpp); 3813 while (eventType != XmlPullParser.END_TAG) { 3814 if (!parseClaimCareTeamComponentContent(eventType, xpp, owner, res)) 3815 unknownContent(xpp); 3816 eventType = nextNoWhitespace(xpp); 3817 } 3818 next(xpp); 3819 parseElementClose(res); 3820 return res; 3821 } 3822 3823 protected boolean parseClaimCareTeamComponentContent(int eventType, XmlPullParser xpp, Claim owner, Claim.CareTeamComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3824 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 3825 res.setSequenceElement(parsePositiveInt(xpp)); 3826 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provider")) { 3827 res.setProvider(parseReference(xpp)); 3828 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responsible")) { 3829 res.setResponsibleElement(parseBoolean(xpp)); 3830 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 3831 res.setRole(parseCodeableConcept(xpp)); 3832 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("qualification")) { 3833 res.setQualification(parseCodeableConcept(xpp)); 3834 } else if (!parseBackboneContent(eventType, xpp, res)) 3835 return false; 3836 return true; 3837 } 3838 3839 protected Claim.SpecialConditionComponent parseClaimSpecialConditionComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 3840 Claim.SpecialConditionComponent res = new Claim.SpecialConditionComponent(); 3841 parseBackboneAttributes(xpp, res); 3842 next(xpp); 3843 int eventType = nextNoWhitespace(xpp); 3844 while (eventType != XmlPullParser.END_TAG) { 3845 if (!parseClaimSpecialConditionComponentContent(eventType, xpp, owner, res)) 3846 unknownContent(xpp); 3847 eventType = nextNoWhitespace(xpp); 3848 } 3849 next(xpp); 3850 parseElementClose(res); 3851 return res; 3852 } 3853 3854 protected boolean parseClaimSpecialConditionComponentContent(int eventType, XmlPullParser xpp, Claim owner, Claim.SpecialConditionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3855 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 3856 res.setSequenceElement(parsePositiveInt(xpp)); 3857 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 3858 res.setCategory(parseCodeableConcept(xpp)); 3859 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3860 res.setCode(parseCodeableConcept(xpp)); 3861 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "timing")) { 3862 res.setTiming(parseType("timing", xpp)); 3863 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 3864 res.setValue(parseType("value", xpp)); 3865 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 3866 res.setReason(parseCodeableConcept(xpp)); 3867 } else if (!parseBackboneContent(eventType, xpp, res)) 3868 return false; 3869 return true; 3870 } 3871 3872 protected Claim.DiagnosisComponent parseClaimDiagnosisComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 3873 Claim.DiagnosisComponent res = new Claim.DiagnosisComponent(); 3874 parseBackboneAttributes(xpp, res); 3875 next(xpp); 3876 int eventType = nextNoWhitespace(xpp); 3877 while (eventType != XmlPullParser.END_TAG) { 3878 if (!parseClaimDiagnosisComponentContent(eventType, xpp, owner, res)) 3879 unknownContent(xpp); 3880 eventType = nextNoWhitespace(xpp); 3881 } 3882 next(xpp); 3883 parseElementClose(res); 3884 return res; 3885 } 3886 3887 protected boolean parseClaimDiagnosisComponentContent(int eventType, XmlPullParser xpp, Claim owner, Claim.DiagnosisComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3888 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 3889 res.setSequenceElement(parsePositiveInt(xpp)); 3890 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "diagnosis")) { 3891 res.setDiagnosis(parseType("diagnosis", xpp)); 3892 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 3893 res.getType().add(parseCodeableConcept(xpp)); 3894 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("packageCode")) { 3895 res.setPackageCode(parseCodeableConcept(xpp)); 3896 } else if (!parseBackboneContent(eventType, xpp, res)) 3897 return false; 3898 return true; 3899 } 3900 3901 protected Claim.ProcedureComponent parseClaimProcedureComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 3902 Claim.ProcedureComponent res = new Claim.ProcedureComponent(); 3903 parseBackboneAttributes(xpp, res); 3904 next(xpp); 3905 int eventType = nextNoWhitespace(xpp); 3906 while (eventType != XmlPullParser.END_TAG) { 3907 if (!parseClaimProcedureComponentContent(eventType, xpp, owner, res)) 3908 unknownContent(xpp); 3909 eventType = nextNoWhitespace(xpp); 3910 } 3911 next(xpp); 3912 parseElementClose(res); 3913 return res; 3914 } 3915 3916 protected boolean parseClaimProcedureComponentContent(int eventType, XmlPullParser xpp, Claim owner, Claim.ProcedureComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3917 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 3918 res.setSequenceElement(parsePositiveInt(xpp)); 3919 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 3920 res.setDateElement(parseDateTime(xpp)); 3921 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "procedure")) { 3922 res.setProcedure(parseType("procedure", xpp)); 3923 } else if (!parseBackboneContent(eventType, xpp, res)) 3924 return false; 3925 return true; 3926 } 3927 3928 protected Claim.InsuranceComponent parseClaimInsuranceComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 3929 Claim.InsuranceComponent res = new Claim.InsuranceComponent(); 3930 parseBackboneAttributes(xpp, res); 3931 next(xpp); 3932 int eventType = nextNoWhitespace(xpp); 3933 while (eventType != XmlPullParser.END_TAG) { 3934 if (!parseClaimInsuranceComponentContent(eventType, xpp, owner, res)) 3935 unknownContent(xpp); 3936 eventType = nextNoWhitespace(xpp); 3937 } 3938 next(xpp); 3939 parseElementClose(res); 3940 return res; 3941 } 3942 3943 protected boolean parseClaimInsuranceComponentContent(int eventType, XmlPullParser xpp, Claim owner, Claim.InsuranceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3944 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 3945 res.setSequenceElement(parsePositiveInt(xpp)); 3946 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focal")) { 3947 res.setFocalElement(parseBoolean(xpp)); 3948 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverage")) { 3949 res.setCoverage(parseReference(xpp)); 3950 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("businessArrangement")) { 3951 res.setBusinessArrangementElement(parseString(xpp)); 3952 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preAuthRef")) { 3953 res.getPreAuthRef().add(parseString(xpp)); 3954 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("claimResponse")) { 3955 res.setClaimResponse(parseReference(xpp)); 3956 } else if (!parseBackboneContent(eventType, xpp, res)) 3957 return false; 3958 return true; 3959 } 3960 3961 protected Claim.AccidentComponent parseClaimAccidentComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 3962 Claim.AccidentComponent res = new Claim.AccidentComponent(); 3963 parseBackboneAttributes(xpp, res); 3964 next(xpp); 3965 int eventType = nextNoWhitespace(xpp); 3966 while (eventType != XmlPullParser.END_TAG) { 3967 if (!parseClaimAccidentComponentContent(eventType, xpp, owner, res)) 3968 unknownContent(xpp); 3969 eventType = nextNoWhitespace(xpp); 3970 } 3971 next(xpp); 3972 parseElementClose(res); 3973 return res; 3974 } 3975 3976 protected boolean parseClaimAccidentComponentContent(int eventType, XmlPullParser xpp, Claim owner, Claim.AccidentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3977 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 3978 res.setDateElement(parseDate(xpp)); 3979 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 3980 res.setType(parseCodeableConcept(xpp)); 3981 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "location")) { 3982 res.setLocation(parseType("location", xpp)); 3983 } else if (!parseBackboneContent(eventType, xpp, res)) 3984 return false; 3985 return true; 3986 } 3987 3988 protected Claim.ItemComponent parseClaimItemComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 3989 Claim.ItemComponent res = new Claim.ItemComponent(); 3990 parseBackboneAttributes(xpp, res); 3991 next(xpp); 3992 int eventType = nextNoWhitespace(xpp); 3993 while (eventType != XmlPullParser.END_TAG) { 3994 if (!parseClaimItemComponentContent(eventType, xpp, owner, res)) 3995 unknownContent(xpp); 3996 eventType = nextNoWhitespace(xpp); 3997 } 3998 next(xpp); 3999 parseElementClose(res); 4000 return res; 4001 } 4002 4003 protected boolean parseClaimItemComponentContent(int eventType, XmlPullParser xpp, Claim owner, Claim.ItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4004 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 4005 res.setSequenceElement(parsePositiveInt(xpp)); 4006 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("careTeamLinkId")) { 4007 res.getCareTeamLinkId().add(parsePositiveInt(xpp)); 4008 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnosisLinkId")) { 4009 res.getDiagnosisLinkId().add(parsePositiveInt(xpp)); 4010 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("procedureLinkId")) { 4011 res.getProcedureLinkId().add(parsePositiveInt(xpp)); 4012 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("informationLinkId")) { 4013 res.getInformationLinkId().add(parsePositiveInt(xpp)); 4014 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("revenue")) { 4015 res.setRevenue(parseCodeableConcept(xpp)); 4016 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 4017 res.setCategory(parseCodeableConcept(xpp)); 4018 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 4019 res.setService(parseCodeableConcept(xpp)); 4020 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 4021 res.getModifier().add(parseCodeableConcept(xpp)); 4022 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("programCode")) { 4023 res.getProgramCode().add(parseCodeableConcept(xpp)); 4024 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "serviced")) { 4025 res.setServiced(parseType("serviced", xpp)); 4026 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "location")) { 4027 res.setLocation(parseType("location", xpp)); 4028 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 4029 res.setQuantity(parseSimpleQuantity(xpp)); 4030 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 4031 res.setUnitPrice(parseMoney(xpp)); 4032 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 4033 res.setFactorElement(parseDecimal(xpp)); 4034 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 4035 res.setNet(parseMoney(xpp)); 4036 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udi")) { 4037 res.getUdi().add(parseReference(xpp)); 4038 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 4039 res.setBodySite(parseCodeableConcept(xpp)); 4040 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subSite")) { 4041 res.getSubSite().add(parseCodeableConcept(xpp)); 4042 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 4043 res.getEncounter().add(parseReference(xpp)); 4044 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 4045 res.getDetail().add(parseClaimDetailComponent(xpp, owner)); 4046 } else if (!parseBackboneContent(eventType, xpp, res)) 4047 return false; 4048 return true; 4049 } 4050 4051 protected Claim.DetailComponent parseClaimDetailComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 4052 Claim.DetailComponent res = new Claim.DetailComponent(); 4053 parseBackboneAttributes(xpp, res); 4054 next(xpp); 4055 int eventType = nextNoWhitespace(xpp); 4056 while (eventType != XmlPullParser.END_TAG) { 4057 if (!parseClaimDetailComponentContent(eventType, xpp, owner, res)) 4058 unknownContent(xpp); 4059 eventType = nextNoWhitespace(xpp); 4060 } 4061 next(xpp); 4062 parseElementClose(res); 4063 return res; 4064 } 4065 4066 protected boolean parseClaimDetailComponentContent(int eventType, XmlPullParser xpp, Claim owner, Claim.DetailComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4067 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 4068 res.setSequenceElement(parsePositiveInt(xpp)); 4069 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("revenue")) { 4070 res.setRevenue(parseCodeableConcept(xpp)); 4071 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 4072 res.setCategory(parseCodeableConcept(xpp)); 4073 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 4074 res.setService(parseCodeableConcept(xpp)); 4075 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 4076 res.getModifier().add(parseCodeableConcept(xpp)); 4077 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("programCode")) { 4078 res.getProgramCode().add(parseCodeableConcept(xpp)); 4079 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 4080 res.setQuantity(parseSimpleQuantity(xpp)); 4081 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 4082 res.setUnitPrice(parseMoney(xpp)); 4083 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 4084 res.setFactorElement(parseDecimal(xpp)); 4085 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 4086 res.setNet(parseMoney(xpp)); 4087 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udi")) { 4088 res.getUdi().add(parseReference(xpp)); 4089 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subDetail")) { 4090 res.getSubDetail().add(parseClaimSubDetailComponent(xpp, owner)); 4091 } else if (!parseBackboneContent(eventType, xpp, res)) 4092 return false; 4093 return true; 4094 } 4095 4096 protected Claim.SubDetailComponent parseClaimSubDetailComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 4097 Claim.SubDetailComponent res = new Claim.SubDetailComponent(); 4098 parseBackboneAttributes(xpp, res); 4099 next(xpp); 4100 int eventType = nextNoWhitespace(xpp); 4101 while (eventType != XmlPullParser.END_TAG) { 4102 if (!parseClaimSubDetailComponentContent(eventType, xpp, owner, res)) 4103 unknownContent(xpp); 4104 eventType = nextNoWhitespace(xpp); 4105 } 4106 next(xpp); 4107 parseElementClose(res); 4108 return res; 4109 } 4110 4111 protected boolean parseClaimSubDetailComponentContent(int eventType, XmlPullParser xpp, Claim owner, Claim.SubDetailComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4112 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 4113 res.setSequenceElement(parsePositiveInt(xpp)); 4114 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("revenue")) { 4115 res.setRevenue(parseCodeableConcept(xpp)); 4116 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 4117 res.setCategory(parseCodeableConcept(xpp)); 4118 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 4119 res.setService(parseCodeableConcept(xpp)); 4120 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 4121 res.getModifier().add(parseCodeableConcept(xpp)); 4122 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("programCode")) { 4123 res.getProgramCode().add(parseCodeableConcept(xpp)); 4124 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 4125 res.setQuantity(parseSimpleQuantity(xpp)); 4126 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 4127 res.setUnitPrice(parseMoney(xpp)); 4128 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 4129 res.setFactorElement(parseDecimal(xpp)); 4130 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 4131 res.setNet(parseMoney(xpp)); 4132 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udi")) { 4133 res.getUdi().add(parseReference(xpp)); 4134 } else if (!parseBackboneContent(eventType, xpp, res)) 4135 return false; 4136 return true; 4137 } 4138 4139 protected ClaimResponse parseClaimResponse(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4140 ClaimResponse res = new ClaimResponse(); 4141 parseDomainResourceAttributes(xpp, res); 4142 next(xpp); 4143 int eventType = nextNoWhitespace(xpp); 4144 while (eventType != XmlPullParser.END_TAG) { 4145 if (!parseClaimResponseContent(eventType, xpp, res)) 4146 unknownContent(xpp); 4147 eventType = nextNoWhitespace(xpp); 4148 } 4149 next(xpp); 4150 parseElementClose(res); 4151 return res; 4152 } 4153 4154 protected boolean parseClaimResponseContent(int eventType, XmlPullParser xpp, ClaimResponse res) throws XmlPullParserException, IOException, FHIRFormatError { 4155 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4156 res.getIdentifier().add(parseIdentifier(xpp)); 4157 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 4158 res.setStatusElement(parseEnumeration(xpp, ClaimResponse.ClaimResponseStatus.NULL, new ClaimResponse.ClaimResponseStatusEnumFactory())); 4159 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 4160 res.setPatient(parseReference(xpp)); 4161 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 4162 res.setCreatedElement(parseDateTime(xpp)); 4163 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurer")) { 4164 res.setInsurer(parseReference(xpp)); 4165 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestProvider")) { 4166 res.setRequestProvider(parseReference(xpp)); 4167 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestOrganization")) { 4168 res.setRequestOrganization(parseReference(xpp)); 4169 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 4170 res.setRequest(parseReference(xpp)); 4171 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 4172 res.setOutcome(parseCodeableConcept(xpp)); 4173 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disposition")) { 4174 res.setDispositionElement(parseString(xpp)); 4175 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payeeType")) { 4176 res.setPayeeType(parseCodeableConcept(xpp)); 4177 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 4178 res.getItem().add(parseClaimResponseItemComponent(xpp, res)); 4179 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("addItem")) { 4180 res.getAddItem().add(parseClaimResponseAddedItemComponent(xpp, res)); 4181 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("error")) { 4182 res.getError().add(parseClaimResponseErrorComponent(xpp, res)); 4183 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("totalCost")) { 4184 res.setTotalCost(parseMoney(xpp)); 4185 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unallocDeductable")) { 4186 res.setUnallocDeductable(parseMoney(xpp)); 4187 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("totalBenefit")) { 4188 res.setTotalBenefit(parseMoney(xpp)); 4189 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payment")) { 4190 res.setPayment(parseClaimResponsePaymentComponent(xpp, res)); 4191 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reserved")) { 4192 res.setReserved(parseCoding(xpp)); 4193 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("form")) { 4194 res.setForm(parseCodeableConcept(xpp)); 4195 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("processNote")) { 4196 res.getProcessNote().add(parseClaimResponseNoteComponent(xpp, res)); 4197 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("communicationRequest")) { 4198 res.getCommunicationRequest().add(parseReference(xpp)); 4199 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurance")) { 4200 res.getInsurance().add(parseClaimResponseInsuranceComponent(xpp, res)); 4201 } else if (!parseDomainResourceContent(eventType, xpp, res)) 4202 return false; 4203 return true; 4204 } 4205 4206 protected ClaimResponse.ItemComponent parseClaimResponseItemComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 4207 ClaimResponse.ItemComponent res = new ClaimResponse.ItemComponent(); 4208 parseBackboneAttributes(xpp, res); 4209 next(xpp); 4210 int eventType = nextNoWhitespace(xpp); 4211 while (eventType != XmlPullParser.END_TAG) { 4212 if (!parseClaimResponseItemComponentContent(eventType, xpp, owner, res)) 4213 unknownContent(xpp); 4214 eventType = nextNoWhitespace(xpp); 4215 } 4216 next(xpp); 4217 parseElementClose(res); 4218 return res; 4219 } 4220 4221 protected boolean parseClaimResponseItemComponentContent(int eventType, XmlPullParser xpp, ClaimResponse owner, ClaimResponse.ItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4222 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequenceLinkId")) { 4223 res.setSequenceLinkIdElement(parsePositiveInt(xpp)); 4224 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumber")) { 4225 res.getNoteNumber().add(parsePositiveInt(xpp)); 4226 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 4227 res.getAdjudication().add(parseClaimResponseAdjudicationComponent(xpp, owner)); 4228 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 4229 res.getDetail().add(parseClaimResponseItemDetailComponent(xpp, owner)); 4230 } else if (!parseBackboneContent(eventType, xpp, res)) 4231 return false; 4232 return true; 4233 } 4234 4235 protected ClaimResponse.AdjudicationComponent parseClaimResponseAdjudicationComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 4236 ClaimResponse.AdjudicationComponent res = new ClaimResponse.AdjudicationComponent(); 4237 parseBackboneAttributes(xpp, res); 4238 next(xpp); 4239 int eventType = nextNoWhitespace(xpp); 4240 while (eventType != XmlPullParser.END_TAG) { 4241 if (!parseClaimResponseAdjudicationComponentContent(eventType, xpp, owner, res)) 4242 unknownContent(xpp); 4243 eventType = nextNoWhitespace(xpp); 4244 } 4245 next(xpp); 4246 parseElementClose(res); 4247 return res; 4248 } 4249 4250 protected boolean parseClaimResponseAdjudicationComponentContent(int eventType, XmlPullParser xpp, ClaimResponse owner, ClaimResponse.AdjudicationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4251 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 4252 res.setCategory(parseCodeableConcept(xpp)); 4253 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 4254 res.setReason(parseCodeableConcept(xpp)); 4255 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 4256 res.setAmount(parseMoney(xpp)); 4257 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 4258 res.setValueElement(parseDecimal(xpp)); 4259 } else if (!parseBackboneContent(eventType, xpp, res)) 4260 return false; 4261 return true; 4262 } 4263 4264 protected ClaimResponse.ItemDetailComponent parseClaimResponseItemDetailComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 4265 ClaimResponse.ItemDetailComponent res = new ClaimResponse.ItemDetailComponent(); 4266 parseBackboneAttributes(xpp, res); 4267 next(xpp); 4268 int eventType = nextNoWhitespace(xpp); 4269 while (eventType != XmlPullParser.END_TAG) { 4270 if (!parseClaimResponseItemDetailComponentContent(eventType, xpp, owner, res)) 4271 unknownContent(xpp); 4272 eventType = nextNoWhitespace(xpp); 4273 } 4274 next(xpp); 4275 parseElementClose(res); 4276 return res; 4277 } 4278 4279 protected boolean parseClaimResponseItemDetailComponentContent(int eventType, XmlPullParser xpp, ClaimResponse owner, ClaimResponse.ItemDetailComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4280 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequenceLinkId")) { 4281 res.setSequenceLinkIdElement(parsePositiveInt(xpp)); 4282 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumber")) { 4283 res.getNoteNumber().add(parsePositiveInt(xpp)); 4284 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 4285 res.getAdjudication().add(parseClaimResponseAdjudicationComponent(xpp, owner)); 4286 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subDetail")) { 4287 res.getSubDetail().add(parseClaimResponseSubDetailComponent(xpp, owner)); 4288 } else if (!parseBackboneContent(eventType, xpp, res)) 4289 return false; 4290 return true; 4291 } 4292 4293 protected ClaimResponse.SubDetailComponent parseClaimResponseSubDetailComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 4294 ClaimResponse.SubDetailComponent res = new ClaimResponse.SubDetailComponent(); 4295 parseBackboneAttributes(xpp, res); 4296 next(xpp); 4297 int eventType = nextNoWhitespace(xpp); 4298 while (eventType != XmlPullParser.END_TAG) { 4299 if (!parseClaimResponseSubDetailComponentContent(eventType, xpp, owner, res)) 4300 unknownContent(xpp); 4301 eventType = nextNoWhitespace(xpp); 4302 } 4303 next(xpp); 4304 parseElementClose(res); 4305 return res; 4306 } 4307 4308 protected boolean parseClaimResponseSubDetailComponentContent(int eventType, XmlPullParser xpp, ClaimResponse owner, ClaimResponse.SubDetailComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4309 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequenceLinkId")) { 4310 res.setSequenceLinkIdElement(parsePositiveInt(xpp)); 4311 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumber")) { 4312 res.getNoteNumber().add(parsePositiveInt(xpp)); 4313 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 4314 res.getAdjudication().add(parseClaimResponseAdjudicationComponent(xpp, owner)); 4315 } else if (!parseBackboneContent(eventType, xpp, res)) 4316 return false; 4317 return true; 4318 } 4319 4320 protected ClaimResponse.AddedItemComponent parseClaimResponseAddedItemComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 4321 ClaimResponse.AddedItemComponent res = new ClaimResponse.AddedItemComponent(); 4322 parseBackboneAttributes(xpp, res); 4323 next(xpp); 4324 int eventType = nextNoWhitespace(xpp); 4325 while (eventType != XmlPullParser.END_TAG) { 4326 if (!parseClaimResponseAddedItemComponentContent(eventType, xpp, owner, res)) 4327 unknownContent(xpp); 4328 eventType = nextNoWhitespace(xpp); 4329 } 4330 next(xpp); 4331 parseElementClose(res); 4332 return res; 4333 } 4334 4335 protected boolean parseClaimResponseAddedItemComponentContent(int eventType, XmlPullParser xpp, ClaimResponse owner, ClaimResponse.AddedItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4336 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequenceLinkId")) { 4337 res.getSequenceLinkId().add(parsePositiveInt(xpp)); 4338 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("revenue")) { 4339 res.setRevenue(parseCodeableConcept(xpp)); 4340 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 4341 res.setCategory(parseCodeableConcept(xpp)); 4342 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 4343 res.setService(parseCodeableConcept(xpp)); 4344 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 4345 res.getModifier().add(parseCodeableConcept(xpp)); 4346 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fee")) { 4347 res.setFee(parseMoney(xpp)); 4348 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumber")) { 4349 res.getNoteNumber().add(parsePositiveInt(xpp)); 4350 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 4351 res.getAdjudication().add(parseClaimResponseAdjudicationComponent(xpp, owner)); 4352 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 4353 res.getDetail().add(parseClaimResponseAddedItemsDetailComponent(xpp, owner)); 4354 } else if (!parseBackboneContent(eventType, xpp, res)) 4355 return false; 4356 return true; 4357 } 4358 4359 protected ClaimResponse.AddedItemsDetailComponent parseClaimResponseAddedItemsDetailComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 4360 ClaimResponse.AddedItemsDetailComponent res = new ClaimResponse.AddedItemsDetailComponent(); 4361 parseBackboneAttributes(xpp, res); 4362 next(xpp); 4363 int eventType = nextNoWhitespace(xpp); 4364 while (eventType != XmlPullParser.END_TAG) { 4365 if (!parseClaimResponseAddedItemsDetailComponentContent(eventType, xpp, owner, res)) 4366 unknownContent(xpp); 4367 eventType = nextNoWhitespace(xpp); 4368 } 4369 next(xpp); 4370 parseElementClose(res); 4371 return res; 4372 } 4373 4374 protected boolean parseClaimResponseAddedItemsDetailComponentContent(int eventType, XmlPullParser xpp, ClaimResponse owner, ClaimResponse.AddedItemsDetailComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4375 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("revenue")) { 4376 res.setRevenue(parseCodeableConcept(xpp)); 4377 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 4378 res.setCategory(parseCodeableConcept(xpp)); 4379 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 4380 res.setService(parseCodeableConcept(xpp)); 4381 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 4382 res.getModifier().add(parseCodeableConcept(xpp)); 4383 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fee")) { 4384 res.setFee(parseMoney(xpp)); 4385 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumber")) { 4386 res.getNoteNumber().add(parsePositiveInt(xpp)); 4387 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 4388 res.getAdjudication().add(parseClaimResponseAdjudicationComponent(xpp, owner)); 4389 } else if (!parseBackboneContent(eventType, xpp, res)) 4390 return false; 4391 return true; 4392 } 4393 4394 protected ClaimResponse.ErrorComponent parseClaimResponseErrorComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 4395 ClaimResponse.ErrorComponent res = new ClaimResponse.ErrorComponent(); 4396 parseBackboneAttributes(xpp, res); 4397 next(xpp); 4398 int eventType = nextNoWhitespace(xpp); 4399 while (eventType != XmlPullParser.END_TAG) { 4400 if (!parseClaimResponseErrorComponentContent(eventType, xpp, owner, res)) 4401 unknownContent(xpp); 4402 eventType = nextNoWhitespace(xpp); 4403 } 4404 next(xpp); 4405 parseElementClose(res); 4406 return res; 4407 } 4408 4409 protected boolean parseClaimResponseErrorComponentContent(int eventType, XmlPullParser xpp, ClaimResponse owner, ClaimResponse.ErrorComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4410 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequenceLinkId")) { 4411 res.setSequenceLinkIdElement(parsePositiveInt(xpp)); 4412 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detailSequenceLinkId")) { 4413 res.setDetailSequenceLinkIdElement(parsePositiveInt(xpp)); 4414 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subdetailSequenceLinkId")) { 4415 res.setSubdetailSequenceLinkIdElement(parsePositiveInt(xpp)); 4416 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 4417 res.setCode(parseCodeableConcept(xpp)); 4418 } else if (!parseBackboneContent(eventType, xpp, res)) 4419 return false; 4420 return true; 4421 } 4422 4423 protected ClaimResponse.PaymentComponent parseClaimResponsePaymentComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 4424 ClaimResponse.PaymentComponent res = new ClaimResponse.PaymentComponent(); 4425 parseBackboneAttributes(xpp, res); 4426 next(xpp); 4427 int eventType = nextNoWhitespace(xpp); 4428 while (eventType != XmlPullParser.END_TAG) { 4429 if (!parseClaimResponsePaymentComponentContent(eventType, xpp, owner, res)) 4430 unknownContent(xpp); 4431 eventType = nextNoWhitespace(xpp); 4432 } 4433 next(xpp); 4434 parseElementClose(res); 4435 return res; 4436 } 4437 4438 protected boolean parseClaimResponsePaymentComponentContent(int eventType, XmlPullParser xpp, ClaimResponse owner, ClaimResponse.PaymentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4439 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 4440 res.setType(parseCodeableConcept(xpp)); 4441 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjustment")) { 4442 res.setAdjustment(parseMoney(xpp)); 4443 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjustmentReason")) { 4444 res.setAdjustmentReason(parseCodeableConcept(xpp)); 4445 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 4446 res.setDateElement(parseDate(xpp)); 4447 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 4448 res.setAmount(parseMoney(xpp)); 4449 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4450 res.setIdentifier(parseIdentifier(xpp)); 4451 } else if (!parseBackboneContent(eventType, xpp, res)) 4452 return false; 4453 return true; 4454 } 4455 4456 protected ClaimResponse.NoteComponent parseClaimResponseNoteComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 4457 ClaimResponse.NoteComponent res = new ClaimResponse.NoteComponent(); 4458 parseBackboneAttributes(xpp, res); 4459 next(xpp); 4460 int eventType = nextNoWhitespace(xpp); 4461 while (eventType != XmlPullParser.END_TAG) { 4462 if (!parseClaimResponseNoteComponentContent(eventType, xpp, owner, res)) 4463 unknownContent(xpp); 4464 eventType = nextNoWhitespace(xpp); 4465 } 4466 next(xpp); 4467 parseElementClose(res); 4468 return res; 4469 } 4470 4471 protected boolean parseClaimResponseNoteComponentContent(int eventType, XmlPullParser xpp, ClaimResponse owner, ClaimResponse.NoteComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4472 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("number")) { 4473 res.setNumberElement(parsePositiveInt(xpp)); 4474 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 4475 res.setType(parseCodeableConcept(xpp)); 4476 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 4477 res.setTextElement(parseString(xpp)); 4478 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 4479 res.setLanguage(parseCodeableConcept(xpp)); 4480 } else if (!parseBackboneContent(eventType, xpp, res)) 4481 return false; 4482 return true; 4483 } 4484 4485 protected ClaimResponse.InsuranceComponent parseClaimResponseInsuranceComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 4486 ClaimResponse.InsuranceComponent res = new ClaimResponse.InsuranceComponent(); 4487 parseBackboneAttributes(xpp, res); 4488 next(xpp); 4489 int eventType = nextNoWhitespace(xpp); 4490 while (eventType != XmlPullParser.END_TAG) { 4491 if (!parseClaimResponseInsuranceComponentContent(eventType, xpp, owner, res)) 4492 unknownContent(xpp); 4493 eventType = nextNoWhitespace(xpp); 4494 } 4495 next(xpp); 4496 parseElementClose(res); 4497 return res; 4498 } 4499 4500 protected boolean parseClaimResponseInsuranceComponentContent(int eventType, XmlPullParser xpp, ClaimResponse owner, ClaimResponse.InsuranceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4501 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 4502 res.setSequenceElement(parsePositiveInt(xpp)); 4503 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focal")) { 4504 res.setFocalElement(parseBoolean(xpp)); 4505 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverage")) { 4506 res.setCoverage(parseReference(xpp)); 4507 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("businessArrangement")) { 4508 res.setBusinessArrangementElement(parseString(xpp)); 4509 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preAuthRef")) { 4510 res.getPreAuthRef().add(parseString(xpp)); 4511 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("claimResponse")) { 4512 res.setClaimResponse(parseReference(xpp)); 4513 } else if (!parseBackboneContent(eventType, xpp, res)) 4514 return false; 4515 return true; 4516 } 4517 4518 protected ClinicalImpression parseClinicalImpression(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4519 ClinicalImpression res = new ClinicalImpression(); 4520 parseDomainResourceAttributes(xpp, res); 4521 next(xpp); 4522 int eventType = nextNoWhitespace(xpp); 4523 while (eventType != XmlPullParser.END_TAG) { 4524 if (!parseClinicalImpressionContent(eventType, xpp, res)) 4525 unknownContent(xpp); 4526 eventType = nextNoWhitespace(xpp); 4527 } 4528 next(xpp); 4529 parseElementClose(res); 4530 return res; 4531 } 4532 4533 protected boolean parseClinicalImpressionContent(int eventType, XmlPullParser xpp, ClinicalImpression res) throws XmlPullParserException, IOException, FHIRFormatError { 4534 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4535 res.getIdentifier().add(parseIdentifier(xpp)); 4536 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 4537 res.setStatusElement(parseEnumeration(xpp, ClinicalImpression.ClinicalImpressionStatus.NULL, new ClinicalImpression.ClinicalImpressionStatusEnumFactory())); 4538 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 4539 res.setCode(parseCodeableConcept(xpp)); 4540 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 4541 res.setDescriptionElement(parseString(xpp)); 4542 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 4543 res.setSubject(parseReference(xpp)); 4544 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 4545 res.setContext(parseReference(xpp)); 4546 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "effective")) { 4547 res.setEffective(parseType("effective", xpp)); 4548 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 4549 res.setDateElement(parseDateTime(xpp)); 4550 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assessor")) { 4551 res.setAssessor(parseReference(xpp)); 4552 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("previous")) { 4553 res.setPrevious(parseReference(xpp)); 4554 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("problem")) { 4555 res.getProblem().add(parseReference(xpp)); 4556 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("investigation")) { 4557 res.getInvestigation().add(parseClinicalImpressionClinicalImpressionInvestigationComponent(xpp, res)); 4558 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("protocol")) { 4559 res.getProtocol().add(parseUri(xpp)); 4560 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("summary")) { 4561 res.setSummaryElement(parseString(xpp)); 4562 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("finding")) { 4563 res.getFinding().add(parseClinicalImpressionClinicalImpressionFindingComponent(xpp, res)); 4564 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prognosisCodeableConcept")) { 4565 res.getPrognosisCodeableConcept().add(parseCodeableConcept(xpp)); 4566 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prognosisReference")) { 4567 res.getPrognosisReference().add(parseReference(xpp)); 4568 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 4569 res.getAction().add(parseReference(xpp)); 4570 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 4571 res.getNote().add(parseAnnotation(xpp)); 4572 } else if (!parseDomainResourceContent(eventType, xpp, res)) 4573 return false; 4574 return true; 4575 } 4576 4577 protected ClinicalImpression.ClinicalImpressionInvestigationComponent parseClinicalImpressionClinicalImpressionInvestigationComponent(XmlPullParser xpp, ClinicalImpression owner) throws XmlPullParserException, IOException, FHIRFormatError { 4578 ClinicalImpression.ClinicalImpressionInvestigationComponent res = new ClinicalImpression.ClinicalImpressionInvestigationComponent(); 4579 parseBackboneAttributes(xpp, res); 4580 next(xpp); 4581 int eventType = nextNoWhitespace(xpp); 4582 while (eventType != XmlPullParser.END_TAG) { 4583 if (!parseClinicalImpressionClinicalImpressionInvestigationComponentContent(eventType, xpp, owner, res)) 4584 unknownContent(xpp); 4585 eventType = nextNoWhitespace(xpp); 4586 } 4587 next(xpp); 4588 parseElementClose(res); 4589 return res; 4590 } 4591 4592 protected boolean parseClinicalImpressionClinicalImpressionInvestigationComponentContent(int eventType, XmlPullParser xpp, ClinicalImpression owner, ClinicalImpression.ClinicalImpressionInvestigationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4593 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 4594 res.setCode(parseCodeableConcept(xpp)); 4595 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 4596 res.getItem().add(parseReference(xpp)); 4597 } else if (!parseBackboneContent(eventType, xpp, res)) 4598 return false; 4599 return true; 4600 } 4601 4602 protected ClinicalImpression.ClinicalImpressionFindingComponent parseClinicalImpressionClinicalImpressionFindingComponent(XmlPullParser xpp, ClinicalImpression owner) throws XmlPullParserException, IOException, FHIRFormatError { 4603 ClinicalImpression.ClinicalImpressionFindingComponent res = new ClinicalImpression.ClinicalImpressionFindingComponent(); 4604 parseBackboneAttributes(xpp, res); 4605 next(xpp); 4606 int eventType = nextNoWhitespace(xpp); 4607 while (eventType != XmlPullParser.END_TAG) { 4608 if (!parseClinicalImpressionClinicalImpressionFindingComponentContent(eventType, xpp, owner, res)) 4609 unknownContent(xpp); 4610 eventType = nextNoWhitespace(xpp); 4611 } 4612 next(xpp); 4613 parseElementClose(res); 4614 return res; 4615 } 4616 4617 protected boolean parseClinicalImpressionClinicalImpressionFindingComponentContent(int eventType, XmlPullParser xpp, ClinicalImpression owner, ClinicalImpression.ClinicalImpressionFindingComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4618 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "item")) { 4619 res.setItem(parseType("item", xpp)); 4620 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basis")) { 4621 res.setBasisElement(parseString(xpp)); 4622 } else if (!parseBackboneContent(eventType, xpp, res)) 4623 return false; 4624 return true; 4625 } 4626 4627 protected CodeSystem parseCodeSystem(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4628 CodeSystem res = new CodeSystem(); 4629 parseDomainResourceAttributes(xpp, res); 4630 next(xpp); 4631 int eventType = nextNoWhitespace(xpp); 4632 while (eventType != XmlPullParser.END_TAG) { 4633 if (!parseCodeSystemContent(eventType, xpp, res)) 4634 unknownContent(xpp); 4635 eventType = nextNoWhitespace(xpp); 4636 } 4637 next(xpp); 4638 parseElementClose(res); 4639 return res; 4640 } 4641 4642 protected boolean parseCodeSystemContent(int eventType, XmlPullParser xpp, CodeSystem res) throws XmlPullParserException, IOException, FHIRFormatError { 4643 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 4644 res.setUrlElement(parseUri(xpp)); 4645 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4646 res.setIdentifier(parseIdentifier(xpp)); 4647 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 4648 res.setVersionElement(parseString(xpp)); 4649 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 4650 res.setNameElement(parseString(xpp)); 4651 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 4652 res.setTitleElement(parseString(xpp)); 4653 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 4654 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 4655 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 4656 res.setExperimentalElement(parseBoolean(xpp)); 4657 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 4658 res.setDateElement(parseDateTime(xpp)); 4659 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 4660 res.setPublisherElement(parseString(xpp)); 4661 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 4662 res.getContact().add(parseContactDetail(xpp)); 4663 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 4664 res.setDescriptionElement(parseMarkdown(xpp)); 4665 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 4666 res.getUseContext().add(parseUsageContext(xpp)); 4667 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 4668 res.getJurisdiction().add(parseCodeableConcept(xpp)); 4669 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 4670 res.setPurposeElement(parseMarkdown(xpp)); 4671 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 4672 res.setCopyrightElement(parseMarkdown(xpp)); 4673 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("caseSensitive")) { 4674 res.setCaseSensitiveElement(parseBoolean(xpp)); 4675 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valueSet")) { 4676 res.setValueSetElement(parseUri(xpp)); 4677 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("hierarchyMeaning")) { 4678 res.setHierarchyMeaningElement(parseEnumeration(xpp, CodeSystem.CodeSystemHierarchyMeaning.NULL, new CodeSystem.CodeSystemHierarchyMeaningEnumFactory())); 4679 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("compositional")) { 4680 res.setCompositionalElement(parseBoolean(xpp)); 4681 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("versionNeeded")) { 4682 res.setVersionNeededElement(parseBoolean(xpp)); 4683 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 4684 res.setContentElement(parseEnumeration(xpp, CodeSystem.CodeSystemContentMode.NULL, new CodeSystem.CodeSystemContentModeEnumFactory())); 4685 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("count")) { 4686 res.setCountElement(parseUnsignedInt(xpp)); 4687 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("filter")) { 4688 res.getFilter().add(parseCodeSystemCodeSystemFilterComponent(xpp, res)); 4689 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("property")) { 4690 res.getProperty().add(parseCodeSystemPropertyComponent(xpp, res)); 4691 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("concept")) { 4692 res.getConcept().add(parseCodeSystemConceptDefinitionComponent(xpp, res)); 4693 } else if (!parseDomainResourceContent(eventType, xpp, res)) 4694 return false; 4695 return true; 4696 } 4697 4698 protected CodeSystem.CodeSystemFilterComponent parseCodeSystemCodeSystemFilterComponent(XmlPullParser xpp, CodeSystem owner) throws XmlPullParserException, IOException, FHIRFormatError { 4699 CodeSystem.CodeSystemFilterComponent res = new CodeSystem.CodeSystemFilterComponent(); 4700 parseBackboneAttributes(xpp, res); 4701 next(xpp); 4702 int eventType = nextNoWhitespace(xpp); 4703 while (eventType != XmlPullParser.END_TAG) { 4704 if (!parseCodeSystemCodeSystemFilterComponentContent(eventType, xpp, owner, res)) 4705 unknownContent(xpp); 4706 eventType = nextNoWhitespace(xpp); 4707 } 4708 next(xpp); 4709 parseElementClose(res); 4710 return res; 4711 } 4712 4713 protected boolean parseCodeSystemCodeSystemFilterComponentContent(int eventType, XmlPullParser xpp, CodeSystem owner, CodeSystem.CodeSystemFilterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4714 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 4715 res.setCodeElement(parseCode(xpp)); 4716 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 4717 res.setDescriptionElement(parseString(xpp)); 4718 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operator")) { 4719 res.getOperator().add(parseEnumeration(xpp, CodeSystem.FilterOperator.NULL, new CodeSystem.FilterOperatorEnumFactory())); 4720 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 4721 res.setValueElement(parseString(xpp)); 4722 } else if (!parseBackboneContent(eventType, xpp, res)) 4723 return false; 4724 return true; 4725 } 4726 4727 protected CodeSystem.PropertyComponent parseCodeSystemPropertyComponent(XmlPullParser xpp, CodeSystem owner) throws XmlPullParserException, IOException, FHIRFormatError { 4728 CodeSystem.PropertyComponent res = new CodeSystem.PropertyComponent(); 4729 parseBackboneAttributes(xpp, res); 4730 next(xpp); 4731 int eventType = nextNoWhitespace(xpp); 4732 while (eventType != XmlPullParser.END_TAG) { 4733 if (!parseCodeSystemPropertyComponentContent(eventType, xpp, owner, res)) 4734 unknownContent(xpp); 4735 eventType = nextNoWhitespace(xpp); 4736 } 4737 next(xpp); 4738 parseElementClose(res); 4739 return res; 4740 } 4741 4742 protected boolean parseCodeSystemPropertyComponentContent(int eventType, XmlPullParser xpp, CodeSystem owner, CodeSystem.PropertyComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4743 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 4744 res.setCodeElement(parseCode(xpp)); 4745 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uri")) { 4746 res.setUriElement(parseUri(xpp)); 4747 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 4748 res.setDescriptionElement(parseString(xpp)); 4749 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 4750 res.setTypeElement(parseEnumeration(xpp, CodeSystem.PropertyType.NULL, new CodeSystem.PropertyTypeEnumFactory())); 4751 } else if (!parseBackboneContent(eventType, xpp, res)) 4752 return false; 4753 return true; 4754 } 4755 4756 protected CodeSystem.ConceptDefinitionComponent parseCodeSystemConceptDefinitionComponent(XmlPullParser xpp, CodeSystem owner) throws XmlPullParserException, IOException, FHIRFormatError { 4757 CodeSystem.ConceptDefinitionComponent res = new CodeSystem.ConceptDefinitionComponent(); 4758 parseBackboneAttributes(xpp, res); 4759 next(xpp); 4760 int eventType = nextNoWhitespace(xpp); 4761 while (eventType != XmlPullParser.END_TAG) { 4762 if (!parseCodeSystemConceptDefinitionComponentContent(eventType, xpp, owner, res)) 4763 unknownContent(xpp); 4764 eventType = nextNoWhitespace(xpp); 4765 } 4766 next(xpp); 4767 parseElementClose(res); 4768 return res; 4769 } 4770 4771 protected boolean parseCodeSystemConceptDefinitionComponentContent(int eventType, XmlPullParser xpp, CodeSystem owner, CodeSystem.ConceptDefinitionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4772 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 4773 res.setCodeElement(parseCode(xpp)); 4774 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 4775 res.setDisplayElement(parseString(xpp)); 4776 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 4777 res.setDefinitionElement(parseString(xpp)); 4778 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("designation")) { 4779 res.getDesignation().add(parseCodeSystemConceptDefinitionDesignationComponent(xpp, owner)); 4780 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("property")) { 4781 res.getProperty().add(parseCodeSystemConceptPropertyComponent(xpp, owner)); 4782 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("concept")) { 4783 res.getConcept().add(parseCodeSystemConceptDefinitionComponent(xpp, owner)); 4784 } else if (!parseBackboneContent(eventType, xpp, res)) 4785 return false; 4786 return true; 4787 } 4788 4789 protected CodeSystem.ConceptDefinitionDesignationComponent parseCodeSystemConceptDefinitionDesignationComponent(XmlPullParser xpp, CodeSystem owner) throws XmlPullParserException, IOException, FHIRFormatError { 4790 CodeSystem.ConceptDefinitionDesignationComponent res = new CodeSystem.ConceptDefinitionDesignationComponent(); 4791 parseBackboneAttributes(xpp, res); 4792 next(xpp); 4793 int eventType = nextNoWhitespace(xpp); 4794 while (eventType != XmlPullParser.END_TAG) { 4795 if (!parseCodeSystemConceptDefinitionDesignationComponentContent(eventType, xpp, owner, res)) 4796 unknownContent(xpp); 4797 eventType = nextNoWhitespace(xpp); 4798 } 4799 next(xpp); 4800 parseElementClose(res); 4801 return res; 4802 } 4803 4804 protected boolean parseCodeSystemConceptDefinitionDesignationComponentContent(int eventType, XmlPullParser xpp, CodeSystem owner, CodeSystem.ConceptDefinitionDesignationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4805 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 4806 res.setLanguageElement(parseCode(xpp)); 4807 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 4808 res.setUse(parseCoding(xpp)); 4809 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 4810 res.setValueElement(parseString(xpp)); 4811 } else if (!parseBackboneContent(eventType, xpp, res)) 4812 return false; 4813 return true; 4814 } 4815 4816 protected CodeSystem.ConceptPropertyComponent parseCodeSystemConceptPropertyComponent(XmlPullParser xpp, CodeSystem owner) throws XmlPullParserException, IOException, FHIRFormatError { 4817 CodeSystem.ConceptPropertyComponent res = new CodeSystem.ConceptPropertyComponent(); 4818 parseBackboneAttributes(xpp, res); 4819 next(xpp); 4820 int eventType = nextNoWhitespace(xpp); 4821 while (eventType != XmlPullParser.END_TAG) { 4822 if (!parseCodeSystemConceptPropertyComponentContent(eventType, xpp, owner, res)) 4823 unknownContent(xpp); 4824 eventType = nextNoWhitespace(xpp); 4825 } 4826 next(xpp); 4827 parseElementClose(res); 4828 return res; 4829 } 4830 4831 protected boolean parseCodeSystemConceptPropertyComponentContent(int eventType, XmlPullParser xpp, CodeSystem owner, CodeSystem.ConceptPropertyComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4832 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 4833 res.setCodeElement(parseCode(xpp)); 4834 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 4835 res.setValue(parseType("value", xpp)); 4836 } else if (!parseBackboneContent(eventType, xpp, res)) 4837 return false; 4838 return true; 4839 } 4840 4841 protected Communication parseCommunication(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4842 Communication res = new Communication(); 4843 parseDomainResourceAttributes(xpp, res); 4844 next(xpp); 4845 int eventType = nextNoWhitespace(xpp); 4846 while (eventType != XmlPullParser.END_TAG) { 4847 if (!parseCommunicationContent(eventType, xpp, res)) 4848 unknownContent(xpp); 4849 eventType = nextNoWhitespace(xpp); 4850 } 4851 next(xpp); 4852 parseElementClose(res); 4853 return res; 4854 } 4855 4856 protected boolean parseCommunicationContent(int eventType, XmlPullParser xpp, Communication res) throws XmlPullParserException, IOException, FHIRFormatError { 4857 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4858 res.getIdentifier().add(parseIdentifier(xpp)); 4859 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 4860 res.getDefinition().add(parseReference(xpp)); 4861 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 4862 res.getBasedOn().add(parseReference(xpp)); 4863 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 4864 res.getPartOf().add(parseReference(xpp)); 4865 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 4866 res.setStatusElement(parseEnumeration(xpp, Communication.CommunicationStatus.NULL, new Communication.CommunicationStatusEnumFactory())); 4867 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notDone")) { 4868 res.setNotDoneElement(parseBoolean(xpp)); 4869 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notDoneReason")) { 4870 res.setNotDoneReason(parseCodeableConcept(xpp)); 4871 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 4872 res.getCategory().add(parseCodeableConcept(xpp)); 4873 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("medium")) { 4874 res.getMedium().add(parseCodeableConcept(xpp)); 4875 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 4876 res.setSubject(parseReference(xpp)); 4877 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recipient")) { 4878 res.getRecipient().add(parseReference(xpp)); 4879 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { 4880 res.getTopic().add(parseReference(xpp)); 4881 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 4882 res.setContext(parseReference(xpp)); 4883 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sent")) { 4884 res.setSentElement(parseDateTime(xpp)); 4885 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("received")) { 4886 res.setReceivedElement(parseDateTime(xpp)); 4887 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sender")) { 4888 res.setSender(parseReference(xpp)); 4889 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonCode")) { 4890 res.getReasonCode().add(parseCodeableConcept(xpp)); 4891 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonReference")) { 4892 res.getReasonReference().add(parseReference(xpp)); 4893 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payload")) { 4894 res.getPayload().add(parseCommunicationCommunicationPayloadComponent(xpp, res)); 4895 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 4896 res.getNote().add(parseAnnotation(xpp)); 4897 } else if (!parseDomainResourceContent(eventType, xpp, res)) 4898 return false; 4899 return true; 4900 } 4901 4902 protected Communication.CommunicationPayloadComponent parseCommunicationCommunicationPayloadComponent(XmlPullParser xpp, Communication owner) throws XmlPullParserException, IOException, FHIRFormatError { 4903 Communication.CommunicationPayloadComponent res = new Communication.CommunicationPayloadComponent(); 4904 parseBackboneAttributes(xpp, res); 4905 next(xpp); 4906 int eventType = nextNoWhitespace(xpp); 4907 while (eventType != XmlPullParser.END_TAG) { 4908 if (!parseCommunicationCommunicationPayloadComponentContent(eventType, xpp, owner, res)) 4909 unknownContent(xpp); 4910 eventType = nextNoWhitespace(xpp); 4911 } 4912 next(xpp); 4913 parseElementClose(res); 4914 return res; 4915 } 4916 4917 protected boolean parseCommunicationCommunicationPayloadComponentContent(int eventType, XmlPullParser xpp, Communication owner, Communication.CommunicationPayloadComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4918 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "content")) { 4919 res.setContent(parseType("content", xpp)); 4920 } else if (!parseBackboneContent(eventType, xpp, res)) 4921 return false; 4922 return true; 4923 } 4924 4925 protected CommunicationRequest parseCommunicationRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4926 CommunicationRequest res = new CommunicationRequest(); 4927 parseDomainResourceAttributes(xpp, res); 4928 next(xpp); 4929 int eventType = nextNoWhitespace(xpp); 4930 while (eventType != XmlPullParser.END_TAG) { 4931 if (!parseCommunicationRequestContent(eventType, xpp, res)) 4932 unknownContent(xpp); 4933 eventType = nextNoWhitespace(xpp); 4934 } 4935 next(xpp); 4936 parseElementClose(res); 4937 return res; 4938 } 4939 4940 protected boolean parseCommunicationRequestContent(int eventType, XmlPullParser xpp, CommunicationRequest res) throws XmlPullParserException, IOException, FHIRFormatError { 4941 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4942 res.getIdentifier().add(parseIdentifier(xpp)); 4943 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 4944 res.getBasedOn().add(parseReference(xpp)); 4945 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("replaces")) { 4946 res.getReplaces().add(parseReference(xpp)); 4947 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("groupIdentifier")) { 4948 res.setGroupIdentifier(parseIdentifier(xpp)); 4949 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 4950 res.setStatusElement(parseEnumeration(xpp, CommunicationRequest.CommunicationRequestStatus.NULL, new CommunicationRequest.CommunicationRequestStatusEnumFactory())); 4951 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 4952 res.getCategory().add(parseCodeableConcept(xpp)); 4953 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 4954 res.setPriorityElement(parseEnumeration(xpp, CommunicationRequest.CommunicationPriority.NULL, new CommunicationRequest.CommunicationPriorityEnumFactory())); 4955 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("medium")) { 4956 res.getMedium().add(parseCodeableConcept(xpp)); 4957 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 4958 res.setSubject(parseReference(xpp)); 4959 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recipient")) { 4960 res.getRecipient().add(parseReference(xpp)); 4961 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { 4962 res.getTopic().add(parseReference(xpp)); 4963 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 4964 res.setContext(parseReference(xpp)); 4965 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payload")) { 4966 res.getPayload().add(parseCommunicationRequestCommunicationRequestPayloadComponent(xpp, res)); 4967 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "occurrence")) { 4968 res.setOccurrence(parseType("occurrence", xpp)); 4969 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authoredOn")) { 4970 res.setAuthoredOnElement(parseDateTime(xpp)); 4971 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sender")) { 4972 res.setSender(parseReference(xpp)); 4973 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requester")) { 4974 res.setRequester(parseCommunicationRequestCommunicationRequestRequesterComponent(xpp, res)); 4975 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonCode")) { 4976 res.getReasonCode().add(parseCodeableConcept(xpp)); 4977 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonReference")) { 4978 res.getReasonReference().add(parseReference(xpp)); 4979 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 4980 res.getNote().add(parseAnnotation(xpp)); 4981 } else if (!parseDomainResourceContent(eventType, xpp, res)) 4982 return false; 4983 return true; 4984 } 4985 4986 protected CommunicationRequest.CommunicationRequestPayloadComponent parseCommunicationRequestCommunicationRequestPayloadComponent(XmlPullParser xpp, CommunicationRequest owner) throws XmlPullParserException, IOException, FHIRFormatError { 4987 CommunicationRequest.CommunicationRequestPayloadComponent res = new CommunicationRequest.CommunicationRequestPayloadComponent(); 4988 parseBackboneAttributes(xpp, res); 4989 next(xpp); 4990 int eventType = nextNoWhitespace(xpp); 4991 while (eventType != XmlPullParser.END_TAG) { 4992 if (!parseCommunicationRequestCommunicationRequestPayloadComponentContent(eventType, xpp, owner, res)) 4993 unknownContent(xpp); 4994 eventType = nextNoWhitespace(xpp); 4995 } 4996 next(xpp); 4997 parseElementClose(res); 4998 return res; 4999 } 5000 5001 protected boolean parseCommunicationRequestCommunicationRequestPayloadComponentContent(int eventType, XmlPullParser xpp, CommunicationRequest owner, CommunicationRequest.CommunicationRequestPayloadComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5002 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "content")) { 5003 res.setContent(parseType("content", xpp)); 5004 } else if (!parseBackboneContent(eventType, xpp, res)) 5005 return false; 5006 return true; 5007 } 5008 5009 protected CommunicationRequest.CommunicationRequestRequesterComponent parseCommunicationRequestCommunicationRequestRequesterComponent(XmlPullParser xpp, CommunicationRequest owner) throws XmlPullParserException, IOException, FHIRFormatError { 5010 CommunicationRequest.CommunicationRequestRequesterComponent res = new CommunicationRequest.CommunicationRequestRequesterComponent(); 5011 parseBackboneAttributes(xpp, res); 5012 next(xpp); 5013 int eventType = nextNoWhitespace(xpp); 5014 while (eventType != XmlPullParser.END_TAG) { 5015 if (!parseCommunicationRequestCommunicationRequestRequesterComponentContent(eventType, xpp, owner, res)) 5016 unknownContent(xpp); 5017 eventType = nextNoWhitespace(xpp); 5018 } 5019 next(xpp); 5020 parseElementClose(res); 5021 return res; 5022 } 5023 5024 protected boolean parseCommunicationRequestCommunicationRequestRequesterComponentContent(int eventType, XmlPullParser xpp, CommunicationRequest owner, CommunicationRequest.CommunicationRequestRequesterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5025 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { 5026 res.setAgent(parseReference(xpp)); 5027 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onBehalfOf")) { 5028 res.setOnBehalfOf(parseReference(xpp)); 5029 } else if (!parseBackboneContent(eventType, xpp, res)) 5030 return false; 5031 return true; 5032 } 5033 5034 protected CompartmentDefinition parseCompartmentDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5035 CompartmentDefinition res = new CompartmentDefinition(); 5036 parseDomainResourceAttributes(xpp, res); 5037 next(xpp); 5038 int eventType = nextNoWhitespace(xpp); 5039 while (eventType != XmlPullParser.END_TAG) { 5040 if (!parseCompartmentDefinitionContent(eventType, xpp, res)) 5041 unknownContent(xpp); 5042 eventType = nextNoWhitespace(xpp); 5043 } 5044 next(xpp); 5045 parseElementClose(res); 5046 return res; 5047 } 5048 5049 protected boolean parseCompartmentDefinitionContent(int eventType, XmlPullParser xpp, CompartmentDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 5050 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 5051 res.setUrlElement(parseUri(xpp)); 5052 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 5053 res.setNameElement(parseString(xpp)); 5054 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 5055 res.setTitleElement(parseString(xpp)); 5056 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 5057 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 5058 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 5059 res.setExperimentalElement(parseBoolean(xpp)); 5060 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 5061 res.setDateElement(parseDateTime(xpp)); 5062 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 5063 res.setPublisherElement(parseString(xpp)); 5064 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 5065 res.getContact().add(parseContactDetail(xpp)); 5066 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 5067 res.setDescriptionElement(parseMarkdown(xpp)); 5068 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 5069 res.setPurposeElement(parseMarkdown(xpp)); 5070 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 5071 res.getUseContext().add(parseUsageContext(xpp)); 5072 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 5073 res.getJurisdiction().add(parseCodeableConcept(xpp)); 5074 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 5075 res.setCodeElement(parseEnumeration(xpp, CompartmentDefinition.CompartmentType.NULL, new CompartmentDefinition.CompartmentTypeEnumFactory())); 5076 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("search")) { 5077 res.setSearchElement(parseBoolean(xpp)); 5078 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 5079 res.getResource().add(parseCompartmentDefinitionCompartmentDefinitionResourceComponent(xpp, res)); 5080 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5081 return false; 5082 return true; 5083 } 5084 5085 protected CompartmentDefinition.CompartmentDefinitionResourceComponent parseCompartmentDefinitionCompartmentDefinitionResourceComponent(XmlPullParser xpp, CompartmentDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 5086 CompartmentDefinition.CompartmentDefinitionResourceComponent res = new CompartmentDefinition.CompartmentDefinitionResourceComponent(); 5087 parseBackboneAttributes(xpp, res); 5088 next(xpp); 5089 int eventType = nextNoWhitespace(xpp); 5090 while (eventType != XmlPullParser.END_TAG) { 5091 if (!parseCompartmentDefinitionCompartmentDefinitionResourceComponentContent(eventType, xpp, owner, res)) 5092 unknownContent(xpp); 5093 eventType = nextNoWhitespace(xpp); 5094 } 5095 next(xpp); 5096 parseElementClose(res); 5097 return res; 5098 } 5099 5100 protected boolean parseCompartmentDefinitionCompartmentDefinitionResourceComponentContent(int eventType, XmlPullParser xpp, CompartmentDefinition owner, CompartmentDefinition.CompartmentDefinitionResourceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5101 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 5102 res.setCodeElement(parseCode(xpp)); 5103 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("param")) { 5104 res.getParam().add(parseString(xpp)); 5105 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 5106 res.setDocumentationElement(parseString(xpp)); 5107 } else if (!parseBackboneContent(eventType, xpp, res)) 5108 return false; 5109 return true; 5110 } 5111 5112 protected Composition parseComposition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5113 Composition res = new Composition(); 5114 parseDomainResourceAttributes(xpp, res); 5115 next(xpp); 5116 int eventType = nextNoWhitespace(xpp); 5117 while (eventType != XmlPullParser.END_TAG) { 5118 if (!parseCompositionContent(eventType, xpp, res)) 5119 unknownContent(xpp); 5120 eventType = nextNoWhitespace(xpp); 5121 } 5122 next(xpp); 5123 parseElementClose(res); 5124 return res; 5125 } 5126 5127 protected boolean parseCompositionContent(int eventType, XmlPullParser xpp, Composition res) throws XmlPullParserException, IOException, FHIRFormatError { 5128 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5129 res.setIdentifier(parseIdentifier(xpp)); 5130 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 5131 res.setStatusElement(parseEnumeration(xpp, Composition.CompositionStatus.NULL, new Composition.CompositionStatusEnumFactory())); 5132 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 5133 res.setType(parseCodeableConcept(xpp)); 5134 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("class")) { 5135 res.setClass_(parseCodeableConcept(xpp)); 5136 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 5137 res.setSubject(parseReference(xpp)); 5138 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 5139 res.setEncounter(parseReference(xpp)); 5140 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 5141 res.setDateElement(parseDateTime(xpp)); 5142 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 5143 res.getAuthor().add(parseReference(xpp)); 5144 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 5145 res.setTitleElement(parseString(xpp)); 5146 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("confidentiality")) { 5147 res.setConfidentialityElement(parseEnumeration(xpp, Composition.DocumentConfidentiality.NULL, new Composition.DocumentConfidentialityEnumFactory())); 5148 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("attester")) { 5149 res.getAttester().add(parseCompositionCompositionAttesterComponent(xpp, res)); 5150 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("custodian")) { 5151 res.setCustodian(parseReference(xpp)); 5152 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatesTo")) { 5153 res.getRelatesTo().add(parseCompositionCompositionRelatesToComponent(xpp, res)); 5154 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 5155 res.getEvent().add(parseCompositionCompositionEventComponent(xpp, res)); 5156 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("section")) { 5157 res.getSection().add(parseCompositionSectionComponent(xpp, res)); 5158 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5159 return false; 5160 return true; 5161 } 5162 5163 protected Composition.CompositionAttesterComponent parseCompositionCompositionAttesterComponent(XmlPullParser xpp, Composition owner) throws XmlPullParserException, IOException, FHIRFormatError { 5164 Composition.CompositionAttesterComponent res = new Composition.CompositionAttesterComponent(); 5165 parseBackboneAttributes(xpp, res); 5166 next(xpp); 5167 int eventType = nextNoWhitespace(xpp); 5168 while (eventType != XmlPullParser.END_TAG) { 5169 if (!parseCompositionCompositionAttesterComponentContent(eventType, xpp, owner, res)) 5170 unknownContent(xpp); 5171 eventType = nextNoWhitespace(xpp); 5172 } 5173 next(xpp); 5174 parseElementClose(res); 5175 return res; 5176 } 5177 5178 protected boolean parseCompositionCompositionAttesterComponentContent(int eventType, XmlPullParser xpp, Composition owner, Composition.CompositionAttesterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5179 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 5180 res.getMode().add(parseEnumeration(xpp, Composition.CompositionAttestationMode.NULL, new Composition.CompositionAttestationModeEnumFactory())); 5181 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("time")) { 5182 res.setTimeElement(parseDateTime(xpp)); 5183 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("party")) { 5184 res.setParty(parseReference(xpp)); 5185 } else if (!parseBackboneContent(eventType, xpp, res)) 5186 return false; 5187 return true; 5188 } 5189 5190 protected Composition.CompositionRelatesToComponent parseCompositionCompositionRelatesToComponent(XmlPullParser xpp, Composition owner) throws XmlPullParserException, IOException, FHIRFormatError { 5191 Composition.CompositionRelatesToComponent res = new Composition.CompositionRelatesToComponent(); 5192 parseBackboneAttributes(xpp, res); 5193 next(xpp); 5194 int eventType = nextNoWhitespace(xpp); 5195 while (eventType != XmlPullParser.END_TAG) { 5196 if (!parseCompositionCompositionRelatesToComponentContent(eventType, xpp, owner, res)) 5197 unknownContent(xpp); 5198 eventType = nextNoWhitespace(xpp); 5199 } 5200 next(xpp); 5201 parseElementClose(res); 5202 return res; 5203 } 5204 5205 protected boolean parseCompositionCompositionRelatesToComponentContent(int eventType, XmlPullParser xpp, Composition owner, Composition.CompositionRelatesToComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5206 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 5207 res.setCodeElement(parseEnumeration(xpp, Composition.DocumentRelationshipType.NULL, new Composition.DocumentRelationshipTypeEnumFactory())); 5208 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "target")) { 5209 res.setTarget(parseType("target", xpp)); 5210 } else if (!parseBackboneContent(eventType, xpp, res)) 5211 return false; 5212 return true; 5213 } 5214 5215 protected Composition.CompositionEventComponent parseCompositionCompositionEventComponent(XmlPullParser xpp, Composition owner) throws XmlPullParserException, IOException, FHIRFormatError { 5216 Composition.CompositionEventComponent res = new Composition.CompositionEventComponent(); 5217 parseBackboneAttributes(xpp, res); 5218 next(xpp); 5219 int eventType = nextNoWhitespace(xpp); 5220 while (eventType != XmlPullParser.END_TAG) { 5221 if (!parseCompositionCompositionEventComponentContent(eventType, xpp, owner, res)) 5222 unknownContent(xpp); 5223 eventType = nextNoWhitespace(xpp); 5224 } 5225 next(xpp); 5226 parseElementClose(res); 5227 return res; 5228 } 5229 5230 protected boolean parseCompositionCompositionEventComponentContent(int eventType, XmlPullParser xpp, Composition owner, Composition.CompositionEventComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5231 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 5232 res.getCode().add(parseCodeableConcept(xpp)); 5233 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 5234 res.setPeriod(parsePeriod(xpp)); 5235 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 5236 res.getDetail().add(parseReference(xpp)); 5237 } else if (!parseBackboneContent(eventType, xpp, res)) 5238 return false; 5239 return true; 5240 } 5241 5242 protected Composition.SectionComponent parseCompositionSectionComponent(XmlPullParser xpp, Composition owner) throws XmlPullParserException, IOException, FHIRFormatError { 5243 Composition.SectionComponent res = new Composition.SectionComponent(); 5244 parseBackboneAttributes(xpp, res); 5245 next(xpp); 5246 int eventType = nextNoWhitespace(xpp); 5247 while (eventType != XmlPullParser.END_TAG) { 5248 if (!parseCompositionSectionComponentContent(eventType, xpp, owner, res)) 5249 unknownContent(xpp); 5250 eventType = nextNoWhitespace(xpp); 5251 } 5252 next(xpp); 5253 parseElementClose(res); 5254 return res; 5255 } 5256 5257 protected boolean parseCompositionSectionComponentContent(int eventType, XmlPullParser xpp, Composition owner, Composition.SectionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5258 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 5259 res.setTitleElement(parseString(xpp)); 5260 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 5261 res.setCode(parseCodeableConcept(xpp)); 5262 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 5263 res.setText(parseNarrative(xpp)); 5264 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 5265 res.setModeElement(parseEnumeration(xpp, Composition.SectionMode.NULL, new Composition.SectionModeEnumFactory())); 5266 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orderedBy")) { 5267 res.setOrderedBy(parseCodeableConcept(xpp)); 5268 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entry")) { 5269 res.getEntry().add(parseReference(xpp)); 5270 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("emptyReason")) { 5271 res.setEmptyReason(parseCodeableConcept(xpp)); 5272 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("section")) { 5273 res.getSection().add(parseCompositionSectionComponent(xpp, owner)); 5274 } else if (!parseBackboneContent(eventType, xpp, res)) 5275 return false; 5276 return true; 5277 } 5278 5279 protected ConceptMap parseConceptMap(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5280 ConceptMap res = new ConceptMap(); 5281 parseDomainResourceAttributes(xpp, res); 5282 next(xpp); 5283 int eventType = nextNoWhitespace(xpp); 5284 while (eventType != XmlPullParser.END_TAG) { 5285 if (!parseConceptMapContent(eventType, xpp, res)) 5286 unknownContent(xpp); 5287 eventType = nextNoWhitespace(xpp); 5288 } 5289 next(xpp); 5290 parseElementClose(res); 5291 return res; 5292 } 5293 5294 protected boolean parseConceptMapContent(int eventType, XmlPullParser xpp, ConceptMap res) throws XmlPullParserException, IOException, FHIRFormatError { 5295 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 5296 res.setUrlElement(parseUri(xpp)); 5297 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5298 res.setIdentifier(parseIdentifier(xpp)); 5299 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 5300 res.setVersionElement(parseString(xpp)); 5301 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 5302 res.setNameElement(parseString(xpp)); 5303 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 5304 res.setTitleElement(parseString(xpp)); 5305 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 5306 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 5307 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 5308 res.setExperimentalElement(parseBoolean(xpp)); 5309 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 5310 res.setDateElement(parseDateTime(xpp)); 5311 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 5312 res.setPublisherElement(parseString(xpp)); 5313 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 5314 res.getContact().add(parseContactDetail(xpp)); 5315 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 5316 res.setDescriptionElement(parseMarkdown(xpp)); 5317 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 5318 res.getUseContext().add(parseUsageContext(xpp)); 5319 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 5320 res.getJurisdiction().add(parseCodeableConcept(xpp)); 5321 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 5322 res.setPurposeElement(parseMarkdown(xpp)); 5323 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 5324 res.setCopyrightElement(parseMarkdown(xpp)); 5325 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "source")) { 5326 res.setSource(parseType("source", xpp)); 5327 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "target")) { 5328 res.setTarget(parseType("target", xpp)); 5329 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("group")) { 5330 res.getGroup().add(parseConceptMapConceptMapGroupComponent(xpp, res)); 5331 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5332 return false; 5333 return true; 5334 } 5335 5336 protected ConceptMap.ConceptMapGroupComponent parseConceptMapConceptMapGroupComponent(XmlPullParser xpp, ConceptMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 5337 ConceptMap.ConceptMapGroupComponent res = new ConceptMap.ConceptMapGroupComponent(); 5338 parseBackboneAttributes(xpp, res); 5339 next(xpp); 5340 int eventType = nextNoWhitespace(xpp); 5341 while (eventType != XmlPullParser.END_TAG) { 5342 if (!parseConceptMapConceptMapGroupComponentContent(eventType, xpp, owner, res)) 5343 unknownContent(xpp); 5344 eventType = nextNoWhitespace(xpp); 5345 } 5346 next(xpp); 5347 parseElementClose(res); 5348 return res; 5349 } 5350 5351 protected boolean parseConceptMapConceptMapGroupComponentContent(int eventType, XmlPullParser xpp, ConceptMap owner, ConceptMap.ConceptMapGroupComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5352 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 5353 res.setSourceElement(parseUri(xpp)); 5354 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sourceVersion")) { 5355 res.setSourceVersionElement(parseString(xpp)); 5356 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 5357 res.setTargetElement(parseUri(xpp)); 5358 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("targetVersion")) { 5359 res.setTargetVersionElement(parseString(xpp)); 5360 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("element")) { 5361 res.getElement().add(parseConceptMapSourceElementComponent(xpp, owner)); 5362 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unmapped")) { 5363 res.setUnmapped(parseConceptMapConceptMapGroupUnmappedComponent(xpp, owner)); 5364 } else if (!parseBackboneContent(eventType, xpp, res)) 5365 return false; 5366 return true; 5367 } 5368 5369 protected ConceptMap.SourceElementComponent parseConceptMapSourceElementComponent(XmlPullParser xpp, ConceptMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 5370 ConceptMap.SourceElementComponent res = new ConceptMap.SourceElementComponent(); 5371 parseBackboneAttributes(xpp, res); 5372 next(xpp); 5373 int eventType = nextNoWhitespace(xpp); 5374 while (eventType != XmlPullParser.END_TAG) { 5375 if (!parseConceptMapSourceElementComponentContent(eventType, xpp, owner, res)) 5376 unknownContent(xpp); 5377 eventType = nextNoWhitespace(xpp); 5378 } 5379 next(xpp); 5380 parseElementClose(res); 5381 return res; 5382 } 5383 5384 protected boolean parseConceptMapSourceElementComponentContent(int eventType, XmlPullParser xpp, ConceptMap owner, ConceptMap.SourceElementComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5385 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 5386 res.setCodeElement(parseCode(xpp)); 5387 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 5388 res.setDisplayElement(parseString(xpp)); 5389 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 5390 res.getTarget().add(parseConceptMapTargetElementComponent(xpp, owner)); 5391 } else if (!parseBackboneContent(eventType, xpp, res)) 5392 return false; 5393 return true; 5394 } 5395 5396 protected ConceptMap.TargetElementComponent parseConceptMapTargetElementComponent(XmlPullParser xpp, ConceptMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 5397 ConceptMap.TargetElementComponent res = new ConceptMap.TargetElementComponent(); 5398 parseBackboneAttributes(xpp, res); 5399 next(xpp); 5400 int eventType = nextNoWhitespace(xpp); 5401 while (eventType != XmlPullParser.END_TAG) { 5402 if (!parseConceptMapTargetElementComponentContent(eventType, xpp, owner, res)) 5403 unknownContent(xpp); 5404 eventType = nextNoWhitespace(xpp); 5405 } 5406 next(xpp); 5407 parseElementClose(res); 5408 return res; 5409 } 5410 5411 protected boolean parseConceptMapTargetElementComponentContent(int eventType, XmlPullParser xpp, ConceptMap owner, ConceptMap.TargetElementComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5412 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 5413 res.setCodeElement(parseCode(xpp)); 5414 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 5415 res.setDisplayElement(parseString(xpp)); 5416 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("equivalence")) { 5417 res.setEquivalenceElement(parseEnumeration(xpp, Enumerations.ConceptMapEquivalence.NULL, new Enumerations.ConceptMapEquivalenceEnumFactory())); 5418 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 5419 res.setCommentElement(parseString(xpp)); 5420 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dependsOn")) { 5421 res.getDependsOn().add(parseConceptMapOtherElementComponent(xpp, owner)); 5422 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("product")) { 5423 res.getProduct().add(parseConceptMapOtherElementComponent(xpp, owner)); 5424 } else if (!parseBackboneContent(eventType, xpp, res)) 5425 return false; 5426 return true; 5427 } 5428 5429 protected ConceptMap.OtherElementComponent parseConceptMapOtherElementComponent(XmlPullParser xpp, ConceptMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 5430 ConceptMap.OtherElementComponent res = new ConceptMap.OtherElementComponent(); 5431 parseBackboneAttributes(xpp, res); 5432 next(xpp); 5433 int eventType = nextNoWhitespace(xpp); 5434 while (eventType != XmlPullParser.END_TAG) { 5435 if (!parseConceptMapOtherElementComponentContent(eventType, xpp, owner, res)) 5436 unknownContent(xpp); 5437 eventType = nextNoWhitespace(xpp); 5438 } 5439 next(xpp); 5440 parseElementClose(res); 5441 return res; 5442 } 5443 5444 protected boolean parseConceptMapOtherElementComponentContent(int eventType, XmlPullParser xpp, ConceptMap owner, ConceptMap.OtherElementComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5445 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("property")) { 5446 res.setPropertyElement(parseUri(xpp)); 5447 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 5448 res.setSystemElement(parseUri(xpp)); 5449 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 5450 res.setCodeElement(parseString(xpp)); 5451 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 5452 res.setDisplayElement(parseString(xpp)); 5453 } else if (!parseBackboneContent(eventType, xpp, res)) 5454 return false; 5455 return true; 5456 } 5457 5458 protected ConceptMap.ConceptMapGroupUnmappedComponent parseConceptMapConceptMapGroupUnmappedComponent(XmlPullParser xpp, ConceptMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 5459 ConceptMap.ConceptMapGroupUnmappedComponent res = new ConceptMap.ConceptMapGroupUnmappedComponent(); 5460 parseBackboneAttributes(xpp, res); 5461 next(xpp); 5462 int eventType = nextNoWhitespace(xpp); 5463 while (eventType != XmlPullParser.END_TAG) { 5464 if (!parseConceptMapConceptMapGroupUnmappedComponentContent(eventType, xpp, owner, res)) 5465 unknownContent(xpp); 5466 eventType = nextNoWhitespace(xpp); 5467 } 5468 next(xpp); 5469 parseElementClose(res); 5470 return res; 5471 } 5472 5473 protected boolean parseConceptMapConceptMapGroupUnmappedComponentContent(int eventType, XmlPullParser xpp, ConceptMap owner, ConceptMap.ConceptMapGroupUnmappedComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5474 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 5475 res.setModeElement(parseEnumeration(xpp, ConceptMap.ConceptMapGroupUnmappedMode.NULL, new ConceptMap.ConceptMapGroupUnmappedModeEnumFactory())); 5476 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 5477 res.setCodeElement(parseCode(xpp)); 5478 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 5479 res.setDisplayElement(parseString(xpp)); 5480 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 5481 res.setUrlElement(parseUri(xpp)); 5482 } else if (!parseBackboneContent(eventType, xpp, res)) 5483 return false; 5484 return true; 5485 } 5486 5487 protected Condition parseCondition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5488 Condition res = new Condition(); 5489 parseDomainResourceAttributes(xpp, res); 5490 next(xpp); 5491 int eventType = nextNoWhitespace(xpp); 5492 while (eventType != XmlPullParser.END_TAG) { 5493 if (!parseConditionContent(eventType, xpp, res)) 5494 unknownContent(xpp); 5495 eventType = nextNoWhitespace(xpp); 5496 } 5497 next(xpp); 5498 parseElementClose(res); 5499 return res; 5500 } 5501 5502 protected boolean parseConditionContent(int eventType, XmlPullParser xpp, Condition res) throws XmlPullParserException, IOException, FHIRFormatError { 5503 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5504 res.getIdentifier().add(parseIdentifier(xpp)); 5505 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("clinicalStatus")) { 5506 res.setClinicalStatusElement(parseEnumeration(xpp, Condition.ConditionClinicalStatus.NULL, new Condition.ConditionClinicalStatusEnumFactory())); 5507 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("verificationStatus")) { 5508 res.setVerificationStatusElement(parseEnumeration(xpp, Condition.ConditionVerificationStatus.NULL, new Condition.ConditionVerificationStatusEnumFactory())); 5509 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 5510 res.getCategory().add(parseCodeableConcept(xpp)); 5511 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("severity")) { 5512 res.setSeverity(parseCodeableConcept(xpp)); 5513 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 5514 res.setCode(parseCodeableConcept(xpp)); 5515 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 5516 res.getBodySite().add(parseCodeableConcept(xpp)); 5517 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 5518 res.setSubject(parseReference(xpp)); 5519 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 5520 res.setContext(parseReference(xpp)); 5521 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "onset")) { 5522 res.setOnset(parseType("onset", xpp)); 5523 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "abatement")) { 5524 res.setAbatement(parseType("abatement", xpp)); 5525 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assertedDate")) { 5526 res.setAssertedDateElement(parseDateTime(xpp)); 5527 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("asserter")) { 5528 res.setAsserter(parseReference(xpp)); 5529 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("stage")) { 5530 res.setStage(parseConditionConditionStageComponent(xpp, res)); 5531 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("evidence")) { 5532 res.getEvidence().add(parseConditionConditionEvidenceComponent(xpp, res)); 5533 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 5534 res.getNote().add(parseAnnotation(xpp)); 5535 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5536 return false; 5537 return true; 5538 } 5539 5540 protected Condition.ConditionStageComponent parseConditionConditionStageComponent(XmlPullParser xpp, Condition owner) throws XmlPullParserException, IOException, FHIRFormatError { 5541 Condition.ConditionStageComponent res = new Condition.ConditionStageComponent(); 5542 parseBackboneAttributes(xpp, res); 5543 next(xpp); 5544 int eventType = nextNoWhitespace(xpp); 5545 while (eventType != XmlPullParser.END_TAG) { 5546 if (!parseConditionConditionStageComponentContent(eventType, xpp, owner, res)) 5547 unknownContent(xpp); 5548 eventType = nextNoWhitespace(xpp); 5549 } 5550 next(xpp); 5551 parseElementClose(res); 5552 return res; 5553 } 5554 5555 protected boolean parseConditionConditionStageComponentContent(int eventType, XmlPullParser xpp, Condition owner, Condition.ConditionStageComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5556 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("summary")) { 5557 res.setSummary(parseCodeableConcept(xpp)); 5558 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assessment")) { 5559 res.getAssessment().add(parseReference(xpp)); 5560 } else if (!parseBackboneContent(eventType, xpp, res)) 5561 return false; 5562 return true; 5563 } 5564 5565 protected Condition.ConditionEvidenceComponent parseConditionConditionEvidenceComponent(XmlPullParser xpp, Condition owner) throws XmlPullParserException, IOException, FHIRFormatError { 5566 Condition.ConditionEvidenceComponent res = new Condition.ConditionEvidenceComponent(); 5567 parseBackboneAttributes(xpp, res); 5568 next(xpp); 5569 int eventType = nextNoWhitespace(xpp); 5570 while (eventType != XmlPullParser.END_TAG) { 5571 if (!parseConditionConditionEvidenceComponentContent(eventType, xpp, owner, res)) 5572 unknownContent(xpp); 5573 eventType = nextNoWhitespace(xpp); 5574 } 5575 next(xpp); 5576 parseElementClose(res); 5577 return res; 5578 } 5579 5580 protected boolean parseConditionConditionEvidenceComponentContent(int eventType, XmlPullParser xpp, Condition owner, Condition.ConditionEvidenceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5581 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 5582 res.getCode().add(parseCodeableConcept(xpp)); 5583 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 5584 res.getDetail().add(parseReference(xpp)); 5585 } else if (!parseBackboneContent(eventType, xpp, res)) 5586 return false; 5587 return true; 5588 } 5589 5590 protected Consent parseConsent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5591 Consent res = new Consent(); 5592 parseDomainResourceAttributes(xpp, res); 5593 next(xpp); 5594 int eventType = nextNoWhitespace(xpp); 5595 while (eventType != XmlPullParser.END_TAG) { 5596 if (!parseConsentContent(eventType, xpp, res)) 5597 unknownContent(xpp); 5598 eventType = nextNoWhitespace(xpp); 5599 } 5600 next(xpp); 5601 parseElementClose(res); 5602 return res; 5603 } 5604 5605 protected boolean parseConsentContent(int eventType, XmlPullParser xpp, Consent res) throws XmlPullParserException, IOException, FHIRFormatError { 5606 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5607 res.setIdentifier(parseIdentifier(xpp)); 5608 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 5609 res.setStatusElement(parseEnumeration(xpp, Consent.ConsentState.NULL, new Consent.ConsentStateEnumFactory())); 5610 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 5611 res.getCategory().add(parseCodeableConcept(xpp)); 5612 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 5613 res.setPatient(parseReference(xpp)); 5614 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 5615 res.setPeriod(parsePeriod(xpp)); 5616 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateTime")) { 5617 res.setDateTimeElement(parseDateTime(xpp)); 5618 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("consentingParty")) { 5619 res.getConsentingParty().add(parseReference(xpp)); 5620 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 5621 res.getActor().add(parseConsentConsentActorComponent(xpp, res)); 5622 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 5623 res.getAction().add(parseCodeableConcept(xpp)); 5624 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 5625 res.getOrganization().add(parseReference(xpp)); 5626 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "source")) { 5627 res.setSource(parseType("source", xpp)); 5628 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("policy")) { 5629 res.getPolicy().add(parseConsentConsentPolicyComponent(xpp, res)); 5630 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("policyRule")) { 5631 res.setPolicyRuleElement(parseUri(xpp)); 5632 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("securityLabel")) { 5633 res.getSecurityLabel().add(parseCoding(xpp)); 5634 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 5635 res.getPurpose().add(parseCoding(xpp)); 5636 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dataPeriod")) { 5637 res.setDataPeriod(parsePeriod(xpp)); 5638 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("data")) { 5639 res.getData().add(parseConsentConsentDataComponent(xpp, res)); 5640 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("except")) { 5641 res.getExcept().add(parseConsentExceptComponent(xpp, res)); 5642 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5643 return false; 5644 return true; 5645 } 5646 5647 protected Consent.ConsentActorComponent parseConsentConsentActorComponent(XmlPullParser xpp, Consent owner) throws XmlPullParserException, IOException, FHIRFormatError { 5648 Consent.ConsentActorComponent res = new Consent.ConsentActorComponent(); 5649 parseBackboneAttributes(xpp, res); 5650 next(xpp); 5651 int eventType = nextNoWhitespace(xpp); 5652 while (eventType != XmlPullParser.END_TAG) { 5653 if (!parseConsentConsentActorComponentContent(eventType, xpp, owner, res)) 5654 unknownContent(xpp); 5655 eventType = nextNoWhitespace(xpp); 5656 } 5657 next(xpp); 5658 parseElementClose(res); 5659 return res; 5660 } 5661 5662 protected boolean parseConsentConsentActorComponentContent(int eventType, XmlPullParser xpp, Consent owner, Consent.ConsentActorComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5663 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 5664 res.setRole(parseCodeableConcept(xpp)); 5665 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 5666 res.setReference(parseReference(xpp)); 5667 } else if (!parseBackboneContent(eventType, xpp, res)) 5668 return false; 5669 return true; 5670 } 5671 5672 protected Consent.ConsentPolicyComponent parseConsentConsentPolicyComponent(XmlPullParser xpp, Consent owner) throws XmlPullParserException, IOException, FHIRFormatError { 5673 Consent.ConsentPolicyComponent res = new Consent.ConsentPolicyComponent(); 5674 parseBackboneAttributes(xpp, res); 5675 next(xpp); 5676 int eventType = nextNoWhitespace(xpp); 5677 while (eventType != XmlPullParser.END_TAG) { 5678 if (!parseConsentConsentPolicyComponentContent(eventType, xpp, owner, res)) 5679 unknownContent(xpp); 5680 eventType = nextNoWhitespace(xpp); 5681 } 5682 next(xpp); 5683 parseElementClose(res); 5684 return res; 5685 } 5686 5687 protected boolean parseConsentConsentPolicyComponentContent(int eventType, XmlPullParser xpp, Consent owner, Consent.ConsentPolicyComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5688 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authority")) { 5689 res.setAuthorityElement(parseUri(xpp)); 5690 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uri")) { 5691 res.setUriElement(parseUri(xpp)); 5692 } else if (!parseBackboneContent(eventType, xpp, res)) 5693 return false; 5694 return true; 5695 } 5696 5697 protected Consent.ConsentDataComponent parseConsentConsentDataComponent(XmlPullParser xpp, Consent owner) throws XmlPullParserException, IOException, FHIRFormatError { 5698 Consent.ConsentDataComponent res = new Consent.ConsentDataComponent(); 5699 parseBackboneAttributes(xpp, res); 5700 next(xpp); 5701 int eventType = nextNoWhitespace(xpp); 5702 while (eventType != XmlPullParser.END_TAG) { 5703 if (!parseConsentConsentDataComponentContent(eventType, xpp, owner, res)) 5704 unknownContent(xpp); 5705 eventType = nextNoWhitespace(xpp); 5706 } 5707 next(xpp); 5708 parseElementClose(res); 5709 return res; 5710 } 5711 5712 protected boolean parseConsentConsentDataComponentContent(int eventType, XmlPullParser xpp, Consent owner, Consent.ConsentDataComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5713 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("meaning")) { 5714 res.setMeaningElement(parseEnumeration(xpp, Consent.ConsentDataMeaning.NULL, new Consent.ConsentDataMeaningEnumFactory())); 5715 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 5716 res.setReference(parseReference(xpp)); 5717 } else if (!parseBackboneContent(eventType, xpp, res)) 5718 return false; 5719 return true; 5720 } 5721 5722 protected Consent.ExceptComponent parseConsentExceptComponent(XmlPullParser xpp, Consent owner) throws XmlPullParserException, IOException, FHIRFormatError { 5723 Consent.ExceptComponent res = new Consent.ExceptComponent(); 5724 parseBackboneAttributes(xpp, res); 5725 next(xpp); 5726 int eventType = nextNoWhitespace(xpp); 5727 while (eventType != XmlPullParser.END_TAG) { 5728 if (!parseConsentExceptComponentContent(eventType, xpp, owner, res)) 5729 unknownContent(xpp); 5730 eventType = nextNoWhitespace(xpp); 5731 } 5732 next(xpp); 5733 parseElementClose(res); 5734 return res; 5735 } 5736 5737 protected boolean parseConsentExceptComponentContent(int eventType, XmlPullParser xpp, Consent owner, Consent.ExceptComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5738 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 5739 res.setTypeElement(parseEnumeration(xpp, Consent.ConsentExceptType.NULL, new Consent.ConsentExceptTypeEnumFactory())); 5740 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 5741 res.setPeriod(parsePeriod(xpp)); 5742 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 5743 res.getActor().add(parseConsentExceptActorComponent(xpp, owner)); 5744 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 5745 res.getAction().add(parseCodeableConcept(xpp)); 5746 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("securityLabel")) { 5747 res.getSecurityLabel().add(parseCoding(xpp)); 5748 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 5749 res.getPurpose().add(parseCoding(xpp)); 5750 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("class")) { 5751 res.getClass_().add(parseCoding(xpp)); 5752 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 5753 res.getCode().add(parseCoding(xpp)); 5754 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dataPeriod")) { 5755 res.setDataPeriod(parsePeriod(xpp)); 5756 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("data")) { 5757 res.getData().add(parseConsentExceptDataComponent(xpp, owner)); 5758 } else if (!parseBackboneContent(eventType, xpp, res)) 5759 return false; 5760 return true; 5761 } 5762 5763 protected Consent.ExceptActorComponent parseConsentExceptActorComponent(XmlPullParser xpp, Consent owner) throws XmlPullParserException, IOException, FHIRFormatError { 5764 Consent.ExceptActorComponent res = new Consent.ExceptActorComponent(); 5765 parseBackboneAttributes(xpp, res); 5766 next(xpp); 5767 int eventType = nextNoWhitespace(xpp); 5768 while (eventType != XmlPullParser.END_TAG) { 5769 if (!parseConsentExceptActorComponentContent(eventType, xpp, owner, res)) 5770 unknownContent(xpp); 5771 eventType = nextNoWhitespace(xpp); 5772 } 5773 next(xpp); 5774 parseElementClose(res); 5775 return res; 5776 } 5777 5778 protected boolean parseConsentExceptActorComponentContent(int eventType, XmlPullParser xpp, Consent owner, Consent.ExceptActorComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5779 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 5780 res.setRole(parseCodeableConcept(xpp)); 5781 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 5782 res.setReference(parseReference(xpp)); 5783 } else if (!parseBackboneContent(eventType, xpp, res)) 5784 return false; 5785 return true; 5786 } 5787 5788 protected Consent.ExceptDataComponent parseConsentExceptDataComponent(XmlPullParser xpp, Consent owner) throws XmlPullParserException, IOException, FHIRFormatError { 5789 Consent.ExceptDataComponent res = new Consent.ExceptDataComponent(); 5790 parseBackboneAttributes(xpp, res); 5791 next(xpp); 5792 int eventType = nextNoWhitespace(xpp); 5793 while (eventType != XmlPullParser.END_TAG) { 5794 if (!parseConsentExceptDataComponentContent(eventType, xpp, owner, res)) 5795 unknownContent(xpp); 5796 eventType = nextNoWhitespace(xpp); 5797 } 5798 next(xpp); 5799 parseElementClose(res); 5800 return res; 5801 } 5802 5803 protected boolean parseConsentExceptDataComponentContent(int eventType, XmlPullParser xpp, Consent owner, Consent.ExceptDataComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5804 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("meaning")) { 5805 res.setMeaningElement(parseEnumeration(xpp, Consent.ConsentDataMeaning.NULL, new Consent.ConsentDataMeaningEnumFactory())); 5806 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 5807 res.setReference(parseReference(xpp)); 5808 } else if (!parseBackboneContent(eventType, xpp, res)) 5809 return false; 5810 return true; 5811 } 5812 5813 protected Contract parseContract(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5814 Contract res = new Contract(); 5815 parseDomainResourceAttributes(xpp, res); 5816 next(xpp); 5817 int eventType = nextNoWhitespace(xpp); 5818 while (eventType != XmlPullParser.END_TAG) { 5819 if (!parseContractContent(eventType, xpp, res)) 5820 unknownContent(xpp); 5821 eventType = nextNoWhitespace(xpp); 5822 } 5823 next(xpp); 5824 parseElementClose(res); 5825 return res; 5826 } 5827 5828 protected boolean parseContractContent(int eventType, XmlPullParser xpp, Contract res) throws XmlPullParserException, IOException, FHIRFormatError { 5829 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5830 res.setIdentifier(parseIdentifier(xpp)); 5831 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 5832 res.setStatusElement(parseEnumeration(xpp, Contract.ContractStatus.NULL, new Contract.ContractStatusEnumFactory())); 5833 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issued")) { 5834 res.setIssuedElement(parseDateTime(xpp)); 5835 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("applies")) { 5836 res.setApplies(parsePeriod(xpp)); 5837 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 5838 res.getSubject().add(parseReference(xpp)); 5839 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { 5840 res.getTopic().add(parseReference(xpp)); 5841 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authority")) { 5842 res.getAuthority().add(parseReference(xpp)); 5843 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("domain")) { 5844 res.getDomain().add(parseReference(xpp)); 5845 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 5846 res.setType(parseCodeableConcept(xpp)); 5847 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subType")) { 5848 res.getSubType().add(parseCodeableConcept(xpp)); 5849 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 5850 res.getAction().add(parseCodeableConcept(xpp)); 5851 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actionReason")) { 5852 res.getActionReason().add(parseCodeableConcept(xpp)); 5853 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("decisionType")) { 5854 res.setDecisionType(parseCodeableConcept(xpp)); 5855 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentDerivative")) { 5856 res.setContentDerivative(parseCodeableConcept(xpp)); 5857 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("securityLabel")) { 5858 res.getSecurityLabel().add(parseCoding(xpp)); 5859 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { 5860 res.getAgent().add(parseContractAgentComponent(xpp, res)); 5861 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("signer")) { 5862 res.getSigner().add(parseContractSignatoryComponent(xpp, res)); 5863 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valuedItem")) { 5864 res.getValuedItem().add(parseContractValuedItemComponent(xpp, res)); 5865 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("term")) { 5866 res.getTerm().add(parseContractTermComponent(xpp, res)); 5867 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "binding")) { 5868 res.setBinding(parseType("binding", xpp)); 5869 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("friendly")) { 5870 res.getFriendly().add(parseContractFriendlyLanguageComponent(xpp, res)); 5871 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("legal")) { 5872 res.getLegal().add(parseContractLegalLanguageComponent(xpp, res)); 5873 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rule")) { 5874 res.getRule().add(parseContractComputableLanguageComponent(xpp, res)); 5875 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5876 return false; 5877 return true; 5878 } 5879 5880 protected Contract.AgentComponent parseContractAgentComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 5881 Contract.AgentComponent res = new Contract.AgentComponent(); 5882 parseBackboneAttributes(xpp, res); 5883 next(xpp); 5884 int eventType = nextNoWhitespace(xpp); 5885 while (eventType != XmlPullParser.END_TAG) { 5886 if (!parseContractAgentComponentContent(eventType, xpp, owner, res)) 5887 unknownContent(xpp); 5888 eventType = nextNoWhitespace(xpp); 5889 } 5890 next(xpp); 5891 parseElementClose(res); 5892 return res; 5893 } 5894 5895 protected boolean parseContractAgentComponentContent(int eventType, XmlPullParser xpp, Contract owner, Contract.AgentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5896 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 5897 res.setActor(parseReference(xpp)); 5898 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 5899 res.getRole().add(parseCodeableConcept(xpp)); 5900 } else if (!parseBackboneContent(eventType, xpp, res)) 5901 return false; 5902 return true; 5903 } 5904 5905 protected Contract.SignatoryComponent parseContractSignatoryComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 5906 Contract.SignatoryComponent res = new Contract.SignatoryComponent(); 5907 parseBackboneAttributes(xpp, res); 5908 next(xpp); 5909 int eventType = nextNoWhitespace(xpp); 5910 while (eventType != XmlPullParser.END_TAG) { 5911 if (!parseContractSignatoryComponentContent(eventType, xpp, owner, res)) 5912 unknownContent(xpp); 5913 eventType = nextNoWhitespace(xpp); 5914 } 5915 next(xpp); 5916 parseElementClose(res); 5917 return res; 5918 } 5919 5920 protected boolean parseContractSignatoryComponentContent(int eventType, XmlPullParser xpp, Contract owner, Contract.SignatoryComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5921 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 5922 res.setType(parseCoding(xpp)); 5923 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("party")) { 5924 res.setParty(parseReference(xpp)); 5925 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("signature")) { 5926 res.getSignature().add(parseSignature(xpp)); 5927 } else if (!parseBackboneContent(eventType, xpp, res)) 5928 return false; 5929 return true; 5930 } 5931 5932 protected Contract.ValuedItemComponent parseContractValuedItemComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 5933 Contract.ValuedItemComponent res = new Contract.ValuedItemComponent(); 5934 parseBackboneAttributes(xpp, res); 5935 next(xpp); 5936 int eventType = nextNoWhitespace(xpp); 5937 while (eventType != XmlPullParser.END_TAG) { 5938 if (!parseContractValuedItemComponentContent(eventType, xpp, owner, res)) 5939 unknownContent(xpp); 5940 eventType = nextNoWhitespace(xpp); 5941 } 5942 next(xpp); 5943 parseElementClose(res); 5944 return res; 5945 } 5946 5947 protected boolean parseContractValuedItemComponentContent(int eventType, XmlPullParser xpp, Contract owner, Contract.ValuedItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5948 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "entity")) { 5949 res.setEntity(parseType("entity", xpp)); 5950 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5951 res.setIdentifier(parseIdentifier(xpp)); 5952 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectiveTime")) { 5953 res.setEffectiveTimeElement(parseDateTime(xpp)); 5954 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 5955 res.setQuantity(parseSimpleQuantity(xpp)); 5956 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 5957 res.setUnitPrice(parseMoney(xpp)); 5958 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 5959 res.setFactorElement(parseDecimal(xpp)); 5960 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("points")) { 5961 res.setPointsElement(parseDecimal(xpp)); 5962 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 5963 res.setNet(parseMoney(xpp)); 5964 } else if (!parseBackboneContent(eventType, xpp, res)) 5965 return false; 5966 return true; 5967 } 5968 5969 protected Contract.TermComponent parseContractTermComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 5970 Contract.TermComponent res = new Contract.TermComponent(); 5971 parseBackboneAttributes(xpp, res); 5972 next(xpp); 5973 int eventType = nextNoWhitespace(xpp); 5974 while (eventType != XmlPullParser.END_TAG) { 5975 if (!parseContractTermComponentContent(eventType, xpp, owner, res)) 5976 unknownContent(xpp); 5977 eventType = nextNoWhitespace(xpp); 5978 } 5979 next(xpp); 5980 parseElementClose(res); 5981 return res; 5982 } 5983 5984 protected boolean parseContractTermComponentContent(int eventType, XmlPullParser xpp, Contract owner, Contract.TermComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5985 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5986 res.setIdentifier(parseIdentifier(xpp)); 5987 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issued")) { 5988 res.setIssuedElement(parseDateTime(xpp)); 5989 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("applies")) { 5990 res.setApplies(parsePeriod(xpp)); 5991 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 5992 res.setType(parseCodeableConcept(xpp)); 5993 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subType")) { 5994 res.setSubType(parseCodeableConcept(xpp)); 5995 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { 5996 res.getTopic().add(parseReference(xpp)); 5997 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 5998 res.getAction().add(parseCodeableConcept(xpp)); 5999 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actionReason")) { 6000 res.getActionReason().add(parseCodeableConcept(xpp)); 6001 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("securityLabel")) { 6002 res.getSecurityLabel().add(parseCoding(xpp)); 6003 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { 6004 res.getAgent().add(parseContractTermAgentComponent(xpp, owner)); 6005 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 6006 res.setTextElement(parseString(xpp)); 6007 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valuedItem")) { 6008 res.getValuedItem().add(parseContractTermValuedItemComponent(xpp, owner)); 6009 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("group")) { 6010 res.getGroup().add(parseContractTermComponent(xpp, owner)); 6011 } else if (!parseBackboneContent(eventType, xpp, res)) 6012 return false; 6013 return true; 6014 } 6015 6016 protected Contract.TermAgentComponent parseContractTermAgentComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 6017 Contract.TermAgentComponent res = new Contract.TermAgentComponent(); 6018 parseBackboneAttributes(xpp, res); 6019 next(xpp); 6020 int eventType = nextNoWhitespace(xpp); 6021 while (eventType != XmlPullParser.END_TAG) { 6022 if (!parseContractTermAgentComponentContent(eventType, xpp, owner, res)) 6023 unknownContent(xpp); 6024 eventType = nextNoWhitespace(xpp); 6025 } 6026 next(xpp); 6027 parseElementClose(res); 6028 return res; 6029 } 6030 6031 protected boolean parseContractTermAgentComponentContent(int eventType, XmlPullParser xpp, Contract owner, Contract.TermAgentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6032 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 6033 res.setActor(parseReference(xpp)); 6034 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 6035 res.getRole().add(parseCodeableConcept(xpp)); 6036 } else if (!parseBackboneContent(eventType, xpp, res)) 6037 return false; 6038 return true; 6039 } 6040 6041 protected Contract.TermValuedItemComponent parseContractTermValuedItemComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 6042 Contract.TermValuedItemComponent res = new Contract.TermValuedItemComponent(); 6043 parseBackboneAttributes(xpp, res); 6044 next(xpp); 6045 int eventType = nextNoWhitespace(xpp); 6046 while (eventType != XmlPullParser.END_TAG) { 6047 if (!parseContractTermValuedItemComponentContent(eventType, xpp, owner, res)) 6048 unknownContent(xpp); 6049 eventType = nextNoWhitespace(xpp); 6050 } 6051 next(xpp); 6052 parseElementClose(res); 6053 return res; 6054 } 6055 6056 protected boolean parseContractTermValuedItemComponentContent(int eventType, XmlPullParser xpp, Contract owner, Contract.TermValuedItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6057 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "entity")) { 6058 res.setEntity(parseType("entity", xpp)); 6059 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6060 res.setIdentifier(parseIdentifier(xpp)); 6061 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectiveTime")) { 6062 res.setEffectiveTimeElement(parseDateTime(xpp)); 6063 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 6064 res.setQuantity(parseSimpleQuantity(xpp)); 6065 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 6066 res.setUnitPrice(parseMoney(xpp)); 6067 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 6068 res.setFactorElement(parseDecimal(xpp)); 6069 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("points")) { 6070 res.setPointsElement(parseDecimal(xpp)); 6071 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 6072 res.setNet(parseMoney(xpp)); 6073 } else if (!parseBackboneContent(eventType, xpp, res)) 6074 return false; 6075 return true; 6076 } 6077 6078 protected Contract.FriendlyLanguageComponent parseContractFriendlyLanguageComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 6079 Contract.FriendlyLanguageComponent res = new Contract.FriendlyLanguageComponent(); 6080 parseBackboneAttributes(xpp, res); 6081 next(xpp); 6082 int eventType = nextNoWhitespace(xpp); 6083 while (eventType != XmlPullParser.END_TAG) { 6084 if (!parseContractFriendlyLanguageComponentContent(eventType, xpp, owner, res)) 6085 unknownContent(xpp); 6086 eventType = nextNoWhitespace(xpp); 6087 } 6088 next(xpp); 6089 parseElementClose(res); 6090 return res; 6091 } 6092 6093 protected boolean parseContractFriendlyLanguageComponentContent(int eventType, XmlPullParser xpp, Contract owner, Contract.FriendlyLanguageComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6094 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "content")) { 6095 res.setContent(parseType("content", xpp)); 6096 } else if (!parseBackboneContent(eventType, xpp, res)) 6097 return false; 6098 return true; 6099 } 6100 6101 protected Contract.LegalLanguageComponent parseContractLegalLanguageComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 6102 Contract.LegalLanguageComponent res = new Contract.LegalLanguageComponent(); 6103 parseBackboneAttributes(xpp, res); 6104 next(xpp); 6105 int eventType = nextNoWhitespace(xpp); 6106 while (eventType != XmlPullParser.END_TAG) { 6107 if (!parseContractLegalLanguageComponentContent(eventType, xpp, owner, res)) 6108 unknownContent(xpp); 6109 eventType = nextNoWhitespace(xpp); 6110 } 6111 next(xpp); 6112 parseElementClose(res); 6113 return res; 6114 } 6115 6116 protected boolean parseContractLegalLanguageComponentContent(int eventType, XmlPullParser xpp, Contract owner, Contract.LegalLanguageComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6117 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "content")) { 6118 res.setContent(parseType("content", xpp)); 6119 } else if (!parseBackboneContent(eventType, xpp, res)) 6120 return false; 6121 return true; 6122 } 6123 6124 protected Contract.ComputableLanguageComponent parseContractComputableLanguageComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 6125 Contract.ComputableLanguageComponent res = new Contract.ComputableLanguageComponent(); 6126 parseBackboneAttributes(xpp, res); 6127 next(xpp); 6128 int eventType = nextNoWhitespace(xpp); 6129 while (eventType != XmlPullParser.END_TAG) { 6130 if (!parseContractComputableLanguageComponentContent(eventType, xpp, owner, res)) 6131 unknownContent(xpp); 6132 eventType = nextNoWhitespace(xpp); 6133 } 6134 next(xpp); 6135 parseElementClose(res); 6136 return res; 6137 } 6138 6139 protected boolean parseContractComputableLanguageComponentContent(int eventType, XmlPullParser xpp, Contract owner, Contract.ComputableLanguageComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6140 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "content")) { 6141 res.setContent(parseType("content", xpp)); 6142 } else if (!parseBackboneContent(eventType, xpp, res)) 6143 return false; 6144 return true; 6145 } 6146 6147 protected Coverage parseCoverage(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6148 Coverage res = new Coverage(); 6149 parseDomainResourceAttributes(xpp, res); 6150 next(xpp); 6151 int eventType = nextNoWhitespace(xpp); 6152 while (eventType != XmlPullParser.END_TAG) { 6153 if (!parseCoverageContent(eventType, xpp, res)) 6154 unknownContent(xpp); 6155 eventType = nextNoWhitespace(xpp); 6156 } 6157 next(xpp); 6158 parseElementClose(res); 6159 return res; 6160 } 6161 6162 protected boolean parseCoverageContent(int eventType, XmlPullParser xpp, Coverage res) throws XmlPullParserException, IOException, FHIRFormatError { 6163 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6164 res.getIdentifier().add(parseIdentifier(xpp)); 6165 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 6166 res.setStatusElement(parseEnumeration(xpp, Coverage.CoverageStatus.NULL, new Coverage.CoverageStatusEnumFactory())); 6167 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6168 res.setType(parseCodeableConcept(xpp)); 6169 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("policyHolder")) { 6170 res.setPolicyHolder(parseReference(xpp)); 6171 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subscriber")) { 6172 res.setSubscriber(parseReference(xpp)); 6173 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subscriberId")) { 6174 res.setSubscriberIdElement(parseString(xpp)); 6175 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("beneficiary")) { 6176 res.setBeneficiary(parseReference(xpp)); 6177 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 6178 res.setRelationship(parseCodeableConcept(xpp)); 6179 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 6180 res.setPeriod(parsePeriod(xpp)); 6181 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payor")) { 6182 res.getPayor().add(parseReference(xpp)); 6183 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("grouping")) { 6184 res.setGrouping(parseCoverageGroupComponent(xpp, res)); 6185 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dependent")) { 6186 res.setDependentElement(parseString(xpp)); 6187 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 6188 res.setSequenceElement(parseString(xpp)); 6189 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("order")) { 6190 res.setOrderElement(parsePositiveInt(xpp)); 6191 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("network")) { 6192 res.setNetworkElement(parseString(xpp)); 6193 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contract")) { 6194 res.getContract().add(parseReference(xpp)); 6195 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6196 return false; 6197 return true; 6198 } 6199 6200 protected Coverage.GroupComponent parseCoverageGroupComponent(XmlPullParser xpp, Coverage owner) throws XmlPullParserException, IOException, FHIRFormatError { 6201 Coverage.GroupComponent res = new Coverage.GroupComponent(); 6202 parseBackboneAttributes(xpp, res); 6203 next(xpp); 6204 int eventType = nextNoWhitespace(xpp); 6205 while (eventType != XmlPullParser.END_TAG) { 6206 if (!parseCoverageGroupComponentContent(eventType, xpp, owner, res)) 6207 unknownContent(xpp); 6208 eventType = nextNoWhitespace(xpp); 6209 } 6210 next(xpp); 6211 parseElementClose(res); 6212 return res; 6213 } 6214 6215 protected boolean parseCoverageGroupComponentContent(int eventType, XmlPullParser xpp, Coverage owner, Coverage.GroupComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6216 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("group")) { 6217 res.setGroupElement(parseString(xpp)); 6218 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("groupDisplay")) { 6219 res.setGroupDisplayElement(parseString(xpp)); 6220 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subGroup")) { 6221 res.setSubGroupElement(parseString(xpp)); 6222 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subGroupDisplay")) { 6223 res.setSubGroupDisplayElement(parseString(xpp)); 6224 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("plan")) { 6225 res.setPlanElement(parseString(xpp)); 6226 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("planDisplay")) { 6227 res.setPlanDisplayElement(parseString(xpp)); 6228 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subPlan")) { 6229 res.setSubPlanElement(parseString(xpp)); 6230 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subPlanDisplay")) { 6231 res.setSubPlanDisplayElement(parseString(xpp)); 6232 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("class")) { 6233 res.setClass_Element(parseString(xpp)); 6234 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("classDisplay")) { 6235 res.setClassDisplayElement(parseString(xpp)); 6236 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subClass")) { 6237 res.setSubClassElement(parseString(xpp)); 6238 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subClassDisplay")) { 6239 res.setSubClassDisplayElement(parseString(xpp)); 6240 } else if (!parseBackboneContent(eventType, xpp, res)) 6241 return false; 6242 return true; 6243 } 6244 6245 protected DataElement parseDataElement(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6246 DataElement res = new DataElement(); 6247 parseDomainResourceAttributes(xpp, res); 6248 next(xpp); 6249 int eventType = nextNoWhitespace(xpp); 6250 while (eventType != XmlPullParser.END_TAG) { 6251 if (!parseDataElementContent(eventType, xpp, res)) 6252 unknownContent(xpp); 6253 eventType = nextNoWhitespace(xpp); 6254 } 6255 next(xpp); 6256 parseElementClose(res); 6257 return res; 6258 } 6259 6260 protected boolean parseDataElementContent(int eventType, XmlPullParser xpp, DataElement res) throws XmlPullParserException, IOException, FHIRFormatError { 6261 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 6262 res.setUrlElement(parseUri(xpp)); 6263 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6264 res.getIdentifier().add(parseIdentifier(xpp)); 6265 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 6266 res.setVersionElement(parseString(xpp)); 6267 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 6268 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 6269 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 6270 res.setExperimentalElement(parseBoolean(xpp)); 6271 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 6272 res.setDateElement(parseDateTime(xpp)); 6273 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 6274 res.setPublisherElement(parseString(xpp)); 6275 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 6276 res.setNameElement(parseString(xpp)); 6277 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 6278 res.setTitleElement(parseString(xpp)); 6279 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 6280 res.getContact().add(parseContactDetail(xpp)); 6281 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 6282 res.getUseContext().add(parseUsageContext(xpp)); 6283 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 6284 res.getJurisdiction().add(parseCodeableConcept(xpp)); 6285 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 6286 res.setCopyrightElement(parseMarkdown(xpp)); 6287 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("stringency")) { 6288 res.setStringencyElement(parseEnumeration(xpp, DataElement.DataElementStringency.NULL, new DataElement.DataElementStringencyEnumFactory())); 6289 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mapping")) { 6290 res.getMapping().add(parseDataElementDataElementMappingComponent(xpp, res)); 6291 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("element")) { 6292 res.getElement().add(parseElementDefinition(xpp)); 6293 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6294 return false; 6295 return true; 6296 } 6297 6298 protected DataElement.DataElementMappingComponent parseDataElementDataElementMappingComponent(XmlPullParser xpp, DataElement owner) throws XmlPullParserException, IOException, FHIRFormatError { 6299 DataElement.DataElementMappingComponent res = new DataElement.DataElementMappingComponent(); 6300 parseBackboneAttributes(xpp, res); 6301 next(xpp); 6302 int eventType = nextNoWhitespace(xpp); 6303 while (eventType != XmlPullParser.END_TAG) { 6304 if (!parseDataElementDataElementMappingComponentContent(eventType, xpp, owner, res)) 6305 unknownContent(xpp); 6306 eventType = nextNoWhitespace(xpp); 6307 } 6308 next(xpp); 6309 parseElementClose(res); 6310 return res; 6311 } 6312 6313 protected boolean parseDataElementDataElementMappingComponentContent(int eventType, XmlPullParser xpp, DataElement owner, DataElement.DataElementMappingComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6314 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identity")) { 6315 res.setIdentityElement(parseId(xpp)); 6316 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uri")) { 6317 res.setUriElement(parseUri(xpp)); 6318 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 6319 res.setNameElement(parseString(xpp)); 6320 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 6321 res.setCommentElement(parseString(xpp)); 6322 } else if (!parseBackboneContent(eventType, xpp, res)) 6323 return false; 6324 return true; 6325 } 6326 6327 protected DetectedIssue parseDetectedIssue(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6328 DetectedIssue res = new DetectedIssue(); 6329 parseDomainResourceAttributes(xpp, res); 6330 next(xpp); 6331 int eventType = nextNoWhitespace(xpp); 6332 while (eventType != XmlPullParser.END_TAG) { 6333 if (!parseDetectedIssueContent(eventType, xpp, res)) 6334 unknownContent(xpp); 6335 eventType = nextNoWhitespace(xpp); 6336 } 6337 next(xpp); 6338 parseElementClose(res); 6339 return res; 6340 } 6341 6342 protected boolean parseDetectedIssueContent(int eventType, XmlPullParser xpp, DetectedIssue res) throws XmlPullParserException, IOException, FHIRFormatError { 6343 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6344 res.setIdentifier(parseIdentifier(xpp)); 6345 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 6346 res.setStatusElement(parseEnumeration(xpp, DetectedIssue.DetectedIssueStatus.NULL, new DetectedIssue.DetectedIssueStatusEnumFactory())); 6347 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 6348 res.setCategory(parseCodeableConcept(xpp)); 6349 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("severity")) { 6350 res.setSeverityElement(parseEnumeration(xpp, DetectedIssue.DetectedIssueSeverity.NULL, new DetectedIssue.DetectedIssueSeverityEnumFactory())); 6351 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 6352 res.setPatient(parseReference(xpp)); 6353 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 6354 res.setDateElement(parseDateTime(xpp)); 6355 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 6356 res.setAuthor(parseReference(xpp)); 6357 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("implicated")) { 6358 res.getImplicated().add(parseReference(xpp)); 6359 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 6360 res.setDetailElement(parseString(xpp)); 6361 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 6362 res.setReferenceElement(parseUri(xpp)); 6363 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mitigation")) { 6364 res.getMitigation().add(parseDetectedIssueDetectedIssueMitigationComponent(xpp, res)); 6365 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6366 return false; 6367 return true; 6368 } 6369 6370 protected DetectedIssue.DetectedIssueMitigationComponent parseDetectedIssueDetectedIssueMitigationComponent(XmlPullParser xpp, DetectedIssue owner) throws XmlPullParserException, IOException, FHIRFormatError { 6371 DetectedIssue.DetectedIssueMitigationComponent res = new DetectedIssue.DetectedIssueMitigationComponent(); 6372 parseBackboneAttributes(xpp, res); 6373 next(xpp); 6374 int eventType = nextNoWhitespace(xpp); 6375 while (eventType != XmlPullParser.END_TAG) { 6376 if (!parseDetectedIssueDetectedIssueMitigationComponentContent(eventType, xpp, owner, res)) 6377 unknownContent(xpp); 6378 eventType = nextNoWhitespace(xpp); 6379 } 6380 next(xpp); 6381 parseElementClose(res); 6382 return res; 6383 } 6384 6385 protected boolean parseDetectedIssueDetectedIssueMitigationComponentContent(int eventType, XmlPullParser xpp, DetectedIssue owner, DetectedIssue.DetectedIssueMitigationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6386 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 6387 res.setAction(parseCodeableConcept(xpp)); 6388 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 6389 res.setDateElement(parseDateTime(xpp)); 6390 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 6391 res.setAuthor(parseReference(xpp)); 6392 } else if (!parseBackboneContent(eventType, xpp, res)) 6393 return false; 6394 return true; 6395 } 6396 6397 protected Device parseDevice(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6398 Device res = new Device(); 6399 parseDomainResourceAttributes(xpp, res); 6400 next(xpp); 6401 int eventType = nextNoWhitespace(xpp); 6402 while (eventType != XmlPullParser.END_TAG) { 6403 if (!parseDeviceContent(eventType, xpp, res)) 6404 unknownContent(xpp); 6405 eventType = nextNoWhitespace(xpp); 6406 } 6407 next(xpp); 6408 parseElementClose(res); 6409 return res; 6410 } 6411 6412 protected boolean parseDeviceContent(int eventType, XmlPullParser xpp, Device res) throws XmlPullParserException, IOException, FHIRFormatError { 6413 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6414 res.getIdentifier().add(parseIdentifier(xpp)); 6415 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udi")) { 6416 res.setUdi(parseDeviceDeviceUdiComponent(xpp, res)); 6417 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 6418 res.setStatusElement(parseEnumeration(xpp, Device.FHIRDeviceStatus.NULL, new Device.FHIRDeviceStatusEnumFactory())); 6419 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6420 res.setType(parseCodeableConcept(xpp)); 6421 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lotNumber")) { 6422 res.setLotNumberElement(parseString(xpp)); 6423 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manufacturer")) { 6424 res.setManufacturerElement(parseString(xpp)); 6425 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manufactureDate")) { 6426 res.setManufactureDateElement(parseDateTime(xpp)); 6427 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expirationDate")) { 6428 res.setExpirationDateElement(parseDateTime(xpp)); 6429 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("model")) { 6430 res.setModelElement(parseString(xpp)); 6431 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 6432 res.setVersionElement(parseString(xpp)); 6433 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 6434 res.setPatient(parseReference(xpp)); 6435 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("owner")) { 6436 res.setOwner(parseReference(xpp)); 6437 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 6438 res.getContact().add(parseContactPoint(xpp)); 6439 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 6440 res.setLocation(parseReference(xpp)); 6441 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 6442 res.setUrlElement(parseUri(xpp)); 6443 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 6444 res.getNote().add(parseAnnotation(xpp)); 6445 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("safety")) { 6446 res.getSafety().add(parseCodeableConcept(xpp)); 6447 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6448 return false; 6449 return true; 6450 } 6451 6452 protected Device.DeviceUdiComponent parseDeviceDeviceUdiComponent(XmlPullParser xpp, Device owner) throws XmlPullParserException, IOException, FHIRFormatError { 6453 Device.DeviceUdiComponent res = new Device.DeviceUdiComponent(); 6454 parseBackboneAttributes(xpp, res); 6455 next(xpp); 6456 int eventType = nextNoWhitespace(xpp); 6457 while (eventType != XmlPullParser.END_TAG) { 6458 if (!parseDeviceDeviceUdiComponentContent(eventType, xpp, owner, res)) 6459 unknownContent(xpp); 6460 eventType = nextNoWhitespace(xpp); 6461 } 6462 next(xpp); 6463 parseElementClose(res); 6464 return res; 6465 } 6466 6467 protected boolean parseDeviceDeviceUdiComponentContent(int eventType, XmlPullParser xpp, Device owner, Device.DeviceUdiComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6468 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("deviceIdentifier")) { 6469 res.setDeviceIdentifierElement(parseString(xpp)); 6470 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 6471 res.setNameElement(parseString(xpp)); 6472 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 6473 res.setJurisdictionElement(parseUri(xpp)); 6474 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("carrierHRF")) { 6475 res.setCarrierHRFElement(parseString(xpp)); 6476 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("carrierAIDC")) { 6477 res.setCarrierAIDCElement(parseBase64Binary(xpp)); 6478 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issuer")) { 6479 res.setIssuerElement(parseUri(xpp)); 6480 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entryType")) { 6481 res.setEntryTypeElement(parseEnumeration(xpp, Device.UDIEntryType.NULL, new Device.UDIEntryTypeEnumFactory())); 6482 } else if (!parseBackboneContent(eventType, xpp, res)) 6483 return false; 6484 return true; 6485 } 6486 6487 protected DeviceComponent parseDeviceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6488 DeviceComponent res = new DeviceComponent(); 6489 parseDomainResourceAttributes(xpp, res); 6490 next(xpp); 6491 int eventType = nextNoWhitespace(xpp); 6492 while (eventType != XmlPullParser.END_TAG) { 6493 if (!parseDeviceComponentContent(eventType, xpp, res)) 6494 unknownContent(xpp); 6495 eventType = nextNoWhitespace(xpp); 6496 } 6497 next(xpp); 6498 parseElementClose(res); 6499 return res; 6500 } 6501 6502 protected boolean parseDeviceComponentContent(int eventType, XmlPullParser xpp, DeviceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6503 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6504 res.setIdentifier(parseIdentifier(xpp)); 6505 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6506 res.setType(parseCodeableConcept(xpp)); 6507 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastSystemChange")) { 6508 res.setLastSystemChangeElement(parseInstant(xpp)); 6509 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 6510 res.setSource(parseReference(xpp)); 6511 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parent")) { 6512 res.setParent(parseReference(xpp)); 6513 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operationalStatus")) { 6514 res.getOperationalStatus().add(parseCodeableConcept(xpp)); 6515 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameterGroup")) { 6516 res.setParameterGroup(parseCodeableConcept(xpp)); 6517 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("measurementPrinciple")) { 6518 res.setMeasurementPrincipleElement(parseEnumeration(xpp, DeviceComponent.MeasmntPrinciple.NULL, new DeviceComponent.MeasmntPrincipleEnumFactory())); 6519 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productionSpecification")) { 6520 res.getProductionSpecification().add(parseDeviceComponentDeviceComponentProductionSpecificationComponent(xpp, res)); 6521 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("languageCode")) { 6522 res.setLanguageCode(parseCodeableConcept(xpp)); 6523 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6524 return false; 6525 return true; 6526 } 6527 6528 protected DeviceComponent.DeviceComponentProductionSpecificationComponent parseDeviceComponentDeviceComponentProductionSpecificationComponent(XmlPullParser xpp, DeviceComponent owner) throws XmlPullParserException, IOException, FHIRFormatError { 6529 DeviceComponent.DeviceComponentProductionSpecificationComponent res = new DeviceComponent.DeviceComponentProductionSpecificationComponent(); 6530 parseBackboneAttributes(xpp, res); 6531 next(xpp); 6532 int eventType = nextNoWhitespace(xpp); 6533 while (eventType != XmlPullParser.END_TAG) { 6534 if (!parseDeviceComponentDeviceComponentProductionSpecificationComponentContent(eventType, xpp, owner, res)) 6535 unknownContent(xpp); 6536 eventType = nextNoWhitespace(xpp); 6537 } 6538 next(xpp); 6539 parseElementClose(res); 6540 return res; 6541 } 6542 6543 protected boolean parseDeviceComponentDeviceComponentProductionSpecificationComponentContent(int eventType, XmlPullParser xpp, DeviceComponent owner, DeviceComponent.DeviceComponentProductionSpecificationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6544 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specType")) { 6545 res.setSpecType(parseCodeableConcept(xpp)); 6546 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("componentId")) { 6547 res.setComponentId(parseIdentifier(xpp)); 6548 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productionSpec")) { 6549 res.setProductionSpecElement(parseString(xpp)); 6550 } else if (!parseBackboneContent(eventType, xpp, res)) 6551 return false; 6552 return true; 6553 } 6554 6555 protected DeviceMetric parseDeviceMetric(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6556 DeviceMetric res = new DeviceMetric(); 6557 parseDomainResourceAttributes(xpp, res); 6558 next(xpp); 6559 int eventType = nextNoWhitespace(xpp); 6560 while (eventType != XmlPullParser.END_TAG) { 6561 if (!parseDeviceMetricContent(eventType, xpp, res)) 6562 unknownContent(xpp); 6563 eventType = nextNoWhitespace(xpp); 6564 } 6565 next(xpp); 6566 parseElementClose(res); 6567 return res; 6568 } 6569 6570 protected boolean parseDeviceMetricContent(int eventType, XmlPullParser xpp, DeviceMetric res) throws XmlPullParserException, IOException, FHIRFormatError { 6571 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6572 res.setIdentifier(parseIdentifier(xpp)); 6573 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6574 res.setType(parseCodeableConcept(xpp)); 6575 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unit")) { 6576 res.setUnit(parseCodeableConcept(xpp)); 6577 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 6578 res.setSource(parseReference(xpp)); 6579 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parent")) { 6580 res.setParent(parseReference(xpp)); 6581 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operationalStatus")) { 6582 res.setOperationalStatusElement(parseEnumeration(xpp, DeviceMetric.DeviceMetricOperationalStatus.NULL, new DeviceMetric.DeviceMetricOperationalStatusEnumFactory())); 6583 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("color")) { 6584 res.setColorElement(parseEnumeration(xpp, DeviceMetric.DeviceMetricColor.NULL, new DeviceMetric.DeviceMetricColorEnumFactory())); 6585 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 6586 res.setCategoryElement(parseEnumeration(xpp, DeviceMetric.DeviceMetricCategory.NULL, new DeviceMetric.DeviceMetricCategoryEnumFactory())); 6587 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("measurementPeriod")) { 6588 res.setMeasurementPeriod(parseTiming(xpp)); 6589 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("calibration")) { 6590 res.getCalibration().add(parseDeviceMetricDeviceMetricCalibrationComponent(xpp, res)); 6591 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6592 return false; 6593 return true; 6594 } 6595 6596 protected DeviceMetric.DeviceMetricCalibrationComponent parseDeviceMetricDeviceMetricCalibrationComponent(XmlPullParser xpp, DeviceMetric owner) throws XmlPullParserException, IOException, FHIRFormatError { 6597 DeviceMetric.DeviceMetricCalibrationComponent res = new DeviceMetric.DeviceMetricCalibrationComponent(); 6598 parseBackboneAttributes(xpp, res); 6599 next(xpp); 6600 int eventType = nextNoWhitespace(xpp); 6601 while (eventType != XmlPullParser.END_TAG) { 6602 if (!parseDeviceMetricDeviceMetricCalibrationComponentContent(eventType, xpp, owner, res)) 6603 unknownContent(xpp); 6604 eventType = nextNoWhitespace(xpp); 6605 } 6606 next(xpp); 6607 parseElementClose(res); 6608 return res; 6609 } 6610 6611 protected boolean parseDeviceMetricDeviceMetricCalibrationComponentContent(int eventType, XmlPullParser xpp, DeviceMetric owner, DeviceMetric.DeviceMetricCalibrationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6612 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6613 res.setTypeElement(parseEnumeration(xpp, DeviceMetric.DeviceMetricCalibrationType.NULL, new DeviceMetric.DeviceMetricCalibrationTypeEnumFactory())); 6614 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("state")) { 6615 res.setStateElement(parseEnumeration(xpp, DeviceMetric.DeviceMetricCalibrationState.NULL, new DeviceMetric.DeviceMetricCalibrationStateEnumFactory())); 6616 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("time")) { 6617 res.setTimeElement(parseInstant(xpp)); 6618 } else if (!parseBackboneContent(eventType, xpp, res)) 6619 return false; 6620 return true; 6621 } 6622 6623 protected DeviceRequest parseDeviceRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6624 DeviceRequest res = new DeviceRequest(); 6625 parseDomainResourceAttributes(xpp, res); 6626 next(xpp); 6627 int eventType = nextNoWhitespace(xpp); 6628 while (eventType != XmlPullParser.END_TAG) { 6629 if (!parseDeviceRequestContent(eventType, xpp, res)) 6630 unknownContent(xpp); 6631 eventType = nextNoWhitespace(xpp); 6632 } 6633 next(xpp); 6634 parseElementClose(res); 6635 return res; 6636 } 6637 6638 protected boolean parseDeviceRequestContent(int eventType, XmlPullParser xpp, DeviceRequest res) throws XmlPullParserException, IOException, FHIRFormatError { 6639 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6640 res.getIdentifier().add(parseIdentifier(xpp)); 6641 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 6642 res.getDefinition().add(parseReference(xpp)); 6643 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 6644 res.getBasedOn().add(parseReference(xpp)); 6645 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priorRequest")) { 6646 res.getPriorRequest().add(parseReference(xpp)); 6647 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("groupIdentifier")) { 6648 res.setGroupIdentifier(parseIdentifier(xpp)); 6649 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 6650 res.setStatusElement(parseEnumeration(xpp, DeviceRequest.DeviceRequestStatus.NULL, new DeviceRequest.DeviceRequestStatusEnumFactory())); 6651 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intent")) { 6652 res.setIntent(parseCodeableConcept(xpp)); 6653 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 6654 res.setPriorityElement(parseEnumeration(xpp, DeviceRequest.RequestPriority.NULL, new DeviceRequest.RequestPriorityEnumFactory())); 6655 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "code")) { 6656 res.setCode(parseType("code", xpp)); 6657 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 6658 res.setSubject(parseReference(xpp)); 6659 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 6660 res.setContext(parseReference(xpp)); 6661 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "occurrence")) { 6662 res.setOccurrence(parseType("occurrence", xpp)); 6663 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authoredOn")) { 6664 res.setAuthoredOnElement(parseDateTime(xpp)); 6665 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requester")) { 6666 res.setRequester(parseDeviceRequestDeviceRequestRequesterComponent(xpp, res)); 6667 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performerType")) { 6668 res.setPerformerType(parseCodeableConcept(xpp)); 6669 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 6670 res.setPerformer(parseReference(xpp)); 6671 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonCode")) { 6672 res.getReasonCode().add(parseCodeableConcept(xpp)); 6673 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonReference")) { 6674 res.getReasonReference().add(parseReference(xpp)); 6675 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInfo")) { 6676 res.getSupportingInfo().add(parseReference(xpp)); 6677 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 6678 res.getNote().add(parseAnnotation(xpp)); 6679 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relevantHistory")) { 6680 res.getRelevantHistory().add(parseReference(xpp)); 6681 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6682 return false; 6683 return true; 6684 } 6685 6686 protected DeviceRequest.DeviceRequestRequesterComponent parseDeviceRequestDeviceRequestRequesterComponent(XmlPullParser xpp, DeviceRequest owner) throws XmlPullParserException, IOException, FHIRFormatError { 6687 DeviceRequest.DeviceRequestRequesterComponent res = new DeviceRequest.DeviceRequestRequesterComponent(); 6688 parseBackboneAttributes(xpp, res); 6689 next(xpp); 6690 int eventType = nextNoWhitespace(xpp); 6691 while (eventType != XmlPullParser.END_TAG) { 6692 if (!parseDeviceRequestDeviceRequestRequesterComponentContent(eventType, xpp, owner, res)) 6693 unknownContent(xpp); 6694 eventType = nextNoWhitespace(xpp); 6695 } 6696 next(xpp); 6697 parseElementClose(res); 6698 return res; 6699 } 6700 6701 protected boolean parseDeviceRequestDeviceRequestRequesterComponentContent(int eventType, XmlPullParser xpp, DeviceRequest owner, DeviceRequest.DeviceRequestRequesterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6702 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { 6703 res.setAgent(parseReference(xpp)); 6704 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onBehalfOf")) { 6705 res.setOnBehalfOf(parseReference(xpp)); 6706 } else if (!parseBackboneContent(eventType, xpp, res)) 6707 return false; 6708 return true; 6709 } 6710 6711 protected DeviceUseStatement parseDeviceUseStatement(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6712 DeviceUseStatement res = new DeviceUseStatement(); 6713 parseDomainResourceAttributes(xpp, res); 6714 next(xpp); 6715 int eventType = nextNoWhitespace(xpp); 6716 while (eventType != XmlPullParser.END_TAG) { 6717 if (!parseDeviceUseStatementContent(eventType, xpp, res)) 6718 unknownContent(xpp); 6719 eventType = nextNoWhitespace(xpp); 6720 } 6721 next(xpp); 6722 parseElementClose(res); 6723 return res; 6724 } 6725 6726 protected boolean parseDeviceUseStatementContent(int eventType, XmlPullParser xpp, DeviceUseStatement res) throws XmlPullParserException, IOException, FHIRFormatError { 6727 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6728 res.getIdentifier().add(parseIdentifier(xpp)); 6729 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 6730 res.setStatusElement(parseEnumeration(xpp, DeviceUseStatement.DeviceUseStatementStatus.NULL, new DeviceUseStatement.DeviceUseStatementStatusEnumFactory())); 6731 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 6732 res.setSubject(parseReference(xpp)); 6733 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("whenUsed")) { 6734 res.setWhenUsed(parsePeriod(xpp)); 6735 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "timing")) { 6736 res.setTiming(parseType("timing", xpp)); 6737 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recordedOn")) { 6738 res.setRecordedOnElement(parseDateTime(xpp)); 6739 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 6740 res.setSource(parseReference(xpp)); 6741 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 6742 res.setDevice(parseReference(xpp)); 6743 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("indication")) { 6744 res.getIndication().add(parseCodeableConcept(xpp)); 6745 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 6746 res.setBodySite(parseCodeableConcept(xpp)); 6747 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 6748 res.getNote().add(parseAnnotation(xpp)); 6749 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6750 return false; 6751 return true; 6752 } 6753 6754 protected DiagnosticReport parseDiagnosticReport(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6755 DiagnosticReport res = new DiagnosticReport(); 6756 parseDomainResourceAttributes(xpp, res); 6757 next(xpp); 6758 int eventType = nextNoWhitespace(xpp); 6759 while (eventType != XmlPullParser.END_TAG) { 6760 if (!parseDiagnosticReportContent(eventType, xpp, res)) 6761 unknownContent(xpp); 6762 eventType = nextNoWhitespace(xpp); 6763 } 6764 next(xpp); 6765 parseElementClose(res); 6766 return res; 6767 } 6768 6769 protected boolean parseDiagnosticReportContent(int eventType, XmlPullParser xpp, DiagnosticReport res) throws XmlPullParserException, IOException, FHIRFormatError { 6770 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6771 res.getIdentifier().add(parseIdentifier(xpp)); 6772 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 6773 res.getBasedOn().add(parseReference(xpp)); 6774 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 6775 res.setStatusElement(parseEnumeration(xpp, DiagnosticReport.DiagnosticReportStatus.NULL, new DiagnosticReport.DiagnosticReportStatusEnumFactory())); 6776 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 6777 res.setCategory(parseCodeableConcept(xpp)); 6778 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 6779 res.setCode(parseCodeableConcept(xpp)); 6780 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 6781 res.setSubject(parseReference(xpp)); 6782 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 6783 res.setContext(parseReference(xpp)); 6784 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "effective")) { 6785 res.setEffective(parseType("effective", xpp)); 6786 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issued")) { 6787 res.setIssuedElement(parseInstant(xpp)); 6788 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 6789 res.getPerformer().add(parseDiagnosticReportDiagnosticReportPerformerComponent(xpp, res)); 6790 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specimen")) { 6791 res.getSpecimen().add(parseReference(xpp)); 6792 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("result")) { 6793 res.getResult().add(parseReference(xpp)); 6794 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("imagingStudy")) { 6795 res.getImagingStudy().add(parseReference(xpp)); 6796 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("image")) { 6797 res.getImage().add(parseDiagnosticReportDiagnosticReportImageComponent(xpp, res)); 6798 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("conclusion")) { 6799 res.setConclusionElement(parseString(xpp)); 6800 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("codedDiagnosis")) { 6801 res.getCodedDiagnosis().add(parseCodeableConcept(xpp)); 6802 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("presentedForm")) { 6803 res.getPresentedForm().add(parseAttachment(xpp)); 6804 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6805 return false; 6806 return true; 6807 } 6808 6809 protected DiagnosticReport.DiagnosticReportPerformerComponent parseDiagnosticReportDiagnosticReportPerformerComponent(XmlPullParser xpp, DiagnosticReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 6810 DiagnosticReport.DiagnosticReportPerformerComponent res = new DiagnosticReport.DiagnosticReportPerformerComponent(); 6811 parseBackboneAttributes(xpp, res); 6812 next(xpp); 6813 int eventType = nextNoWhitespace(xpp); 6814 while (eventType != XmlPullParser.END_TAG) { 6815 if (!parseDiagnosticReportDiagnosticReportPerformerComponentContent(eventType, xpp, owner, res)) 6816 unknownContent(xpp); 6817 eventType = nextNoWhitespace(xpp); 6818 } 6819 next(xpp); 6820 parseElementClose(res); 6821 return res; 6822 } 6823 6824 protected boolean parseDiagnosticReportDiagnosticReportPerformerComponentContent(int eventType, XmlPullParser xpp, DiagnosticReport owner, DiagnosticReport.DiagnosticReportPerformerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6825 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 6826 res.setRole(parseCodeableConcept(xpp)); 6827 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 6828 res.setActor(parseReference(xpp)); 6829 } else if (!parseBackboneContent(eventType, xpp, res)) 6830 return false; 6831 return true; 6832 } 6833 6834 protected DiagnosticReport.DiagnosticReportImageComponent parseDiagnosticReportDiagnosticReportImageComponent(XmlPullParser xpp, DiagnosticReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 6835 DiagnosticReport.DiagnosticReportImageComponent res = new DiagnosticReport.DiagnosticReportImageComponent(); 6836 parseBackboneAttributes(xpp, res); 6837 next(xpp); 6838 int eventType = nextNoWhitespace(xpp); 6839 while (eventType != XmlPullParser.END_TAG) { 6840 if (!parseDiagnosticReportDiagnosticReportImageComponentContent(eventType, xpp, owner, res)) 6841 unknownContent(xpp); 6842 eventType = nextNoWhitespace(xpp); 6843 } 6844 next(xpp); 6845 parseElementClose(res); 6846 return res; 6847 } 6848 6849 protected boolean parseDiagnosticReportDiagnosticReportImageComponentContent(int eventType, XmlPullParser xpp, DiagnosticReport owner, DiagnosticReport.DiagnosticReportImageComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6850 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 6851 res.setCommentElement(parseString(xpp)); 6852 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 6853 res.setLink(parseReference(xpp)); 6854 } else if (!parseBackboneContent(eventType, xpp, res)) 6855 return false; 6856 return true; 6857 } 6858 6859 protected DocumentManifest parseDocumentManifest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6860 DocumentManifest res = new DocumentManifest(); 6861 parseDomainResourceAttributes(xpp, res); 6862 next(xpp); 6863 int eventType = nextNoWhitespace(xpp); 6864 while (eventType != XmlPullParser.END_TAG) { 6865 if (!parseDocumentManifestContent(eventType, xpp, res)) 6866 unknownContent(xpp); 6867 eventType = nextNoWhitespace(xpp); 6868 } 6869 next(xpp); 6870 parseElementClose(res); 6871 return res; 6872 } 6873 6874 protected boolean parseDocumentManifestContent(int eventType, XmlPullParser xpp, DocumentManifest res) throws XmlPullParserException, IOException, FHIRFormatError { 6875 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("masterIdentifier")) { 6876 res.setMasterIdentifier(parseIdentifier(xpp)); 6877 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6878 res.getIdentifier().add(parseIdentifier(xpp)); 6879 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 6880 res.setStatusElement(parseEnumeration(xpp, Enumerations.DocumentReferenceStatus.NULL, new Enumerations.DocumentReferenceStatusEnumFactory())); 6881 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6882 res.setType(parseCodeableConcept(xpp)); 6883 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 6884 res.setSubject(parseReference(xpp)); 6885 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 6886 res.setCreatedElement(parseDateTime(xpp)); 6887 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 6888 res.getAuthor().add(parseReference(xpp)); 6889 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recipient")) { 6890 res.getRecipient().add(parseReference(xpp)); 6891 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 6892 res.setSourceElement(parseUri(xpp)); 6893 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 6894 res.setDescriptionElement(parseString(xpp)); 6895 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 6896 res.getContent().add(parseDocumentManifestDocumentManifestContentComponent(xpp, res)); 6897 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("related")) { 6898 res.getRelated().add(parseDocumentManifestDocumentManifestRelatedComponent(xpp, res)); 6899 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6900 return false; 6901 return true; 6902 } 6903 6904 protected DocumentManifest.DocumentManifestContentComponent parseDocumentManifestDocumentManifestContentComponent(XmlPullParser xpp, DocumentManifest owner) throws XmlPullParserException, IOException, FHIRFormatError { 6905 DocumentManifest.DocumentManifestContentComponent res = new DocumentManifest.DocumentManifestContentComponent(); 6906 parseBackboneAttributes(xpp, res); 6907 next(xpp); 6908 int eventType = nextNoWhitespace(xpp); 6909 while (eventType != XmlPullParser.END_TAG) { 6910 if (!parseDocumentManifestDocumentManifestContentComponentContent(eventType, xpp, owner, res)) 6911 unknownContent(xpp); 6912 eventType = nextNoWhitespace(xpp); 6913 } 6914 next(xpp); 6915 parseElementClose(res); 6916 return res; 6917 } 6918 6919 protected boolean parseDocumentManifestDocumentManifestContentComponentContent(int eventType, XmlPullParser xpp, DocumentManifest owner, DocumentManifest.DocumentManifestContentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6920 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "p")) { 6921 res.setP(parseType("p", xpp)); 6922 } else if (!parseBackboneContent(eventType, xpp, res)) 6923 return false; 6924 return true; 6925 } 6926 6927 protected DocumentManifest.DocumentManifestRelatedComponent parseDocumentManifestDocumentManifestRelatedComponent(XmlPullParser xpp, DocumentManifest owner) throws XmlPullParserException, IOException, FHIRFormatError { 6928 DocumentManifest.DocumentManifestRelatedComponent res = new DocumentManifest.DocumentManifestRelatedComponent(); 6929 parseBackboneAttributes(xpp, res); 6930 next(xpp); 6931 int eventType = nextNoWhitespace(xpp); 6932 while (eventType != XmlPullParser.END_TAG) { 6933 if (!parseDocumentManifestDocumentManifestRelatedComponentContent(eventType, xpp, owner, res)) 6934 unknownContent(xpp); 6935 eventType = nextNoWhitespace(xpp); 6936 } 6937 next(xpp); 6938 parseElementClose(res); 6939 return res; 6940 } 6941 6942 protected boolean parseDocumentManifestDocumentManifestRelatedComponentContent(int eventType, XmlPullParser xpp, DocumentManifest owner, DocumentManifest.DocumentManifestRelatedComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6943 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6944 res.setIdentifier(parseIdentifier(xpp)); 6945 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ref")) { 6946 res.setRef(parseReference(xpp)); 6947 } else if (!parseBackboneContent(eventType, xpp, res)) 6948 return false; 6949 return true; 6950 } 6951 6952 protected DocumentReference parseDocumentReference(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6953 DocumentReference res = new DocumentReference(); 6954 parseDomainResourceAttributes(xpp, res); 6955 next(xpp); 6956 int eventType = nextNoWhitespace(xpp); 6957 while (eventType != XmlPullParser.END_TAG) { 6958 if (!parseDocumentReferenceContent(eventType, xpp, res)) 6959 unknownContent(xpp); 6960 eventType = nextNoWhitespace(xpp); 6961 } 6962 next(xpp); 6963 parseElementClose(res); 6964 return res; 6965 } 6966 6967 protected boolean parseDocumentReferenceContent(int eventType, XmlPullParser xpp, DocumentReference res) throws XmlPullParserException, IOException, FHIRFormatError { 6968 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("masterIdentifier")) { 6969 res.setMasterIdentifier(parseIdentifier(xpp)); 6970 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6971 res.getIdentifier().add(parseIdentifier(xpp)); 6972 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 6973 res.setStatusElement(parseEnumeration(xpp, Enumerations.DocumentReferenceStatus.NULL, new Enumerations.DocumentReferenceStatusEnumFactory())); 6974 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("docStatus")) { 6975 res.setDocStatusElement(parseEnumeration(xpp, DocumentReference.ReferredDocumentStatus.NULL, new DocumentReference.ReferredDocumentStatusEnumFactory())); 6976 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6977 res.setType(parseCodeableConcept(xpp)); 6978 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("class")) { 6979 res.setClass_(parseCodeableConcept(xpp)); 6980 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 6981 res.setSubject(parseReference(xpp)); 6982 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 6983 res.setCreatedElement(parseDateTime(xpp)); 6984 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("indexed")) { 6985 res.setIndexedElement(parseInstant(xpp)); 6986 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 6987 res.getAuthor().add(parseReference(xpp)); 6988 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authenticator")) { 6989 res.setAuthenticator(parseReference(xpp)); 6990 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("custodian")) { 6991 res.setCustodian(parseReference(xpp)); 6992 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatesTo")) { 6993 res.getRelatesTo().add(parseDocumentReferenceDocumentReferenceRelatesToComponent(xpp, res)); 6994 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 6995 res.setDescriptionElement(parseString(xpp)); 6996 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("securityLabel")) { 6997 res.getSecurityLabel().add(parseCodeableConcept(xpp)); 6998 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 6999 res.getContent().add(parseDocumentReferenceDocumentReferenceContentComponent(xpp, res)); 7000 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 7001 res.setContext(parseDocumentReferenceDocumentReferenceContextComponent(xpp, res)); 7002 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7003 return false; 7004 return true; 7005 } 7006 7007 protected DocumentReference.DocumentReferenceRelatesToComponent parseDocumentReferenceDocumentReferenceRelatesToComponent(XmlPullParser xpp, DocumentReference owner) throws XmlPullParserException, IOException, FHIRFormatError { 7008 DocumentReference.DocumentReferenceRelatesToComponent res = new DocumentReference.DocumentReferenceRelatesToComponent(); 7009 parseBackboneAttributes(xpp, res); 7010 next(xpp); 7011 int eventType = nextNoWhitespace(xpp); 7012 while (eventType != XmlPullParser.END_TAG) { 7013 if (!parseDocumentReferenceDocumentReferenceRelatesToComponentContent(eventType, xpp, owner, res)) 7014 unknownContent(xpp); 7015 eventType = nextNoWhitespace(xpp); 7016 } 7017 next(xpp); 7018 parseElementClose(res); 7019 return res; 7020 } 7021 7022 protected boolean parseDocumentReferenceDocumentReferenceRelatesToComponentContent(int eventType, XmlPullParser xpp, DocumentReference owner, DocumentReference.DocumentReferenceRelatesToComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7023 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 7024 res.setCodeElement(parseEnumeration(xpp, DocumentReference.DocumentRelationshipType.NULL, new DocumentReference.DocumentRelationshipTypeEnumFactory())); 7025 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 7026 res.setTarget(parseReference(xpp)); 7027 } else if (!parseBackboneContent(eventType, xpp, res)) 7028 return false; 7029 return true; 7030 } 7031 7032 protected DocumentReference.DocumentReferenceContentComponent parseDocumentReferenceDocumentReferenceContentComponent(XmlPullParser xpp, DocumentReference owner) throws XmlPullParserException, IOException, FHIRFormatError { 7033 DocumentReference.DocumentReferenceContentComponent res = new DocumentReference.DocumentReferenceContentComponent(); 7034 parseBackboneAttributes(xpp, res); 7035 next(xpp); 7036 int eventType = nextNoWhitespace(xpp); 7037 while (eventType != XmlPullParser.END_TAG) { 7038 if (!parseDocumentReferenceDocumentReferenceContentComponentContent(eventType, xpp, owner, res)) 7039 unknownContent(xpp); 7040 eventType = nextNoWhitespace(xpp); 7041 } 7042 next(xpp); 7043 parseElementClose(res); 7044 return res; 7045 } 7046 7047 protected boolean parseDocumentReferenceDocumentReferenceContentComponentContent(int eventType, XmlPullParser xpp, DocumentReference owner, DocumentReference.DocumentReferenceContentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7048 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("attachment")) { 7049 res.setAttachment(parseAttachment(xpp)); 7050 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("format")) { 7051 res.setFormat(parseCoding(xpp)); 7052 } else if (!parseBackboneContent(eventType, xpp, res)) 7053 return false; 7054 return true; 7055 } 7056 7057 protected DocumentReference.DocumentReferenceContextComponent parseDocumentReferenceDocumentReferenceContextComponent(XmlPullParser xpp, DocumentReference owner) throws XmlPullParserException, IOException, FHIRFormatError { 7058 DocumentReference.DocumentReferenceContextComponent res = new DocumentReference.DocumentReferenceContextComponent(); 7059 parseBackboneAttributes(xpp, res); 7060 next(xpp); 7061 int eventType = nextNoWhitespace(xpp); 7062 while (eventType != XmlPullParser.END_TAG) { 7063 if (!parseDocumentReferenceDocumentReferenceContextComponentContent(eventType, xpp, owner, res)) 7064 unknownContent(xpp); 7065 eventType = nextNoWhitespace(xpp); 7066 } 7067 next(xpp); 7068 parseElementClose(res); 7069 return res; 7070 } 7071 7072 protected boolean parseDocumentReferenceDocumentReferenceContextComponentContent(int eventType, XmlPullParser xpp, DocumentReference owner, DocumentReference.DocumentReferenceContextComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7073 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 7074 res.setEncounter(parseReference(xpp)); 7075 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 7076 res.getEvent().add(parseCodeableConcept(xpp)); 7077 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 7078 res.setPeriod(parsePeriod(xpp)); 7079 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("facilityType")) { 7080 res.setFacilityType(parseCodeableConcept(xpp)); 7081 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("practiceSetting")) { 7082 res.setPracticeSetting(parseCodeableConcept(xpp)); 7083 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sourcePatientInfo")) { 7084 res.setSourcePatientInfo(parseReference(xpp)); 7085 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("related")) { 7086 res.getRelated().add(parseDocumentReferenceDocumentReferenceContextRelatedComponent(xpp, owner)); 7087 } else if (!parseBackboneContent(eventType, xpp, res)) 7088 return false; 7089 return true; 7090 } 7091 7092 protected DocumentReference.DocumentReferenceContextRelatedComponent parseDocumentReferenceDocumentReferenceContextRelatedComponent(XmlPullParser xpp, DocumentReference owner) throws XmlPullParserException, IOException, FHIRFormatError { 7093 DocumentReference.DocumentReferenceContextRelatedComponent res = new DocumentReference.DocumentReferenceContextRelatedComponent(); 7094 parseBackboneAttributes(xpp, res); 7095 next(xpp); 7096 int eventType = nextNoWhitespace(xpp); 7097 while (eventType != XmlPullParser.END_TAG) { 7098 if (!parseDocumentReferenceDocumentReferenceContextRelatedComponentContent(eventType, xpp, owner, res)) 7099 unknownContent(xpp); 7100 eventType = nextNoWhitespace(xpp); 7101 } 7102 next(xpp); 7103 parseElementClose(res); 7104 return res; 7105 } 7106 7107 protected boolean parseDocumentReferenceDocumentReferenceContextRelatedComponentContent(int eventType, XmlPullParser xpp, DocumentReference owner, DocumentReference.DocumentReferenceContextRelatedComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7108 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7109 res.setIdentifier(parseIdentifier(xpp)); 7110 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ref")) { 7111 res.setRef(parseReference(xpp)); 7112 } else if (!parseBackboneContent(eventType, xpp, res)) 7113 return false; 7114 return true; 7115 } 7116 7117 protected EligibilityRequest parseEligibilityRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7118 EligibilityRequest res = new EligibilityRequest(); 7119 parseDomainResourceAttributes(xpp, res); 7120 next(xpp); 7121 int eventType = nextNoWhitespace(xpp); 7122 while (eventType != XmlPullParser.END_TAG) { 7123 if (!parseEligibilityRequestContent(eventType, xpp, res)) 7124 unknownContent(xpp); 7125 eventType = nextNoWhitespace(xpp); 7126 } 7127 next(xpp); 7128 parseElementClose(res); 7129 return res; 7130 } 7131 7132 protected boolean parseEligibilityRequestContent(int eventType, XmlPullParser xpp, EligibilityRequest res) throws XmlPullParserException, IOException, FHIRFormatError { 7133 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7134 res.getIdentifier().add(parseIdentifier(xpp)); 7135 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 7136 res.setStatusElement(parseEnumeration(xpp, EligibilityRequest.EligibilityRequestStatus.NULL, new EligibilityRequest.EligibilityRequestStatusEnumFactory())); 7137 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 7138 res.setPriority(parseCodeableConcept(xpp)); 7139 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 7140 res.setPatient(parseReference(xpp)); 7141 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "serviced")) { 7142 res.setServiced(parseType("serviced", xpp)); 7143 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 7144 res.setCreatedElement(parseDateTime(xpp)); 7145 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("enterer")) { 7146 res.setEnterer(parseReference(xpp)); 7147 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provider")) { 7148 res.setProvider(parseReference(xpp)); 7149 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 7150 res.setOrganization(parseReference(xpp)); 7151 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurer")) { 7152 res.setInsurer(parseReference(xpp)); 7153 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("facility")) { 7154 res.setFacility(parseReference(xpp)); 7155 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverage")) { 7156 res.setCoverage(parseReference(xpp)); 7157 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("businessArrangement")) { 7158 res.setBusinessArrangementElement(parseString(xpp)); 7159 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("benefitCategory")) { 7160 res.setBenefitCategory(parseCodeableConcept(xpp)); 7161 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("benefitSubCategory")) { 7162 res.setBenefitSubCategory(parseCodeableConcept(xpp)); 7163 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7164 return false; 7165 return true; 7166 } 7167 7168 protected EligibilityResponse parseEligibilityResponse(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7169 EligibilityResponse res = new EligibilityResponse(); 7170 parseDomainResourceAttributes(xpp, res); 7171 next(xpp); 7172 int eventType = nextNoWhitespace(xpp); 7173 while (eventType != XmlPullParser.END_TAG) { 7174 if (!parseEligibilityResponseContent(eventType, xpp, res)) 7175 unknownContent(xpp); 7176 eventType = nextNoWhitespace(xpp); 7177 } 7178 next(xpp); 7179 parseElementClose(res); 7180 return res; 7181 } 7182 7183 protected boolean parseEligibilityResponseContent(int eventType, XmlPullParser xpp, EligibilityResponse res) throws XmlPullParserException, IOException, FHIRFormatError { 7184 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7185 res.getIdentifier().add(parseIdentifier(xpp)); 7186 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 7187 res.setStatusElement(parseEnumeration(xpp, EligibilityResponse.EligibilityResponseStatus.NULL, new EligibilityResponse.EligibilityResponseStatusEnumFactory())); 7188 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 7189 res.setCreatedElement(parseDateTime(xpp)); 7190 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestProvider")) { 7191 res.setRequestProvider(parseReference(xpp)); 7192 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestOrganization")) { 7193 res.setRequestOrganization(parseReference(xpp)); 7194 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 7195 res.setRequest(parseReference(xpp)); 7196 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 7197 res.setOutcome(parseCodeableConcept(xpp)); 7198 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disposition")) { 7199 res.setDispositionElement(parseString(xpp)); 7200 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurer")) { 7201 res.setInsurer(parseReference(xpp)); 7202 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("inforce")) { 7203 res.setInforceElement(parseBoolean(xpp)); 7204 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurance")) { 7205 res.getInsurance().add(parseEligibilityResponseInsuranceComponent(xpp, res)); 7206 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("form")) { 7207 res.setForm(parseCodeableConcept(xpp)); 7208 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("error")) { 7209 res.getError().add(parseEligibilityResponseErrorsComponent(xpp, res)); 7210 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7211 return false; 7212 return true; 7213 } 7214 7215 protected EligibilityResponse.InsuranceComponent parseEligibilityResponseInsuranceComponent(XmlPullParser xpp, EligibilityResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 7216 EligibilityResponse.InsuranceComponent res = new EligibilityResponse.InsuranceComponent(); 7217 parseBackboneAttributes(xpp, res); 7218 next(xpp); 7219 int eventType = nextNoWhitespace(xpp); 7220 while (eventType != XmlPullParser.END_TAG) { 7221 if (!parseEligibilityResponseInsuranceComponentContent(eventType, xpp, owner, res)) 7222 unknownContent(xpp); 7223 eventType = nextNoWhitespace(xpp); 7224 } 7225 next(xpp); 7226 parseElementClose(res); 7227 return res; 7228 } 7229 7230 protected boolean parseEligibilityResponseInsuranceComponentContent(int eventType, XmlPullParser xpp, EligibilityResponse owner, EligibilityResponse.InsuranceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7231 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverage")) { 7232 res.setCoverage(parseReference(xpp)); 7233 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contract")) { 7234 res.setContract(parseReference(xpp)); 7235 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("benefitBalance")) { 7236 res.getBenefitBalance().add(parseEligibilityResponseBenefitsComponent(xpp, owner)); 7237 } else if (!parseBackboneContent(eventType, xpp, res)) 7238 return false; 7239 return true; 7240 } 7241 7242 protected EligibilityResponse.BenefitsComponent parseEligibilityResponseBenefitsComponent(XmlPullParser xpp, EligibilityResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 7243 EligibilityResponse.BenefitsComponent res = new EligibilityResponse.BenefitsComponent(); 7244 parseBackboneAttributes(xpp, res); 7245 next(xpp); 7246 int eventType = nextNoWhitespace(xpp); 7247 while (eventType != XmlPullParser.END_TAG) { 7248 if (!parseEligibilityResponseBenefitsComponentContent(eventType, xpp, owner, res)) 7249 unknownContent(xpp); 7250 eventType = nextNoWhitespace(xpp); 7251 } 7252 next(xpp); 7253 parseElementClose(res); 7254 return res; 7255 } 7256 7257 protected boolean parseEligibilityResponseBenefitsComponentContent(int eventType, XmlPullParser xpp, EligibilityResponse owner, EligibilityResponse.BenefitsComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7258 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 7259 res.setCategory(parseCodeableConcept(xpp)); 7260 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subCategory")) { 7261 res.setSubCategory(parseCodeableConcept(xpp)); 7262 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("excluded")) { 7263 res.setExcludedElement(parseBoolean(xpp)); 7264 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 7265 res.setNameElement(parseString(xpp)); 7266 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 7267 res.setDescriptionElement(parseString(xpp)); 7268 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("network")) { 7269 res.setNetwork(parseCodeableConcept(xpp)); 7270 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unit")) { 7271 res.setUnit(parseCodeableConcept(xpp)); 7272 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("term")) { 7273 res.setTerm(parseCodeableConcept(xpp)); 7274 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("financial")) { 7275 res.getFinancial().add(parseEligibilityResponseBenefitComponent(xpp, owner)); 7276 } else if (!parseBackboneContent(eventType, xpp, res)) 7277 return false; 7278 return true; 7279 } 7280 7281 protected EligibilityResponse.BenefitComponent parseEligibilityResponseBenefitComponent(XmlPullParser xpp, EligibilityResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 7282 EligibilityResponse.BenefitComponent res = new EligibilityResponse.BenefitComponent(); 7283 parseBackboneAttributes(xpp, res); 7284 next(xpp); 7285 int eventType = nextNoWhitespace(xpp); 7286 while (eventType != XmlPullParser.END_TAG) { 7287 if (!parseEligibilityResponseBenefitComponentContent(eventType, xpp, owner, res)) 7288 unknownContent(xpp); 7289 eventType = nextNoWhitespace(xpp); 7290 } 7291 next(xpp); 7292 parseElementClose(res); 7293 return res; 7294 } 7295 7296 protected boolean parseEligibilityResponseBenefitComponentContent(int eventType, XmlPullParser xpp, EligibilityResponse owner, EligibilityResponse.BenefitComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7297 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 7298 res.setType(parseCodeableConcept(xpp)); 7299 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "allowed")) { 7300 res.setAllowed(parseType("allowed", xpp)); 7301 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "used")) { 7302 res.setUsed(parseType("used", xpp)); 7303 } else if (!parseBackboneContent(eventType, xpp, res)) 7304 return false; 7305 return true; 7306 } 7307 7308 protected EligibilityResponse.ErrorsComponent parseEligibilityResponseErrorsComponent(XmlPullParser xpp, EligibilityResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 7309 EligibilityResponse.ErrorsComponent res = new EligibilityResponse.ErrorsComponent(); 7310 parseBackboneAttributes(xpp, res); 7311 next(xpp); 7312 int eventType = nextNoWhitespace(xpp); 7313 while (eventType != XmlPullParser.END_TAG) { 7314 if (!parseEligibilityResponseErrorsComponentContent(eventType, xpp, owner, res)) 7315 unknownContent(xpp); 7316 eventType = nextNoWhitespace(xpp); 7317 } 7318 next(xpp); 7319 parseElementClose(res); 7320 return res; 7321 } 7322 7323 protected boolean parseEligibilityResponseErrorsComponentContent(int eventType, XmlPullParser xpp, EligibilityResponse owner, EligibilityResponse.ErrorsComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7324 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 7325 res.setCode(parseCodeableConcept(xpp)); 7326 } else if (!parseBackboneContent(eventType, xpp, res)) 7327 return false; 7328 return true; 7329 } 7330 7331 protected Encounter parseEncounter(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7332 Encounter res = new Encounter(); 7333 parseDomainResourceAttributes(xpp, res); 7334 next(xpp); 7335 int eventType = nextNoWhitespace(xpp); 7336 while (eventType != XmlPullParser.END_TAG) { 7337 if (!parseEncounterContent(eventType, xpp, res)) 7338 unknownContent(xpp); 7339 eventType = nextNoWhitespace(xpp); 7340 } 7341 next(xpp); 7342 parseElementClose(res); 7343 return res; 7344 } 7345 7346 protected boolean parseEncounterContent(int eventType, XmlPullParser xpp, Encounter res) throws XmlPullParserException, IOException, FHIRFormatError { 7347 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7348 res.getIdentifier().add(parseIdentifier(xpp)); 7349 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 7350 res.setStatusElement(parseEnumeration(xpp, Encounter.EncounterStatus.NULL, new Encounter.EncounterStatusEnumFactory())); 7351 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusHistory")) { 7352 res.getStatusHistory().add(parseEncounterStatusHistoryComponent(xpp, res)); 7353 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("class")) { 7354 res.setClass_(parseCoding(xpp)); 7355 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("classHistory")) { 7356 res.getClassHistory().add(parseEncounterClassHistoryComponent(xpp, res)); 7357 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 7358 res.getType().add(parseCodeableConcept(xpp)); 7359 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 7360 res.setPriority(parseCodeableConcept(xpp)); 7361 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 7362 res.setSubject(parseReference(xpp)); 7363 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("episodeOfCare")) { 7364 res.getEpisodeOfCare().add(parseReference(xpp)); 7365 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("incomingReferral")) { 7366 res.getIncomingReferral().add(parseReference(xpp)); 7367 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 7368 res.getParticipant().add(parseEncounterEncounterParticipantComponent(xpp, res)); 7369 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("appointment")) { 7370 res.setAppointment(parseReference(xpp)); 7371 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 7372 res.setPeriod(parsePeriod(xpp)); 7373 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("length")) { 7374 res.setLength(parseDuration(xpp)); 7375 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 7376 res.getReason().add(parseCodeableConcept(xpp)); 7377 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnosis")) { 7378 res.getDiagnosis().add(parseEncounterDiagnosisComponent(xpp, res)); 7379 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("account")) { 7380 res.getAccount().add(parseReference(xpp)); 7381 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("hospitalization")) { 7382 res.setHospitalization(parseEncounterEncounterHospitalizationComponent(xpp, res)); 7383 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 7384 res.getLocation().add(parseEncounterEncounterLocationComponent(xpp, res)); 7385 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceProvider")) { 7386 res.setServiceProvider(parseReference(xpp)); 7387 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 7388 res.setPartOf(parseReference(xpp)); 7389 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7390 return false; 7391 return true; 7392 } 7393 7394 protected Encounter.StatusHistoryComponent parseEncounterStatusHistoryComponent(XmlPullParser xpp, Encounter owner) throws XmlPullParserException, IOException, FHIRFormatError { 7395 Encounter.StatusHistoryComponent res = new Encounter.StatusHistoryComponent(); 7396 parseBackboneAttributes(xpp, res); 7397 next(xpp); 7398 int eventType = nextNoWhitespace(xpp); 7399 while (eventType != XmlPullParser.END_TAG) { 7400 if (!parseEncounterStatusHistoryComponentContent(eventType, xpp, owner, res)) 7401 unknownContent(xpp); 7402 eventType = nextNoWhitespace(xpp); 7403 } 7404 next(xpp); 7405 parseElementClose(res); 7406 return res; 7407 } 7408 7409 protected boolean parseEncounterStatusHistoryComponentContent(int eventType, XmlPullParser xpp, Encounter owner, Encounter.StatusHistoryComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7410 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 7411 res.setStatusElement(parseEnumeration(xpp, Encounter.EncounterStatus.NULL, new Encounter.EncounterStatusEnumFactory())); 7412 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 7413 res.setPeriod(parsePeriod(xpp)); 7414 } else if (!parseBackboneContent(eventType, xpp, res)) 7415 return false; 7416 return true; 7417 } 7418 7419 protected Encounter.ClassHistoryComponent parseEncounterClassHistoryComponent(XmlPullParser xpp, Encounter owner) throws XmlPullParserException, IOException, FHIRFormatError { 7420 Encounter.ClassHistoryComponent res = new Encounter.ClassHistoryComponent(); 7421 parseBackboneAttributes(xpp, res); 7422 next(xpp); 7423 int eventType = nextNoWhitespace(xpp); 7424 while (eventType != XmlPullParser.END_TAG) { 7425 if (!parseEncounterClassHistoryComponentContent(eventType, xpp, owner, res)) 7426 unknownContent(xpp); 7427 eventType = nextNoWhitespace(xpp); 7428 } 7429 next(xpp); 7430 parseElementClose(res); 7431 return res; 7432 } 7433 7434 protected boolean parseEncounterClassHistoryComponentContent(int eventType, XmlPullParser xpp, Encounter owner, Encounter.ClassHistoryComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7435 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("class")) { 7436 res.setClass_(parseCoding(xpp)); 7437 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 7438 res.setPeriod(parsePeriod(xpp)); 7439 } else if (!parseBackboneContent(eventType, xpp, res)) 7440 return false; 7441 return true; 7442 } 7443 7444 protected Encounter.EncounterParticipantComponent parseEncounterEncounterParticipantComponent(XmlPullParser xpp, Encounter owner) throws XmlPullParserException, IOException, FHIRFormatError { 7445 Encounter.EncounterParticipantComponent res = new Encounter.EncounterParticipantComponent(); 7446 parseBackboneAttributes(xpp, res); 7447 next(xpp); 7448 int eventType = nextNoWhitespace(xpp); 7449 while (eventType != XmlPullParser.END_TAG) { 7450 if (!parseEncounterEncounterParticipantComponentContent(eventType, xpp, owner, res)) 7451 unknownContent(xpp); 7452 eventType = nextNoWhitespace(xpp); 7453 } 7454 next(xpp); 7455 parseElementClose(res); 7456 return res; 7457 } 7458 7459 protected boolean parseEncounterEncounterParticipantComponentContent(int eventType, XmlPullParser xpp, Encounter owner, Encounter.EncounterParticipantComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7460 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 7461 res.getType().add(parseCodeableConcept(xpp)); 7462 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 7463 res.setPeriod(parsePeriod(xpp)); 7464 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("individual")) { 7465 res.setIndividual(parseReference(xpp)); 7466 } else if (!parseBackboneContent(eventType, xpp, res)) 7467 return false; 7468 return true; 7469 } 7470 7471 protected Encounter.DiagnosisComponent parseEncounterDiagnosisComponent(XmlPullParser xpp, Encounter owner) throws XmlPullParserException, IOException, FHIRFormatError { 7472 Encounter.DiagnosisComponent res = new Encounter.DiagnosisComponent(); 7473 parseBackboneAttributes(xpp, res); 7474 next(xpp); 7475 int eventType = nextNoWhitespace(xpp); 7476 while (eventType != XmlPullParser.END_TAG) { 7477 if (!parseEncounterDiagnosisComponentContent(eventType, xpp, owner, res)) 7478 unknownContent(xpp); 7479 eventType = nextNoWhitespace(xpp); 7480 } 7481 next(xpp); 7482 parseElementClose(res); 7483 return res; 7484 } 7485 7486 protected boolean parseEncounterDiagnosisComponentContent(int eventType, XmlPullParser xpp, Encounter owner, Encounter.DiagnosisComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7487 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 7488 res.setCondition(parseReference(xpp)); 7489 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 7490 res.setRole(parseCodeableConcept(xpp)); 7491 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rank")) { 7492 res.setRankElement(parsePositiveInt(xpp)); 7493 } else if (!parseBackboneContent(eventType, xpp, res)) 7494 return false; 7495 return true; 7496 } 7497 7498 protected Encounter.EncounterHospitalizationComponent parseEncounterEncounterHospitalizationComponent(XmlPullParser xpp, Encounter owner) throws XmlPullParserException, IOException, FHIRFormatError { 7499 Encounter.EncounterHospitalizationComponent res = new Encounter.EncounterHospitalizationComponent(); 7500 parseBackboneAttributes(xpp, res); 7501 next(xpp); 7502 int eventType = nextNoWhitespace(xpp); 7503 while (eventType != XmlPullParser.END_TAG) { 7504 if (!parseEncounterEncounterHospitalizationComponentContent(eventType, xpp, owner, res)) 7505 unknownContent(xpp); 7506 eventType = nextNoWhitespace(xpp); 7507 } 7508 next(xpp); 7509 parseElementClose(res); 7510 return res; 7511 } 7512 7513 protected boolean parseEncounterEncounterHospitalizationComponentContent(int eventType, XmlPullParser xpp, Encounter owner, Encounter.EncounterHospitalizationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7514 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preAdmissionIdentifier")) { 7515 res.setPreAdmissionIdentifier(parseIdentifier(xpp)); 7516 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("origin")) { 7517 res.setOrigin(parseReference(xpp)); 7518 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("admitSource")) { 7519 res.setAdmitSource(parseCodeableConcept(xpp)); 7520 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reAdmission")) { 7521 res.setReAdmission(parseCodeableConcept(xpp)); 7522 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dietPreference")) { 7523 res.getDietPreference().add(parseCodeableConcept(xpp)); 7524 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialCourtesy")) { 7525 res.getSpecialCourtesy().add(parseCodeableConcept(xpp)); 7526 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialArrangement")) { 7527 res.getSpecialArrangement().add(parseCodeableConcept(xpp)); 7528 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 7529 res.setDestination(parseReference(xpp)); 7530 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dischargeDisposition")) { 7531 res.setDischargeDisposition(parseCodeableConcept(xpp)); 7532 } else if (!parseBackboneContent(eventType, xpp, res)) 7533 return false; 7534 return true; 7535 } 7536 7537 protected Encounter.EncounterLocationComponent parseEncounterEncounterLocationComponent(XmlPullParser xpp, Encounter owner) throws XmlPullParserException, IOException, FHIRFormatError { 7538 Encounter.EncounterLocationComponent res = new Encounter.EncounterLocationComponent(); 7539 parseBackboneAttributes(xpp, res); 7540 next(xpp); 7541 int eventType = nextNoWhitespace(xpp); 7542 while (eventType != XmlPullParser.END_TAG) { 7543 if (!parseEncounterEncounterLocationComponentContent(eventType, xpp, owner, res)) 7544 unknownContent(xpp); 7545 eventType = nextNoWhitespace(xpp); 7546 } 7547 next(xpp); 7548 parseElementClose(res); 7549 return res; 7550 } 7551 7552 protected boolean parseEncounterEncounterLocationComponentContent(int eventType, XmlPullParser xpp, Encounter owner, Encounter.EncounterLocationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7553 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 7554 res.setLocation(parseReference(xpp)); 7555 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 7556 res.setStatusElement(parseEnumeration(xpp, Encounter.EncounterLocationStatus.NULL, new Encounter.EncounterLocationStatusEnumFactory())); 7557 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 7558 res.setPeriod(parsePeriod(xpp)); 7559 } else if (!parseBackboneContent(eventType, xpp, res)) 7560 return false; 7561 return true; 7562 } 7563 7564 protected Endpoint parseEndpoint(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7565 Endpoint res = new Endpoint(); 7566 parseDomainResourceAttributes(xpp, res); 7567 next(xpp); 7568 int eventType = nextNoWhitespace(xpp); 7569 while (eventType != XmlPullParser.END_TAG) { 7570 if (!parseEndpointContent(eventType, xpp, res)) 7571 unknownContent(xpp); 7572 eventType = nextNoWhitespace(xpp); 7573 } 7574 next(xpp); 7575 parseElementClose(res); 7576 return res; 7577 } 7578 7579 protected boolean parseEndpointContent(int eventType, XmlPullParser xpp, Endpoint res) throws XmlPullParserException, IOException, FHIRFormatError { 7580 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7581 res.getIdentifier().add(parseIdentifier(xpp)); 7582 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 7583 res.setStatusElement(parseEnumeration(xpp, Endpoint.EndpointStatus.NULL, new Endpoint.EndpointStatusEnumFactory())); 7584 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("connectionType")) { 7585 res.setConnectionType(parseCoding(xpp)); 7586 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 7587 res.setNameElement(parseString(xpp)); 7588 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("managingOrganization")) { 7589 res.setManagingOrganization(parseReference(xpp)); 7590 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 7591 res.getContact().add(parseContactPoint(xpp)); 7592 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 7593 res.setPeriod(parsePeriod(xpp)); 7594 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payloadType")) { 7595 res.getPayloadType().add(parseCodeableConcept(xpp)); 7596 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payloadMimeType")) { 7597 res.getPayloadMimeType().add(parseCode(xpp)); 7598 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 7599 res.setAddressElement(parseUri(xpp)); 7600 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("header")) { 7601 res.getHeader().add(parseString(xpp)); 7602 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7603 return false; 7604 return true; 7605 } 7606 7607 protected EnrollmentRequest parseEnrollmentRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7608 EnrollmentRequest res = new EnrollmentRequest(); 7609 parseDomainResourceAttributes(xpp, res); 7610 next(xpp); 7611 int eventType = nextNoWhitespace(xpp); 7612 while (eventType != XmlPullParser.END_TAG) { 7613 if (!parseEnrollmentRequestContent(eventType, xpp, res)) 7614 unknownContent(xpp); 7615 eventType = nextNoWhitespace(xpp); 7616 } 7617 next(xpp); 7618 parseElementClose(res); 7619 return res; 7620 } 7621 7622 protected boolean parseEnrollmentRequestContent(int eventType, XmlPullParser xpp, EnrollmentRequest res) throws XmlPullParserException, IOException, FHIRFormatError { 7623 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7624 res.getIdentifier().add(parseIdentifier(xpp)); 7625 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 7626 res.setStatusElement(parseEnumeration(xpp, EnrollmentRequest.EnrollmentRequestStatus.NULL, new EnrollmentRequest.EnrollmentRequestStatusEnumFactory())); 7627 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 7628 res.setCreatedElement(parseDateTime(xpp)); 7629 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurer")) { 7630 res.setInsurer(parseReference(xpp)); 7631 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provider")) { 7632 res.setProvider(parseReference(xpp)); 7633 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 7634 res.setOrganization(parseReference(xpp)); 7635 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 7636 res.setSubject(parseReference(xpp)); 7637 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverage")) { 7638 res.setCoverage(parseReference(xpp)); 7639 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7640 return false; 7641 return true; 7642 } 7643 7644 protected EnrollmentResponse parseEnrollmentResponse(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7645 EnrollmentResponse res = new EnrollmentResponse(); 7646 parseDomainResourceAttributes(xpp, res); 7647 next(xpp); 7648 int eventType = nextNoWhitespace(xpp); 7649 while (eventType != XmlPullParser.END_TAG) { 7650 if (!parseEnrollmentResponseContent(eventType, xpp, res)) 7651 unknownContent(xpp); 7652 eventType = nextNoWhitespace(xpp); 7653 } 7654 next(xpp); 7655 parseElementClose(res); 7656 return res; 7657 } 7658 7659 protected boolean parseEnrollmentResponseContent(int eventType, XmlPullParser xpp, EnrollmentResponse res) throws XmlPullParserException, IOException, FHIRFormatError { 7660 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7661 res.getIdentifier().add(parseIdentifier(xpp)); 7662 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 7663 res.setStatusElement(parseEnumeration(xpp, EnrollmentResponse.EnrollmentResponseStatus.NULL, new EnrollmentResponse.EnrollmentResponseStatusEnumFactory())); 7664 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 7665 res.setRequest(parseReference(xpp)); 7666 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 7667 res.setOutcome(parseCodeableConcept(xpp)); 7668 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disposition")) { 7669 res.setDispositionElement(parseString(xpp)); 7670 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 7671 res.setCreatedElement(parseDateTime(xpp)); 7672 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 7673 res.setOrganization(parseReference(xpp)); 7674 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestProvider")) { 7675 res.setRequestProvider(parseReference(xpp)); 7676 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestOrganization")) { 7677 res.setRequestOrganization(parseReference(xpp)); 7678 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7679 return false; 7680 return true; 7681 } 7682 7683 protected EpisodeOfCare parseEpisodeOfCare(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7684 EpisodeOfCare res = new EpisodeOfCare(); 7685 parseDomainResourceAttributes(xpp, res); 7686 next(xpp); 7687 int eventType = nextNoWhitespace(xpp); 7688 while (eventType != XmlPullParser.END_TAG) { 7689 if (!parseEpisodeOfCareContent(eventType, xpp, res)) 7690 unknownContent(xpp); 7691 eventType = nextNoWhitespace(xpp); 7692 } 7693 next(xpp); 7694 parseElementClose(res); 7695 return res; 7696 } 7697 7698 protected boolean parseEpisodeOfCareContent(int eventType, XmlPullParser xpp, EpisodeOfCare res) throws XmlPullParserException, IOException, FHIRFormatError { 7699 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7700 res.getIdentifier().add(parseIdentifier(xpp)); 7701 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 7702 res.setStatusElement(parseEnumeration(xpp, EpisodeOfCare.EpisodeOfCareStatus.NULL, new EpisodeOfCare.EpisodeOfCareStatusEnumFactory())); 7703 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusHistory")) { 7704 res.getStatusHistory().add(parseEpisodeOfCareEpisodeOfCareStatusHistoryComponent(xpp, res)); 7705 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 7706 res.getType().add(parseCodeableConcept(xpp)); 7707 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnosis")) { 7708 res.getDiagnosis().add(parseEpisodeOfCareDiagnosisComponent(xpp, res)); 7709 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 7710 res.setPatient(parseReference(xpp)); 7711 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("managingOrganization")) { 7712 res.setManagingOrganization(parseReference(xpp)); 7713 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 7714 res.setPeriod(parsePeriod(xpp)); 7715 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referralRequest")) { 7716 res.getReferralRequest().add(parseReference(xpp)); 7717 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("careManager")) { 7718 res.setCareManager(parseReference(xpp)); 7719 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("team")) { 7720 res.getTeam().add(parseReference(xpp)); 7721 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("account")) { 7722 res.getAccount().add(parseReference(xpp)); 7723 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7724 return false; 7725 return true; 7726 } 7727 7728 protected EpisodeOfCare.EpisodeOfCareStatusHistoryComponent parseEpisodeOfCareEpisodeOfCareStatusHistoryComponent(XmlPullParser xpp, EpisodeOfCare owner) throws XmlPullParserException, IOException, FHIRFormatError { 7729 EpisodeOfCare.EpisodeOfCareStatusHistoryComponent res = new EpisodeOfCare.EpisodeOfCareStatusHistoryComponent(); 7730 parseBackboneAttributes(xpp, res); 7731 next(xpp); 7732 int eventType = nextNoWhitespace(xpp); 7733 while (eventType != XmlPullParser.END_TAG) { 7734 if (!parseEpisodeOfCareEpisodeOfCareStatusHistoryComponentContent(eventType, xpp, owner, res)) 7735 unknownContent(xpp); 7736 eventType = nextNoWhitespace(xpp); 7737 } 7738 next(xpp); 7739 parseElementClose(res); 7740 return res; 7741 } 7742 7743 protected boolean parseEpisodeOfCareEpisodeOfCareStatusHistoryComponentContent(int eventType, XmlPullParser xpp, EpisodeOfCare owner, EpisodeOfCare.EpisodeOfCareStatusHistoryComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7744 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 7745 res.setStatusElement(parseEnumeration(xpp, EpisodeOfCare.EpisodeOfCareStatus.NULL, new EpisodeOfCare.EpisodeOfCareStatusEnumFactory())); 7746 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 7747 res.setPeriod(parsePeriod(xpp)); 7748 } else if (!parseBackboneContent(eventType, xpp, res)) 7749 return false; 7750 return true; 7751 } 7752 7753 protected EpisodeOfCare.DiagnosisComponent parseEpisodeOfCareDiagnosisComponent(XmlPullParser xpp, EpisodeOfCare owner) throws XmlPullParserException, IOException, FHIRFormatError { 7754 EpisodeOfCare.DiagnosisComponent res = new EpisodeOfCare.DiagnosisComponent(); 7755 parseBackboneAttributes(xpp, res); 7756 next(xpp); 7757 int eventType = nextNoWhitespace(xpp); 7758 while (eventType != XmlPullParser.END_TAG) { 7759 if (!parseEpisodeOfCareDiagnosisComponentContent(eventType, xpp, owner, res)) 7760 unknownContent(xpp); 7761 eventType = nextNoWhitespace(xpp); 7762 } 7763 next(xpp); 7764 parseElementClose(res); 7765 return res; 7766 } 7767 7768 protected boolean parseEpisodeOfCareDiagnosisComponentContent(int eventType, XmlPullParser xpp, EpisodeOfCare owner, EpisodeOfCare.DiagnosisComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7769 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 7770 res.setCondition(parseReference(xpp)); 7771 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 7772 res.setRole(parseCodeableConcept(xpp)); 7773 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rank")) { 7774 res.setRankElement(parsePositiveInt(xpp)); 7775 } else if (!parseBackboneContent(eventType, xpp, res)) 7776 return false; 7777 return true; 7778 } 7779 7780 protected ExpansionProfile parseExpansionProfile(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7781 ExpansionProfile res = new ExpansionProfile(); 7782 parseDomainResourceAttributes(xpp, res); 7783 next(xpp); 7784 int eventType = nextNoWhitespace(xpp); 7785 while (eventType != XmlPullParser.END_TAG) { 7786 if (!parseExpansionProfileContent(eventType, xpp, res)) 7787 unknownContent(xpp); 7788 eventType = nextNoWhitespace(xpp); 7789 } 7790 next(xpp); 7791 parseElementClose(res); 7792 return res; 7793 } 7794 7795 protected boolean parseExpansionProfileContent(int eventType, XmlPullParser xpp, ExpansionProfile res) throws XmlPullParserException, IOException, FHIRFormatError { 7796 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 7797 res.setUrlElement(parseUri(xpp)); 7798 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7799 res.setIdentifier(parseIdentifier(xpp)); 7800 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 7801 res.setVersionElement(parseString(xpp)); 7802 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 7803 res.setNameElement(parseString(xpp)); 7804 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 7805 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 7806 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 7807 res.setExperimentalElement(parseBoolean(xpp)); 7808 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 7809 res.setDateElement(parseDateTime(xpp)); 7810 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 7811 res.setPublisherElement(parseString(xpp)); 7812 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 7813 res.getContact().add(parseContactDetail(xpp)); 7814 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 7815 res.setDescriptionElement(parseMarkdown(xpp)); 7816 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 7817 res.getUseContext().add(parseUsageContext(xpp)); 7818 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 7819 res.getJurisdiction().add(parseCodeableConcept(xpp)); 7820 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fixedVersion")) { 7821 res.getFixedVersion().add(parseExpansionProfileExpansionProfileFixedVersionComponent(xpp, res)); 7822 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("excludedSystem")) { 7823 res.setExcludedSystem(parseExpansionProfileExpansionProfileExcludedSystemComponent(xpp, res)); 7824 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("includeDesignations")) { 7825 res.setIncludeDesignationsElement(parseBoolean(xpp)); 7826 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("designation")) { 7827 res.setDesignation(parseExpansionProfileExpansionProfileDesignationComponent(xpp, res)); 7828 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("includeDefinition")) { 7829 res.setIncludeDefinitionElement(parseBoolean(xpp)); 7830 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("activeOnly")) { 7831 res.setActiveOnlyElement(parseBoolean(xpp)); 7832 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("excludeNested")) { 7833 res.setExcludeNestedElement(parseBoolean(xpp)); 7834 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("excludeNotForUI")) { 7835 res.setExcludeNotForUIElement(parseBoolean(xpp)); 7836 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("excludePostCoordinated")) { 7837 res.setExcludePostCoordinatedElement(parseBoolean(xpp)); 7838 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("displayLanguage")) { 7839 res.setDisplayLanguageElement(parseCode(xpp)); 7840 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("limitedExpansion")) { 7841 res.setLimitedExpansionElement(parseBoolean(xpp)); 7842 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7843 return false; 7844 return true; 7845 } 7846 7847 protected ExpansionProfile.ExpansionProfileFixedVersionComponent parseExpansionProfileExpansionProfileFixedVersionComponent(XmlPullParser xpp, ExpansionProfile owner) throws XmlPullParserException, IOException, FHIRFormatError { 7848 ExpansionProfile.ExpansionProfileFixedVersionComponent res = new ExpansionProfile.ExpansionProfileFixedVersionComponent(); 7849 parseBackboneAttributes(xpp, res); 7850 next(xpp); 7851 int eventType = nextNoWhitespace(xpp); 7852 while (eventType != XmlPullParser.END_TAG) { 7853 if (!parseExpansionProfileExpansionProfileFixedVersionComponentContent(eventType, xpp, owner, res)) 7854 unknownContent(xpp); 7855 eventType = nextNoWhitespace(xpp); 7856 } 7857 next(xpp); 7858 parseElementClose(res); 7859 return res; 7860 } 7861 7862 protected boolean parseExpansionProfileExpansionProfileFixedVersionComponentContent(int eventType, XmlPullParser xpp, ExpansionProfile owner, ExpansionProfile.ExpansionProfileFixedVersionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7863 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 7864 res.setSystemElement(parseUri(xpp)); 7865 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 7866 res.setVersionElement(parseString(xpp)); 7867 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 7868 res.setModeElement(parseEnumeration(xpp, ExpansionProfile.SystemVersionProcessingMode.NULL, new ExpansionProfile.SystemVersionProcessingModeEnumFactory())); 7869 } else if (!parseBackboneContent(eventType, xpp, res)) 7870 return false; 7871 return true; 7872 } 7873 7874 protected ExpansionProfile.ExpansionProfileExcludedSystemComponent parseExpansionProfileExpansionProfileExcludedSystemComponent(XmlPullParser xpp, ExpansionProfile owner) throws XmlPullParserException, IOException, FHIRFormatError { 7875 ExpansionProfile.ExpansionProfileExcludedSystemComponent res = new ExpansionProfile.ExpansionProfileExcludedSystemComponent(); 7876 parseBackboneAttributes(xpp, res); 7877 next(xpp); 7878 int eventType = nextNoWhitespace(xpp); 7879 while (eventType != XmlPullParser.END_TAG) { 7880 if (!parseExpansionProfileExpansionProfileExcludedSystemComponentContent(eventType, xpp, owner, res)) 7881 unknownContent(xpp); 7882 eventType = nextNoWhitespace(xpp); 7883 } 7884 next(xpp); 7885 parseElementClose(res); 7886 return res; 7887 } 7888 7889 protected boolean parseExpansionProfileExpansionProfileExcludedSystemComponentContent(int eventType, XmlPullParser xpp, ExpansionProfile owner, ExpansionProfile.ExpansionProfileExcludedSystemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7890 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 7891 res.setSystemElement(parseUri(xpp)); 7892 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 7893 res.setVersionElement(parseString(xpp)); 7894 } else if (!parseBackboneContent(eventType, xpp, res)) 7895 return false; 7896 return true; 7897 } 7898 7899 protected ExpansionProfile.ExpansionProfileDesignationComponent parseExpansionProfileExpansionProfileDesignationComponent(XmlPullParser xpp, ExpansionProfile owner) throws XmlPullParserException, IOException, FHIRFormatError { 7900 ExpansionProfile.ExpansionProfileDesignationComponent res = new ExpansionProfile.ExpansionProfileDesignationComponent(); 7901 parseBackboneAttributes(xpp, res); 7902 next(xpp); 7903 int eventType = nextNoWhitespace(xpp); 7904 while (eventType != XmlPullParser.END_TAG) { 7905 if (!parseExpansionProfileExpansionProfileDesignationComponentContent(eventType, xpp, owner, res)) 7906 unknownContent(xpp); 7907 eventType = nextNoWhitespace(xpp); 7908 } 7909 next(xpp); 7910 parseElementClose(res); 7911 return res; 7912 } 7913 7914 protected boolean parseExpansionProfileExpansionProfileDesignationComponentContent(int eventType, XmlPullParser xpp, ExpansionProfile owner, ExpansionProfile.ExpansionProfileDesignationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7915 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("include")) { 7916 res.setInclude(parseExpansionProfileDesignationIncludeComponent(xpp, owner)); 7917 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exclude")) { 7918 res.setExclude(parseExpansionProfileDesignationExcludeComponent(xpp, owner)); 7919 } else if (!parseBackboneContent(eventType, xpp, res)) 7920 return false; 7921 return true; 7922 } 7923 7924 protected ExpansionProfile.DesignationIncludeComponent parseExpansionProfileDesignationIncludeComponent(XmlPullParser xpp, ExpansionProfile owner) throws XmlPullParserException, IOException, FHIRFormatError { 7925 ExpansionProfile.DesignationIncludeComponent res = new ExpansionProfile.DesignationIncludeComponent(); 7926 parseBackboneAttributes(xpp, res); 7927 next(xpp); 7928 int eventType = nextNoWhitespace(xpp); 7929 while (eventType != XmlPullParser.END_TAG) { 7930 if (!parseExpansionProfileDesignationIncludeComponentContent(eventType, xpp, owner, res)) 7931 unknownContent(xpp); 7932 eventType = nextNoWhitespace(xpp); 7933 } 7934 next(xpp); 7935 parseElementClose(res); 7936 return res; 7937 } 7938 7939 protected boolean parseExpansionProfileDesignationIncludeComponentContent(int eventType, XmlPullParser xpp, ExpansionProfile owner, ExpansionProfile.DesignationIncludeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7940 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("designation")) { 7941 res.getDesignation().add(parseExpansionProfileDesignationIncludeDesignationComponent(xpp, owner)); 7942 } else if (!parseBackboneContent(eventType, xpp, res)) 7943 return false; 7944 return true; 7945 } 7946 7947 protected ExpansionProfile.DesignationIncludeDesignationComponent parseExpansionProfileDesignationIncludeDesignationComponent(XmlPullParser xpp, ExpansionProfile owner) throws XmlPullParserException, IOException, FHIRFormatError { 7948 ExpansionProfile.DesignationIncludeDesignationComponent res = new ExpansionProfile.DesignationIncludeDesignationComponent(); 7949 parseBackboneAttributes(xpp, res); 7950 next(xpp); 7951 int eventType = nextNoWhitespace(xpp); 7952 while (eventType != XmlPullParser.END_TAG) { 7953 if (!parseExpansionProfileDesignationIncludeDesignationComponentContent(eventType, xpp, owner, res)) 7954 unknownContent(xpp); 7955 eventType = nextNoWhitespace(xpp); 7956 } 7957 next(xpp); 7958 parseElementClose(res); 7959 return res; 7960 } 7961 7962 protected boolean parseExpansionProfileDesignationIncludeDesignationComponentContent(int eventType, XmlPullParser xpp, ExpansionProfile owner, ExpansionProfile.DesignationIncludeDesignationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7963 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 7964 res.setLanguageElement(parseCode(xpp)); 7965 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 7966 res.setUse(parseCoding(xpp)); 7967 } else if (!parseBackboneContent(eventType, xpp, res)) 7968 return false; 7969 return true; 7970 } 7971 7972 protected ExpansionProfile.DesignationExcludeComponent parseExpansionProfileDesignationExcludeComponent(XmlPullParser xpp, ExpansionProfile owner) throws XmlPullParserException, IOException, FHIRFormatError { 7973 ExpansionProfile.DesignationExcludeComponent res = new ExpansionProfile.DesignationExcludeComponent(); 7974 parseBackboneAttributes(xpp, res); 7975 next(xpp); 7976 int eventType = nextNoWhitespace(xpp); 7977 while (eventType != XmlPullParser.END_TAG) { 7978 if (!parseExpansionProfileDesignationExcludeComponentContent(eventType, xpp, owner, res)) 7979 unknownContent(xpp); 7980 eventType = nextNoWhitespace(xpp); 7981 } 7982 next(xpp); 7983 parseElementClose(res); 7984 return res; 7985 } 7986 7987 protected boolean parseExpansionProfileDesignationExcludeComponentContent(int eventType, XmlPullParser xpp, ExpansionProfile owner, ExpansionProfile.DesignationExcludeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7988 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("designation")) { 7989 res.getDesignation().add(parseExpansionProfileDesignationExcludeDesignationComponent(xpp, owner)); 7990 } else if (!parseBackboneContent(eventType, xpp, res)) 7991 return false; 7992 return true; 7993 } 7994 7995 protected ExpansionProfile.DesignationExcludeDesignationComponent parseExpansionProfileDesignationExcludeDesignationComponent(XmlPullParser xpp, ExpansionProfile owner) throws XmlPullParserException, IOException, FHIRFormatError { 7996 ExpansionProfile.DesignationExcludeDesignationComponent res = new ExpansionProfile.DesignationExcludeDesignationComponent(); 7997 parseBackboneAttributes(xpp, res); 7998 next(xpp); 7999 int eventType = nextNoWhitespace(xpp); 8000 while (eventType != XmlPullParser.END_TAG) { 8001 if (!parseExpansionProfileDesignationExcludeDesignationComponentContent(eventType, xpp, owner, res)) 8002 unknownContent(xpp); 8003 eventType = nextNoWhitespace(xpp); 8004 } 8005 next(xpp); 8006 parseElementClose(res); 8007 return res; 8008 } 8009 8010 protected boolean parseExpansionProfileDesignationExcludeDesignationComponentContent(int eventType, XmlPullParser xpp, ExpansionProfile owner, ExpansionProfile.DesignationExcludeDesignationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8011 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 8012 res.setLanguageElement(parseCode(xpp)); 8013 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 8014 res.setUse(parseCoding(xpp)); 8015 } else if (!parseBackboneContent(eventType, xpp, res)) 8016 return false; 8017 return true; 8018 } 8019 8020 protected ExplanationOfBenefit parseExplanationOfBenefit(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8021 ExplanationOfBenefit res = new ExplanationOfBenefit(); 8022 parseDomainResourceAttributes(xpp, res); 8023 next(xpp); 8024 int eventType = nextNoWhitespace(xpp); 8025 while (eventType != XmlPullParser.END_TAG) { 8026 if (!parseExplanationOfBenefitContent(eventType, xpp, res)) 8027 unknownContent(xpp); 8028 eventType = nextNoWhitespace(xpp); 8029 } 8030 next(xpp); 8031 parseElementClose(res); 8032 return res; 8033 } 8034 8035 protected boolean parseExplanationOfBenefitContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit res) throws XmlPullParserException, IOException, FHIRFormatError { 8036 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8037 res.getIdentifier().add(parseIdentifier(xpp)); 8038 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 8039 res.setStatusElement(parseEnumeration(xpp, ExplanationOfBenefit.ExplanationOfBenefitStatus.NULL, new ExplanationOfBenefit.ExplanationOfBenefitStatusEnumFactory())); 8040 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8041 res.setType(parseCodeableConcept(xpp)); 8042 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subType")) { 8043 res.getSubType().add(parseCodeableConcept(xpp)); 8044 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 8045 res.setPatient(parseReference(xpp)); 8046 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("billablePeriod")) { 8047 res.setBillablePeriod(parsePeriod(xpp)); 8048 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 8049 res.setCreatedElement(parseDateTime(xpp)); 8050 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("enterer")) { 8051 res.setEnterer(parseReference(xpp)); 8052 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurer")) { 8053 res.setInsurer(parseReference(xpp)); 8054 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provider")) { 8055 res.setProvider(parseReference(xpp)); 8056 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 8057 res.setOrganization(parseReference(xpp)); 8058 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referral")) { 8059 res.setReferral(parseReference(xpp)); 8060 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("facility")) { 8061 res.setFacility(parseReference(xpp)); 8062 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("claim")) { 8063 res.setClaim(parseReference(xpp)); 8064 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("claimResponse")) { 8065 res.setClaimResponse(parseReference(xpp)); 8066 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 8067 res.setOutcome(parseCodeableConcept(xpp)); 8068 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disposition")) { 8069 res.setDispositionElement(parseString(xpp)); 8070 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("related")) { 8071 res.getRelated().add(parseExplanationOfBenefitRelatedClaimComponent(xpp, res)); 8072 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prescription")) { 8073 res.setPrescription(parseReference(xpp)); 8074 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("originalPrescription")) { 8075 res.setOriginalPrescription(parseReference(xpp)); 8076 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payee")) { 8077 res.setPayee(parseExplanationOfBenefitPayeeComponent(xpp, res)); 8078 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("information")) { 8079 res.getInformation().add(parseExplanationOfBenefitSupportingInformationComponent(xpp, res)); 8080 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("careTeam")) { 8081 res.getCareTeam().add(parseExplanationOfBenefitCareTeamComponent(xpp, res)); 8082 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnosis")) { 8083 res.getDiagnosis().add(parseExplanationOfBenefitDiagnosisComponent(xpp, res)); 8084 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("procedure")) { 8085 res.getProcedure().add(parseExplanationOfBenefitProcedureComponent(xpp, res)); 8086 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("precedence")) { 8087 res.setPrecedenceElement(parsePositiveInt(xpp)); 8088 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurance")) { 8089 res.setInsurance(parseExplanationOfBenefitInsuranceComponent(xpp, res)); 8090 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("accident")) { 8091 res.setAccident(parseExplanationOfBenefitAccidentComponent(xpp, res)); 8092 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("employmentImpacted")) { 8093 res.setEmploymentImpacted(parsePeriod(xpp)); 8094 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("hospitalization")) { 8095 res.setHospitalization(parsePeriod(xpp)); 8096 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 8097 res.getItem().add(parseExplanationOfBenefitItemComponent(xpp, res)); 8098 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("addItem")) { 8099 res.getAddItem().add(parseExplanationOfBenefitAddedItemComponent(xpp, res)); 8100 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("totalCost")) { 8101 res.setTotalCost(parseMoney(xpp)); 8102 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unallocDeductable")) { 8103 res.setUnallocDeductable(parseMoney(xpp)); 8104 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("totalBenefit")) { 8105 res.setTotalBenefit(parseMoney(xpp)); 8106 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payment")) { 8107 res.setPayment(parseExplanationOfBenefitPaymentComponent(xpp, res)); 8108 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("form")) { 8109 res.setForm(parseCodeableConcept(xpp)); 8110 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("processNote")) { 8111 res.getProcessNote().add(parseExplanationOfBenefitNoteComponent(xpp, res)); 8112 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("benefitBalance")) { 8113 res.getBenefitBalance().add(parseExplanationOfBenefitBenefitBalanceComponent(xpp, res)); 8114 } else if (!parseDomainResourceContent(eventType, xpp, res)) 8115 return false; 8116 return true; 8117 } 8118 8119 protected ExplanationOfBenefit.RelatedClaimComponent parseExplanationOfBenefitRelatedClaimComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8120 ExplanationOfBenefit.RelatedClaimComponent res = new ExplanationOfBenefit.RelatedClaimComponent(); 8121 parseBackboneAttributes(xpp, res); 8122 next(xpp); 8123 int eventType = nextNoWhitespace(xpp); 8124 while (eventType != XmlPullParser.END_TAG) { 8125 if (!parseExplanationOfBenefitRelatedClaimComponentContent(eventType, xpp, owner, res)) 8126 unknownContent(xpp); 8127 eventType = nextNoWhitespace(xpp); 8128 } 8129 next(xpp); 8130 parseElementClose(res); 8131 return res; 8132 } 8133 8134 protected boolean parseExplanationOfBenefitRelatedClaimComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.RelatedClaimComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8135 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("claim")) { 8136 res.setClaim(parseReference(xpp)); 8137 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 8138 res.setRelationship(parseCodeableConcept(xpp)); 8139 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 8140 res.setReference(parseIdentifier(xpp)); 8141 } else if (!parseBackboneContent(eventType, xpp, res)) 8142 return false; 8143 return true; 8144 } 8145 8146 protected ExplanationOfBenefit.PayeeComponent parseExplanationOfBenefitPayeeComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8147 ExplanationOfBenefit.PayeeComponent res = new ExplanationOfBenefit.PayeeComponent(); 8148 parseBackboneAttributes(xpp, res); 8149 next(xpp); 8150 int eventType = nextNoWhitespace(xpp); 8151 while (eventType != XmlPullParser.END_TAG) { 8152 if (!parseExplanationOfBenefitPayeeComponentContent(eventType, xpp, owner, res)) 8153 unknownContent(xpp); 8154 eventType = nextNoWhitespace(xpp); 8155 } 8156 next(xpp); 8157 parseElementClose(res); 8158 return res; 8159 } 8160 8161 protected boolean parseExplanationOfBenefitPayeeComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.PayeeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8162 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8163 res.setType(parseCodeableConcept(xpp)); 8164 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resourceType")) { 8165 res.setResourceType(parseCodeableConcept(xpp)); 8166 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("party")) { 8167 res.setParty(parseReference(xpp)); 8168 } else if (!parseBackboneContent(eventType, xpp, res)) 8169 return false; 8170 return true; 8171 } 8172 8173 protected ExplanationOfBenefit.SupportingInformationComponent parseExplanationOfBenefitSupportingInformationComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8174 ExplanationOfBenefit.SupportingInformationComponent res = new ExplanationOfBenefit.SupportingInformationComponent(); 8175 parseBackboneAttributes(xpp, res); 8176 next(xpp); 8177 int eventType = nextNoWhitespace(xpp); 8178 while (eventType != XmlPullParser.END_TAG) { 8179 if (!parseExplanationOfBenefitSupportingInformationComponentContent(eventType, xpp, owner, res)) 8180 unknownContent(xpp); 8181 eventType = nextNoWhitespace(xpp); 8182 } 8183 next(xpp); 8184 parseElementClose(res); 8185 return res; 8186 } 8187 8188 protected boolean parseExplanationOfBenefitSupportingInformationComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.SupportingInformationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8189 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 8190 res.setSequenceElement(parsePositiveInt(xpp)); 8191 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 8192 res.setCategory(parseCodeableConcept(xpp)); 8193 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 8194 res.setCode(parseCodeableConcept(xpp)); 8195 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "timing")) { 8196 res.setTiming(parseType("timing", xpp)); 8197 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 8198 res.setValue(parseType("value", xpp)); 8199 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 8200 res.setReason(parseCoding(xpp)); 8201 } else if (!parseBackboneContent(eventType, xpp, res)) 8202 return false; 8203 return true; 8204 } 8205 8206 protected ExplanationOfBenefit.CareTeamComponent parseExplanationOfBenefitCareTeamComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8207 ExplanationOfBenefit.CareTeamComponent res = new ExplanationOfBenefit.CareTeamComponent(); 8208 parseBackboneAttributes(xpp, res); 8209 next(xpp); 8210 int eventType = nextNoWhitespace(xpp); 8211 while (eventType != XmlPullParser.END_TAG) { 8212 if (!parseExplanationOfBenefitCareTeamComponentContent(eventType, xpp, owner, res)) 8213 unknownContent(xpp); 8214 eventType = nextNoWhitespace(xpp); 8215 } 8216 next(xpp); 8217 parseElementClose(res); 8218 return res; 8219 } 8220 8221 protected boolean parseExplanationOfBenefitCareTeamComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.CareTeamComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8222 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 8223 res.setSequenceElement(parsePositiveInt(xpp)); 8224 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provider")) { 8225 res.setProvider(parseReference(xpp)); 8226 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responsible")) { 8227 res.setResponsibleElement(parseBoolean(xpp)); 8228 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 8229 res.setRole(parseCodeableConcept(xpp)); 8230 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("qualification")) { 8231 res.setQualification(parseCodeableConcept(xpp)); 8232 } else if (!parseBackboneContent(eventType, xpp, res)) 8233 return false; 8234 return true; 8235 } 8236 8237 protected ExplanationOfBenefit.DiagnosisComponent parseExplanationOfBenefitDiagnosisComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8238 ExplanationOfBenefit.DiagnosisComponent res = new ExplanationOfBenefit.DiagnosisComponent(); 8239 parseBackboneAttributes(xpp, res); 8240 next(xpp); 8241 int eventType = nextNoWhitespace(xpp); 8242 while (eventType != XmlPullParser.END_TAG) { 8243 if (!parseExplanationOfBenefitDiagnosisComponentContent(eventType, xpp, owner, res)) 8244 unknownContent(xpp); 8245 eventType = nextNoWhitespace(xpp); 8246 } 8247 next(xpp); 8248 parseElementClose(res); 8249 return res; 8250 } 8251 8252 protected boolean parseExplanationOfBenefitDiagnosisComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.DiagnosisComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8253 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 8254 res.setSequenceElement(parsePositiveInt(xpp)); 8255 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "diagnosis")) { 8256 res.setDiagnosis(parseType("diagnosis", xpp)); 8257 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8258 res.getType().add(parseCodeableConcept(xpp)); 8259 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("packageCode")) { 8260 res.setPackageCode(parseCodeableConcept(xpp)); 8261 } else if (!parseBackboneContent(eventType, xpp, res)) 8262 return false; 8263 return true; 8264 } 8265 8266 protected ExplanationOfBenefit.ProcedureComponent parseExplanationOfBenefitProcedureComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8267 ExplanationOfBenefit.ProcedureComponent res = new ExplanationOfBenefit.ProcedureComponent(); 8268 parseBackboneAttributes(xpp, res); 8269 next(xpp); 8270 int eventType = nextNoWhitespace(xpp); 8271 while (eventType != XmlPullParser.END_TAG) { 8272 if (!parseExplanationOfBenefitProcedureComponentContent(eventType, xpp, owner, res)) 8273 unknownContent(xpp); 8274 eventType = nextNoWhitespace(xpp); 8275 } 8276 next(xpp); 8277 parseElementClose(res); 8278 return res; 8279 } 8280 8281 protected boolean parseExplanationOfBenefitProcedureComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.ProcedureComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8282 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 8283 res.setSequenceElement(parsePositiveInt(xpp)); 8284 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 8285 res.setDateElement(parseDateTime(xpp)); 8286 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "procedure")) { 8287 res.setProcedure(parseType("procedure", xpp)); 8288 } else if (!parseBackboneContent(eventType, xpp, res)) 8289 return false; 8290 return true; 8291 } 8292 8293 protected ExplanationOfBenefit.InsuranceComponent parseExplanationOfBenefitInsuranceComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8294 ExplanationOfBenefit.InsuranceComponent res = new ExplanationOfBenefit.InsuranceComponent(); 8295 parseBackboneAttributes(xpp, res); 8296 next(xpp); 8297 int eventType = nextNoWhitespace(xpp); 8298 while (eventType != XmlPullParser.END_TAG) { 8299 if (!parseExplanationOfBenefitInsuranceComponentContent(eventType, xpp, owner, res)) 8300 unknownContent(xpp); 8301 eventType = nextNoWhitespace(xpp); 8302 } 8303 next(xpp); 8304 parseElementClose(res); 8305 return res; 8306 } 8307 8308 protected boolean parseExplanationOfBenefitInsuranceComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.InsuranceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8309 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverage")) { 8310 res.setCoverage(parseReference(xpp)); 8311 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preAuthRef")) { 8312 res.getPreAuthRef().add(parseString(xpp)); 8313 } else if (!parseBackboneContent(eventType, xpp, res)) 8314 return false; 8315 return true; 8316 } 8317 8318 protected ExplanationOfBenefit.AccidentComponent parseExplanationOfBenefitAccidentComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8319 ExplanationOfBenefit.AccidentComponent res = new ExplanationOfBenefit.AccidentComponent(); 8320 parseBackboneAttributes(xpp, res); 8321 next(xpp); 8322 int eventType = nextNoWhitespace(xpp); 8323 while (eventType != XmlPullParser.END_TAG) { 8324 if (!parseExplanationOfBenefitAccidentComponentContent(eventType, xpp, owner, res)) 8325 unknownContent(xpp); 8326 eventType = nextNoWhitespace(xpp); 8327 } 8328 next(xpp); 8329 parseElementClose(res); 8330 return res; 8331 } 8332 8333 protected boolean parseExplanationOfBenefitAccidentComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.AccidentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8334 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 8335 res.setDateElement(parseDate(xpp)); 8336 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8337 res.setType(parseCodeableConcept(xpp)); 8338 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "location")) { 8339 res.setLocation(parseType("location", xpp)); 8340 } else if (!parseBackboneContent(eventType, xpp, res)) 8341 return false; 8342 return true; 8343 } 8344 8345 protected ExplanationOfBenefit.ItemComponent parseExplanationOfBenefitItemComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8346 ExplanationOfBenefit.ItemComponent res = new ExplanationOfBenefit.ItemComponent(); 8347 parseBackboneAttributes(xpp, res); 8348 next(xpp); 8349 int eventType = nextNoWhitespace(xpp); 8350 while (eventType != XmlPullParser.END_TAG) { 8351 if (!parseExplanationOfBenefitItemComponentContent(eventType, xpp, owner, res)) 8352 unknownContent(xpp); 8353 eventType = nextNoWhitespace(xpp); 8354 } 8355 next(xpp); 8356 parseElementClose(res); 8357 return res; 8358 } 8359 8360 protected boolean parseExplanationOfBenefitItemComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.ItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8361 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 8362 res.setSequenceElement(parsePositiveInt(xpp)); 8363 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("careTeamLinkId")) { 8364 res.getCareTeamLinkId().add(parsePositiveInt(xpp)); 8365 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnosisLinkId")) { 8366 res.getDiagnosisLinkId().add(parsePositiveInt(xpp)); 8367 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("procedureLinkId")) { 8368 res.getProcedureLinkId().add(parsePositiveInt(xpp)); 8369 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("informationLinkId")) { 8370 res.getInformationLinkId().add(parsePositiveInt(xpp)); 8371 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("revenue")) { 8372 res.setRevenue(parseCodeableConcept(xpp)); 8373 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 8374 res.setCategory(parseCodeableConcept(xpp)); 8375 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 8376 res.setService(parseCodeableConcept(xpp)); 8377 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 8378 res.getModifier().add(parseCodeableConcept(xpp)); 8379 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("programCode")) { 8380 res.getProgramCode().add(parseCodeableConcept(xpp)); 8381 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "serviced")) { 8382 res.setServiced(parseType("serviced", xpp)); 8383 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "location")) { 8384 res.setLocation(parseType("location", xpp)); 8385 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 8386 res.setQuantity(parseSimpleQuantity(xpp)); 8387 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 8388 res.setUnitPrice(parseMoney(xpp)); 8389 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 8390 res.setFactorElement(parseDecimal(xpp)); 8391 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 8392 res.setNet(parseMoney(xpp)); 8393 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udi")) { 8394 res.getUdi().add(parseReference(xpp)); 8395 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 8396 res.setBodySite(parseCodeableConcept(xpp)); 8397 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subSite")) { 8398 res.getSubSite().add(parseCodeableConcept(xpp)); 8399 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 8400 res.getEncounter().add(parseReference(xpp)); 8401 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumber")) { 8402 res.getNoteNumber().add(parsePositiveInt(xpp)); 8403 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 8404 res.getAdjudication().add(parseExplanationOfBenefitAdjudicationComponent(xpp, owner)); 8405 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 8406 res.getDetail().add(parseExplanationOfBenefitDetailComponent(xpp, owner)); 8407 } else if (!parseBackboneContent(eventType, xpp, res)) 8408 return false; 8409 return true; 8410 } 8411 8412 protected ExplanationOfBenefit.AdjudicationComponent parseExplanationOfBenefitAdjudicationComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8413 ExplanationOfBenefit.AdjudicationComponent res = new ExplanationOfBenefit.AdjudicationComponent(); 8414 parseBackboneAttributes(xpp, res); 8415 next(xpp); 8416 int eventType = nextNoWhitespace(xpp); 8417 while (eventType != XmlPullParser.END_TAG) { 8418 if (!parseExplanationOfBenefitAdjudicationComponentContent(eventType, xpp, owner, res)) 8419 unknownContent(xpp); 8420 eventType = nextNoWhitespace(xpp); 8421 } 8422 next(xpp); 8423 parseElementClose(res); 8424 return res; 8425 } 8426 8427 protected boolean parseExplanationOfBenefitAdjudicationComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.AdjudicationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8428 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 8429 res.setCategory(parseCodeableConcept(xpp)); 8430 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 8431 res.setReason(parseCodeableConcept(xpp)); 8432 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 8433 res.setAmount(parseMoney(xpp)); 8434 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 8435 res.setValueElement(parseDecimal(xpp)); 8436 } else if (!parseBackboneContent(eventType, xpp, res)) 8437 return false; 8438 return true; 8439 } 8440 8441 protected ExplanationOfBenefit.DetailComponent parseExplanationOfBenefitDetailComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8442 ExplanationOfBenefit.DetailComponent res = new ExplanationOfBenefit.DetailComponent(); 8443 parseBackboneAttributes(xpp, res); 8444 next(xpp); 8445 int eventType = nextNoWhitespace(xpp); 8446 while (eventType != XmlPullParser.END_TAG) { 8447 if (!parseExplanationOfBenefitDetailComponentContent(eventType, xpp, owner, res)) 8448 unknownContent(xpp); 8449 eventType = nextNoWhitespace(xpp); 8450 } 8451 next(xpp); 8452 parseElementClose(res); 8453 return res; 8454 } 8455 8456 protected boolean parseExplanationOfBenefitDetailComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.DetailComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8457 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 8458 res.setSequenceElement(parsePositiveInt(xpp)); 8459 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8460 res.setType(parseCodeableConcept(xpp)); 8461 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("revenue")) { 8462 res.setRevenue(parseCodeableConcept(xpp)); 8463 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 8464 res.setCategory(parseCodeableConcept(xpp)); 8465 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 8466 res.setService(parseCodeableConcept(xpp)); 8467 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 8468 res.getModifier().add(parseCodeableConcept(xpp)); 8469 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("programCode")) { 8470 res.getProgramCode().add(parseCodeableConcept(xpp)); 8471 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 8472 res.setQuantity(parseSimpleQuantity(xpp)); 8473 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 8474 res.setUnitPrice(parseMoney(xpp)); 8475 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 8476 res.setFactorElement(parseDecimal(xpp)); 8477 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 8478 res.setNet(parseMoney(xpp)); 8479 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udi")) { 8480 res.getUdi().add(parseReference(xpp)); 8481 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumber")) { 8482 res.getNoteNumber().add(parsePositiveInt(xpp)); 8483 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 8484 res.getAdjudication().add(parseExplanationOfBenefitAdjudicationComponent(xpp, owner)); 8485 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subDetail")) { 8486 res.getSubDetail().add(parseExplanationOfBenefitSubDetailComponent(xpp, owner)); 8487 } else if (!parseBackboneContent(eventType, xpp, res)) 8488 return false; 8489 return true; 8490 } 8491 8492 protected ExplanationOfBenefit.SubDetailComponent parseExplanationOfBenefitSubDetailComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8493 ExplanationOfBenefit.SubDetailComponent res = new ExplanationOfBenefit.SubDetailComponent(); 8494 parseBackboneAttributes(xpp, res); 8495 next(xpp); 8496 int eventType = nextNoWhitespace(xpp); 8497 while (eventType != XmlPullParser.END_TAG) { 8498 if (!parseExplanationOfBenefitSubDetailComponentContent(eventType, xpp, owner, res)) 8499 unknownContent(xpp); 8500 eventType = nextNoWhitespace(xpp); 8501 } 8502 next(xpp); 8503 parseElementClose(res); 8504 return res; 8505 } 8506 8507 protected boolean parseExplanationOfBenefitSubDetailComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.SubDetailComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8508 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 8509 res.setSequenceElement(parsePositiveInt(xpp)); 8510 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8511 res.setType(parseCodeableConcept(xpp)); 8512 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("revenue")) { 8513 res.setRevenue(parseCodeableConcept(xpp)); 8514 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 8515 res.setCategory(parseCodeableConcept(xpp)); 8516 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 8517 res.setService(parseCodeableConcept(xpp)); 8518 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 8519 res.getModifier().add(parseCodeableConcept(xpp)); 8520 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("programCode")) { 8521 res.getProgramCode().add(parseCodeableConcept(xpp)); 8522 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 8523 res.setQuantity(parseSimpleQuantity(xpp)); 8524 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 8525 res.setUnitPrice(parseMoney(xpp)); 8526 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 8527 res.setFactorElement(parseDecimal(xpp)); 8528 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 8529 res.setNet(parseMoney(xpp)); 8530 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udi")) { 8531 res.getUdi().add(parseReference(xpp)); 8532 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumber")) { 8533 res.getNoteNumber().add(parsePositiveInt(xpp)); 8534 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 8535 res.getAdjudication().add(parseExplanationOfBenefitAdjudicationComponent(xpp, owner)); 8536 } else if (!parseBackboneContent(eventType, xpp, res)) 8537 return false; 8538 return true; 8539 } 8540 8541 protected ExplanationOfBenefit.AddedItemComponent parseExplanationOfBenefitAddedItemComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8542 ExplanationOfBenefit.AddedItemComponent res = new ExplanationOfBenefit.AddedItemComponent(); 8543 parseBackboneAttributes(xpp, res); 8544 next(xpp); 8545 int eventType = nextNoWhitespace(xpp); 8546 while (eventType != XmlPullParser.END_TAG) { 8547 if (!parseExplanationOfBenefitAddedItemComponentContent(eventType, xpp, owner, res)) 8548 unknownContent(xpp); 8549 eventType = nextNoWhitespace(xpp); 8550 } 8551 next(xpp); 8552 parseElementClose(res); 8553 return res; 8554 } 8555 8556 protected boolean parseExplanationOfBenefitAddedItemComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.AddedItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8557 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequenceLinkId")) { 8558 res.getSequenceLinkId().add(parsePositiveInt(xpp)); 8559 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("revenue")) { 8560 res.setRevenue(parseCodeableConcept(xpp)); 8561 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 8562 res.setCategory(parseCodeableConcept(xpp)); 8563 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 8564 res.setService(parseCodeableConcept(xpp)); 8565 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 8566 res.getModifier().add(parseCodeableConcept(xpp)); 8567 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fee")) { 8568 res.setFee(parseMoney(xpp)); 8569 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumber")) { 8570 res.getNoteNumber().add(parsePositiveInt(xpp)); 8571 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 8572 res.getAdjudication().add(parseExplanationOfBenefitAdjudicationComponent(xpp, owner)); 8573 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 8574 res.getDetail().add(parseExplanationOfBenefitAddedItemsDetailComponent(xpp, owner)); 8575 } else if (!parseBackboneContent(eventType, xpp, res)) 8576 return false; 8577 return true; 8578 } 8579 8580 protected ExplanationOfBenefit.AddedItemsDetailComponent parseExplanationOfBenefitAddedItemsDetailComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8581 ExplanationOfBenefit.AddedItemsDetailComponent res = new ExplanationOfBenefit.AddedItemsDetailComponent(); 8582 parseBackboneAttributes(xpp, res); 8583 next(xpp); 8584 int eventType = nextNoWhitespace(xpp); 8585 while (eventType != XmlPullParser.END_TAG) { 8586 if (!parseExplanationOfBenefitAddedItemsDetailComponentContent(eventType, xpp, owner, res)) 8587 unknownContent(xpp); 8588 eventType = nextNoWhitespace(xpp); 8589 } 8590 next(xpp); 8591 parseElementClose(res); 8592 return res; 8593 } 8594 8595 protected boolean parseExplanationOfBenefitAddedItemsDetailComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.AddedItemsDetailComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8596 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("revenue")) { 8597 res.setRevenue(parseCodeableConcept(xpp)); 8598 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 8599 res.setCategory(parseCodeableConcept(xpp)); 8600 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 8601 res.setService(parseCodeableConcept(xpp)); 8602 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 8603 res.getModifier().add(parseCodeableConcept(xpp)); 8604 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fee")) { 8605 res.setFee(parseMoney(xpp)); 8606 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumber")) { 8607 res.getNoteNumber().add(parsePositiveInt(xpp)); 8608 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 8609 res.getAdjudication().add(parseExplanationOfBenefitAdjudicationComponent(xpp, owner)); 8610 } else if (!parseBackboneContent(eventType, xpp, res)) 8611 return false; 8612 return true; 8613 } 8614 8615 protected ExplanationOfBenefit.PaymentComponent parseExplanationOfBenefitPaymentComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8616 ExplanationOfBenefit.PaymentComponent res = new ExplanationOfBenefit.PaymentComponent(); 8617 parseBackboneAttributes(xpp, res); 8618 next(xpp); 8619 int eventType = nextNoWhitespace(xpp); 8620 while (eventType != XmlPullParser.END_TAG) { 8621 if (!parseExplanationOfBenefitPaymentComponentContent(eventType, xpp, owner, res)) 8622 unknownContent(xpp); 8623 eventType = nextNoWhitespace(xpp); 8624 } 8625 next(xpp); 8626 parseElementClose(res); 8627 return res; 8628 } 8629 8630 protected boolean parseExplanationOfBenefitPaymentComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.PaymentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8631 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8632 res.setType(parseCodeableConcept(xpp)); 8633 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjustment")) { 8634 res.setAdjustment(parseMoney(xpp)); 8635 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjustmentReason")) { 8636 res.setAdjustmentReason(parseCodeableConcept(xpp)); 8637 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 8638 res.setDateElement(parseDate(xpp)); 8639 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 8640 res.setAmount(parseMoney(xpp)); 8641 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8642 res.setIdentifier(parseIdentifier(xpp)); 8643 } else if (!parseBackboneContent(eventType, xpp, res)) 8644 return false; 8645 return true; 8646 } 8647 8648 protected ExplanationOfBenefit.NoteComponent parseExplanationOfBenefitNoteComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8649 ExplanationOfBenefit.NoteComponent res = new ExplanationOfBenefit.NoteComponent(); 8650 parseBackboneAttributes(xpp, res); 8651 next(xpp); 8652 int eventType = nextNoWhitespace(xpp); 8653 while (eventType != XmlPullParser.END_TAG) { 8654 if (!parseExplanationOfBenefitNoteComponentContent(eventType, xpp, owner, res)) 8655 unknownContent(xpp); 8656 eventType = nextNoWhitespace(xpp); 8657 } 8658 next(xpp); 8659 parseElementClose(res); 8660 return res; 8661 } 8662 8663 protected boolean parseExplanationOfBenefitNoteComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.NoteComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8664 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("number")) { 8665 res.setNumberElement(parsePositiveInt(xpp)); 8666 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8667 res.setType(parseCodeableConcept(xpp)); 8668 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 8669 res.setTextElement(parseString(xpp)); 8670 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 8671 res.setLanguage(parseCodeableConcept(xpp)); 8672 } else if (!parseBackboneContent(eventType, xpp, res)) 8673 return false; 8674 return true; 8675 } 8676 8677 protected ExplanationOfBenefit.BenefitBalanceComponent parseExplanationOfBenefitBenefitBalanceComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8678 ExplanationOfBenefit.BenefitBalanceComponent res = new ExplanationOfBenefit.BenefitBalanceComponent(); 8679 parseBackboneAttributes(xpp, res); 8680 next(xpp); 8681 int eventType = nextNoWhitespace(xpp); 8682 while (eventType != XmlPullParser.END_TAG) { 8683 if (!parseExplanationOfBenefitBenefitBalanceComponentContent(eventType, xpp, owner, res)) 8684 unknownContent(xpp); 8685 eventType = nextNoWhitespace(xpp); 8686 } 8687 next(xpp); 8688 parseElementClose(res); 8689 return res; 8690 } 8691 8692 protected boolean parseExplanationOfBenefitBenefitBalanceComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.BenefitBalanceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8693 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 8694 res.setCategory(parseCodeableConcept(xpp)); 8695 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subCategory")) { 8696 res.setSubCategory(parseCodeableConcept(xpp)); 8697 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("excluded")) { 8698 res.setExcludedElement(parseBoolean(xpp)); 8699 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 8700 res.setNameElement(parseString(xpp)); 8701 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 8702 res.setDescriptionElement(parseString(xpp)); 8703 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("network")) { 8704 res.setNetwork(parseCodeableConcept(xpp)); 8705 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unit")) { 8706 res.setUnit(parseCodeableConcept(xpp)); 8707 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("term")) { 8708 res.setTerm(parseCodeableConcept(xpp)); 8709 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("financial")) { 8710 res.getFinancial().add(parseExplanationOfBenefitBenefitComponent(xpp, owner)); 8711 } else if (!parseBackboneContent(eventType, xpp, res)) 8712 return false; 8713 return true; 8714 } 8715 8716 protected ExplanationOfBenefit.BenefitComponent parseExplanationOfBenefitBenefitComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8717 ExplanationOfBenefit.BenefitComponent res = new ExplanationOfBenefit.BenefitComponent(); 8718 parseBackboneAttributes(xpp, res); 8719 next(xpp); 8720 int eventType = nextNoWhitespace(xpp); 8721 while (eventType != XmlPullParser.END_TAG) { 8722 if (!parseExplanationOfBenefitBenefitComponentContent(eventType, xpp, owner, res)) 8723 unknownContent(xpp); 8724 eventType = nextNoWhitespace(xpp); 8725 } 8726 next(xpp); 8727 parseElementClose(res); 8728 return res; 8729 } 8730 8731 protected boolean parseExplanationOfBenefitBenefitComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.BenefitComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8732 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8733 res.setType(parseCodeableConcept(xpp)); 8734 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "allowed")) { 8735 res.setAllowed(parseType("allowed", xpp)); 8736 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "used")) { 8737 res.setUsed(parseType("used", xpp)); 8738 } else if (!parseBackboneContent(eventType, xpp, res)) 8739 return false; 8740 return true; 8741 } 8742 8743 protected FamilyMemberHistory parseFamilyMemberHistory(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8744 FamilyMemberHistory res = new FamilyMemberHistory(); 8745 parseDomainResourceAttributes(xpp, res); 8746 next(xpp); 8747 int eventType = nextNoWhitespace(xpp); 8748 while (eventType != XmlPullParser.END_TAG) { 8749 if (!parseFamilyMemberHistoryContent(eventType, xpp, res)) 8750 unknownContent(xpp); 8751 eventType = nextNoWhitespace(xpp); 8752 } 8753 next(xpp); 8754 parseElementClose(res); 8755 return res; 8756 } 8757 8758 protected boolean parseFamilyMemberHistoryContent(int eventType, XmlPullParser xpp, FamilyMemberHistory res) throws XmlPullParserException, IOException, FHIRFormatError { 8759 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8760 res.getIdentifier().add(parseIdentifier(xpp)); 8761 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 8762 res.getDefinition().add(parseReference(xpp)); 8763 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 8764 res.setStatusElement(parseEnumeration(xpp, FamilyMemberHistory.FamilyHistoryStatus.NULL, new FamilyMemberHistory.FamilyHistoryStatusEnumFactory())); 8765 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notDone")) { 8766 res.setNotDoneElement(parseBoolean(xpp)); 8767 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notDoneReason")) { 8768 res.setNotDoneReason(parseCodeableConcept(xpp)); 8769 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 8770 res.setPatient(parseReference(xpp)); 8771 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 8772 res.setDateElement(parseDateTime(xpp)); 8773 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 8774 res.setNameElement(parseString(xpp)); 8775 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 8776 res.setRelationship(parseCodeableConcept(xpp)); 8777 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gender")) { 8778 res.setGenderElement(parseEnumeration(xpp, Enumerations.AdministrativeGender.NULL, new Enumerations.AdministrativeGenderEnumFactory())); 8779 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "born")) { 8780 res.setBorn(parseType("born", xpp)); 8781 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "age")) { 8782 res.setAge(parseType("age", xpp)); 8783 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("estimatedAge")) { 8784 res.setEstimatedAgeElement(parseBoolean(xpp)); 8785 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "deceased")) { 8786 res.setDeceased(parseType("deceased", xpp)); 8787 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonCode")) { 8788 res.getReasonCode().add(parseCodeableConcept(xpp)); 8789 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonReference")) { 8790 res.getReasonReference().add(parseReference(xpp)); 8791 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 8792 res.getNote().add(parseAnnotation(xpp)); 8793 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 8794 res.getCondition().add(parseFamilyMemberHistoryFamilyMemberHistoryConditionComponent(xpp, res)); 8795 } else if (!parseDomainResourceContent(eventType, xpp, res)) 8796 return false; 8797 return true; 8798 } 8799 8800 protected FamilyMemberHistory.FamilyMemberHistoryConditionComponent parseFamilyMemberHistoryFamilyMemberHistoryConditionComponent(XmlPullParser xpp, FamilyMemberHistory owner) throws XmlPullParserException, IOException, FHIRFormatError { 8801 FamilyMemberHistory.FamilyMemberHistoryConditionComponent res = new FamilyMemberHistory.FamilyMemberHistoryConditionComponent(); 8802 parseBackboneAttributes(xpp, res); 8803 next(xpp); 8804 int eventType = nextNoWhitespace(xpp); 8805 while (eventType != XmlPullParser.END_TAG) { 8806 if (!parseFamilyMemberHistoryFamilyMemberHistoryConditionComponentContent(eventType, xpp, owner, res)) 8807 unknownContent(xpp); 8808 eventType = nextNoWhitespace(xpp); 8809 } 8810 next(xpp); 8811 parseElementClose(res); 8812 return res; 8813 } 8814 8815 protected boolean parseFamilyMemberHistoryFamilyMemberHistoryConditionComponentContent(int eventType, XmlPullParser xpp, FamilyMemberHistory owner, FamilyMemberHistory.FamilyMemberHistoryConditionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8816 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 8817 res.setCode(parseCodeableConcept(xpp)); 8818 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 8819 res.setOutcome(parseCodeableConcept(xpp)); 8820 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "onset")) { 8821 res.setOnset(parseType("onset", xpp)); 8822 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 8823 res.getNote().add(parseAnnotation(xpp)); 8824 } else if (!parseBackboneContent(eventType, xpp, res)) 8825 return false; 8826 return true; 8827 } 8828 8829 protected Flag parseFlag(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8830 Flag res = new Flag(); 8831 parseDomainResourceAttributes(xpp, res); 8832 next(xpp); 8833 int eventType = nextNoWhitespace(xpp); 8834 while (eventType != XmlPullParser.END_TAG) { 8835 if (!parseFlagContent(eventType, xpp, res)) 8836 unknownContent(xpp); 8837 eventType = nextNoWhitespace(xpp); 8838 } 8839 next(xpp); 8840 parseElementClose(res); 8841 return res; 8842 } 8843 8844 protected boolean parseFlagContent(int eventType, XmlPullParser xpp, Flag res) throws XmlPullParserException, IOException, FHIRFormatError { 8845 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8846 res.getIdentifier().add(parseIdentifier(xpp)); 8847 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 8848 res.setStatusElement(parseEnumeration(xpp, Flag.FlagStatus.NULL, new Flag.FlagStatusEnumFactory())); 8849 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 8850 res.setCategory(parseCodeableConcept(xpp)); 8851 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 8852 res.setCode(parseCodeableConcept(xpp)); 8853 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 8854 res.setSubject(parseReference(xpp)); 8855 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 8856 res.setPeriod(parsePeriod(xpp)); 8857 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 8858 res.setEncounter(parseReference(xpp)); 8859 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 8860 res.setAuthor(parseReference(xpp)); 8861 } else if (!parseDomainResourceContent(eventType, xpp, res)) 8862 return false; 8863 return true; 8864 } 8865 8866 protected Goal parseGoal(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8867 Goal res = new Goal(); 8868 parseDomainResourceAttributes(xpp, res); 8869 next(xpp); 8870 int eventType = nextNoWhitespace(xpp); 8871 while (eventType != XmlPullParser.END_TAG) { 8872 if (!parseGoalContent(eventType, xpp, res)) 8873 unknownContent(xpp); 8874 eventType = nextNoWhitespace(xpp); 8875 } 8876 next(xpp); 8877 parseElementClose(res); 8878 return res; 8879 } 8880 8881 protected boolean parseGoalContent(int eventType, XmlPullParser xpp, Goal res) throws XmlPullParserException, IOException, FHIRFormatError { 8882 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8883 res.getIdentifier().add(parseIdentifier(xpp)); 8884 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 8885 res.setStatusElement(parseEnumeration(xpp, Goal.GoalStatus.NULL, new Goal.GoalStatusEnumFactory())); 8886 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 8887 res.getCategory().add(parseCodeableConcept(xpp)); 8888 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 8889 res.setPriority(parseCodeableConcept(xpp)); 8890 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 8891 res.setDescription(parseCodeableConcept(xpp)); 8892 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 8893 res.setSubject(parseReference(xpp)); 8894 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "start")) { 8895 res.setStart(parseType("start", xpp)); 8896 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 8897 res.setTarget(parseGoalGoalTargetComponent(xpp, res)); 8898 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusDate")) { 8899 res.setStatusDateElement(parseDate(xpp)); 8900 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusReason")) { 8901 res.setStatusReasonElement(parseString(xpp)); 8902 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expressedBy")) { 8903 res.setExpressedBy(parseReference(xpp)); 8904 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("addresses")) { 8905 res.getAddresses().add(parseReference(xpp)); 8906 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 8907 res.getNote().add(parseAnnotation(xpp)); 8908 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcomeCode")) { 8909 res.getOutcomeCode().add(parseCodeableConcept(xpp)); 8910 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcomeReference")) { 8911 res.getOutcomeReference().add(parseReference(xpp)); 8912 } else if (!parseDomainResourceContent(eventType, xpp, res)) 8913 return false; 8914 return true; 8915 } 8916 8917 protected Goal.GoalTargetComponent parseGoalGoalTargetComponent(XmlPullParser xpp, Goal owner) throws XmlPullParserException, IOException, FHIRFormatError { 8918 Goal.GoalTargetComponent res = new Goal.GoalTargetComponent(); 8919 parseBackboneAttributes(xpp, res); 8920 next(xpp); 8921 int eventType = nextNoWhitespace(xpp); 8922 while (eventType != XmlPullParser.END_TAG) { 8923 if (!parseGoalGoalTargetComponentContent(eventType, xpp, owner, res)) 8924 unknownContent(xpp); 8925 eventType = nextNoWhitespace(xpp); 8926 } 8927 next(xpp); 8928 parseElementClose(res); 8929 return res; 8930 } 8931 8932 protected boolean parseGoalGoalTargetComponentContent(int eventType, XmlPullParser xpp, Goal owner, Goal.GoalTargetComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8933 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("measure")) { 8934 res.setMeasure(parseCodeableConcept(xpp)); 8935 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "detail")) { 8936 res.setDetail(parseType("detail", xpp)); 8937 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "due")) { 8938 res.setDue(parseType("due", xpp)); 8939 } else if (!parseBackboneContent(eventType, xpp, res)) 8940 return false; 8941 return true; 8942 } 8943 8944 protected GraphDefinition parseGraphDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8945 GraphDefinition res = new GraphDefinition(); 8946 parseDomainResourceAttributes(xpp, res); 8947 next(xpp); 8948 int eventType = nextNoWhitespace(xpp); 8949 while (eventType != XmlPullParser.END_TAG) { 8950 if (!parseGraphDefinitionContent(eventType, xpp, res)) 8951 unknownContent(xpp); 8952 eventType = nextNoWhitespace(xpp); 8953 } 8954 next(xpp); 8955 parseElementClose(res); 8956 return res; 8957 } 8958 8959 protected boolean parseGraphDefinitionContent(int eventType, XmlPullParser xpp, GraphDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 8960 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 8961 res.setUrlElement(parseUri(xpp)); 8962 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 8963 res.setVersionElement(parseString(xpp)); 8964 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 8965 res.setNameElement(parseString(xpp)); 8966 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 8967 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 8968 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 8969 res.setExperimentalElement(parseBoolean(xpp)); 8970 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 8971 res.setDateElement(parseDateTime(xpp)); 8972 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 8973 res.setPublisherElement(parseString(xpp)); 8974 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 8975 res.getContact().add(parseContactDetail(xpp)); 8976 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 8977 res.setDescriptionElement(parseMarkdown(xpp)); 8978 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 8979 res.getUseContext().add(parseUsageContext(xpp)); 8980 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 8981 res.getJurisdiction().add(parseCodeableConcept(xpp)); 8982 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 8983 res.setPurposeElement(parseMarkdown(xpp)); 8984 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("start")) { 8985 res.setStartElement(parseCode(xpp)); 8986 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 8987 res.setProfileElement(parseUri(xpp)); 8988 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 8989 res.getLink().add(parseGraphDefinitionGraphDefinitionLinkComponent(xpp, res)); 8990 } else if (!parseDomainResourceContent(eventType, xpp, res)) 8991 return false; 8992 return true; 8993 } 8994 8995 protected GraphDefinition.GraphDefinitionLinkComponent parseGraphDefinitionGraphDefinitionLinkComponent(XmlPullParser xpp, GraphDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 8996 GraphDefinition.GraphDefinitionLinkComponent res = new GraphDefinition.GraphDefinitionLinkComponent(); 8997 parseBackboneAttributes(xpp, res); 8998 next(xpp); 8999 int eventType = nextNoWhitespace(xpp); 9000 while (eventType != XmlPullParser.END_TAG) { 9001 if (!parseGraphDefinitionGraphDefinitionLinkComponentContent(eventType, xpp, owner, res)) 9002 unknownContent(xpp); 9003 eventType = nextNoWhitespace(xpp); 9004 } 9005 next(xpp); 9006 parseElementClose(res); 9007 return res; 9008 } 9009 9010 protected boolean parseGraphDefinitionGraphDefinitionLinkComponentContent(int eventType, XmlPullParser xpp, GraphDefinition owner, GraphDefinition.GraphDefinitionLinkComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9011 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 9012 res.setPathElement(parseString(xpp)); 9013 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sliceName")) { 9014 res.setSliceNameElement(parseString(xpp)); 9015 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("min")) { 9016 res.setMinElement(parseInteger(xpp)); 9017 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("max")) { 9018 res.setMaxElement(parseString(xpp)); 9019 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 9020 res.setDescriptionElement(parseString(xpp)); 9021 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 9022 res.getTarget().add(parseGraphDefinitionGraphDefinitionLinkTargetComponent(xpp, owner)); 9023 } else if (!parseBackboneContent(eventType, xpp, res)) 9024 return false; 9025 return true; 9026 } 9027 9028 protected GraphDefinition.GraphDefinitionLinkTargetComponent parseGraphDefinitionGraphDefinitionLinkTargetComponent(XmlPullParser xpp, GraphDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 9029 GraphDefinition.GraphDefinitionLinkTargetComponent res = new GraphDefinition.GraphDefinitionLinkTargetComponent(); 9030 parseBackboneAttributes(xpp, res); 9031 next(xpp); 9032 int eventType = nextNoWhitespace(xpp); 9033 while (eventType != XmlPullParser.END_TAG) { 9034 if (!parseGraphDefinitionGraphDefinitionLinkTargetComponentContent(eventType, xpp, owner, res)) 9035 unknownContent(xpp); 9036 eventType = nextNoWhitespace(xpp); 9037 } 9038 next(xpp); 9039 parseElementClose(res); 9040 return res; 9041 } 9042 9043 protected boolean parseGraphDefinitionGraphDefinitionLinkTargetComponentContent(int eventType, XmlPullParser xpp, GraphDefinition owner, GraphDefinition.GraphDefinitionLinkTargetComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9044 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 9045 res.setTypeElement(parseCode(xpp)); 9046 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 9047 res.setProfileElement(parseUri(xpp)); 9048 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("compartment")) { 9049 res.getCompartment().add(parseGraphDefinitionGraphDefinitionLinkTargetCompartmentComponent(xpp, owner)); 9050 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 9051 res.getLink().add(parseGraphDefinitionGraphDefinitionLinkComponent(xpp, owner)); 9052 } else if (!parseBackboneContent(eventType, xpp, res)) 9053 return false; 9054 return true; 9055 } 9056 9057 protected GraphDefinition.GraphDefinitionLinkTargetCompartmentComponent parseGraphDefinitionGraphDefinitionLinkTargetCompartmentComponent(XmlPullParser xpp, GraphDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 9058 GraphDefinition.GraphDefinitionLinkTargetCompartmentComponent res = new GraphDefinition.GraphDefinitionLinkTargetCompartmentComponent(); 9059 parseBackboneAttributes(xpp, res); 9060 next(xpp); 9061 int eventType = nextNoWhitespace(xpp); 9062 while (eventType != XmlPullParser.END_TAG) { 9063 if (!parseGraphDefinitionGraphDefinitionLinkTargetCompartmentComponentContent(eventType, xpp, owner, res)) 9064 unknownContent(xpp); 9065 eventType = nextNoWhitespace(xpp); 9066 } 9067 next(xpp); 9068 parseElementClose(res); 9069 return res; 9070 } 9071 9072 protected boolean parseGraphDefinitionGraphDefinitionLinkTargetCompartmentComponentContent(int eventType, XmlPullParser xpp, GraphDefinition owner, GraphDefinition.GraphDefinitionLinkTargetCompartmentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9073 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 9074 res.setCodeElement(parseEnumeration(xpp, GraphDefinition.CompartmentCode.NULL, new GraphDefinition.CompartmentCodeEnumFactory())); 9075 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rule")) { 9076 res.setRuleElement(parseEnumeration(xpp, GraphDefinition.GraphCompartmentRule.NULL, new GraphDefinition.GraphCompartmentRuleEnumFactory())); 9077 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 9078 res.setExpressionElement(parseString(xpp)); 9079 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 9080 res.setDescriptionElement(parseString(xpp)); 9081 } else if (!parseBackboneContent(eventType, xpp, res)) 9082 return false; 9083 return true; 9084 } 9085 9086 protected Group parseGroup(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9087 Group res = new Group(); 9088 parseDomainResourceAttributes(xpp, res); 9089 next(xpp); 9090 int eventType = nextNoWhitespace(xpp); 9091 while (eventType != XmlPullParser.END_TAG) { 9092 if (!parseGroupContent(eventType, xpp, res)) 9093 unknownContent(xpp); 9094 eventType = nextNoWhitespace(xpp); 9095 } 9096 next(xpp); 9097 parseElementClose(res); 9098 return res; 9099 } 9100 9101 protected boolean parseGroupContent(int eventType, XmlPullParser xpp, Group res) throws XmlPullParserException, IOException, FHIRFormatError { 9102 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9103 res.getIdentifier().add(parseIdentifier(xpp)); 9104 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 9105 res.setActiveElement(parseBoolean(xpp)); 9106 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 9107 res.setTypeElement(parseEnumeration(xpp, Group.GroupType.NULL, new Group.GroupTypeEnumFactory())); 9108 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actual")) { 9109 res.setActualElement(parseBoolean(xpp)); 9110 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 9111 res.setCode(parseCodeableConcept(xpp)); 9112 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 9113 res.setNameElement(parseString(xpp)); 9114 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 9115 res.setQuantityElement(parseUnsignedInt(xpp)); 9116 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("characteristic")) { 9117 res.getCharacteristic().add(parseGroupGroupCharacteristicComponent(xpp, res)); 9118 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("member")) { 9119 res.getMember().add(parseGroupGroupMemberComponent(xpp, res)); 9120 } else if (!parseDomainResourceContent(eventType, xpp, res)) 9121 return false; 9122 return true; 9123 } 9124 9125 protected Group.GroupCharacteristicComponent parseGroupGroupCharacteristicComponent(XmlPullParser xpp, Group owner) throws XmlPullParserException, IOException, FHIRFormatError { 9126 Group.GroupCharacteristicComponent res = new Group.GroupCharacteristicComponent(); 9127 parseBackboneAttributes(xpp, res); 9128 next(xpp); 9129 int eventType = nextNoWhitespace(xpp); 9130 while (eventType != XmlPullParser.END_TAG) { 9131 if (!parseGroupGroupCharacteristicComponentContent(eventType, xpp, owner, res)) 9132 unknownContent(xpp); 9133 eventType = nextNoWhitespace(xpp); 9134 } 9135 next(xpp); 9136 parseElementClose(res); 9137 return res; 9138 } 9139 9140 protected boolean parseGroupGroupCharacteristicComponentContent(int eventType, XmlPullParser xpp, Group owner, Group.GroupCharacteristicComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9141 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 9142 res.setCode(parseCodeableConcept(xpp)); 9143 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 9144 res.setValue(parseType("value", xpp)); 9145 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exclude")) { 9146 res.setExcludeElement(parseBoolean(xpp)); 9147 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 9148 res.setPeriod(parsePeriod(xpp)); 9149 } else if (!parseBackboneContent(eventType, xpp, res)) 9150 return false; 9151 return true; 9152 } 9153 9154 protected Group.GroupMemberComponent parseGroupGroupMemberComponent(XmlPullParser xpp, Group owner) throws XmlPullParserException, IOException, FHIRFormatError { 9155 Group.GroupMemberComponent res = new Group.GroupMemberComponent(); 9156 parseBackboneAttributes(xpp, res); 9157 next(xpp); 9158 int eventType = nextNoWhitespace(xpp); 9159 while (eventType != XmlPullParser.END_TAG) { 9160 if (!parseGroupGroupMemberComponentContent(eventType, xpp, owner, res)) 9161 unknownContent(xpp); 9162 eventType = nextNoWhitespace(xpp); 9163 } 9164 next(xpp); 9165 parseElementClose(res); 9166 return res; 9167 } 9168 9169 protected boolean parseGroupGroupMemberComponentContent(int eventType, XmlPullParser xpp, Group owner, Group.GroupMemberComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9170 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entity")) { 9171 res.setEntity(parseReference(xpp)); 9172 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 9173 res.setPeriod(parsePeriod(xpp)); 9174 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("inactive")) { 9175 res.setInactiveElement(parseBoolean(xpp)); 9176 } else if (!parseBackboneContent(eventType, xpp, res)) 9177 return false; 9178 return true; 9179 } 9180 9181 protected GuidanceResponse parseGuidanceResponse(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9182 GuidanceResponse res = new GuidanceResponse(); 9183 parseDomainResourceAttributes(xpp, res); 9184 next(xpp); 9185 int eventType = nextNoWhitespace(xpp); 9186 while (eventType != XmlPullParser.END_TAG) { 9187 if (!parseGuidanceResponseContent(eventType, xpp, res)) 9188 unknownContent(xpp); 9189 eventType = nextNoWhitespace(xpp); 9190 } 9191 next(xpp); 9192 parseElementClose(res); 9193 return res; 9194 } 9195 9196 protected boolean parseGuidanceResponseContent(int eventType, XmlPullParser xpp, GuidanceResponse res) throws XmlPullParserException, IOException, FHIRFormatError { 9197 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestId")) { 9198 res.setRequestIdElement(parseId(xpp)); 9199 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9200 res.setIdentifier(parseIdentifier(xpp)); 9201 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("module")) { 9202 res.setModule(parseReference(xpp)); 9203 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 9204 res.setStatusElement(parseEnumeration(xpp, GuidanceResponse.GuidanceResponseStatus.NULL, new GuidanceResponse.GuidanceResponseStatusEnumFactory())); 9205 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 9206 res.setSubject(parseReference(xpp)); 9207 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 9208 res.setContext(parseReference(xpp)); 9209 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("occurrenceDateTime")) { 9210 res.setOccurrenceDateTimeElement(parseDateTime(xpp)); 9211 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 9212 res.setPerformer(parseReference(xpp)); 9213 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "reason")) { 9214 res.setReason(parseType("reason", xpp)); 9215 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 9216 res.getNote().add(parseAnnotation(xpp)); 9217 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("evaluationMessage")) { 9218 res.getEvaluationMessage().add(parseReference(xpp)); 9219 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outputParameters")) { 9220 res.setOutputParameters(parseReference(xpp)); 9221 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("result")) { 9222 res.setResult(parseReference(xpp)); 9223 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dataRequirement")) { 9224 res.getDataRequirement().add(parseDataRequirement(xpp)); 9225 } else if (!parseDomainResourceContent(eventType, xpp, res)) 9226 return false; 9227 return true; 9228 } 9229 9230 protected HealthcareService parseHealthcareService(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9231 HealthcareService res = new HealthcareService(); 9232 parseDomainResourceAttributes(xpp, res); 9233 next(xpp); 9234 int eventType = nextNoWhitespace(xpp); 9235 while (eventType != XmlPullParser.END_TAG) { 9236 if (!parseHealthcareServiceContent(eventType, xpp, res)) 9237 unknownContent(xpp); 9238 eventType = nextNoWhitespace(xpp); 9239 } 9240 next(xpp); 9241 parseElementClose(res); 9242 return res; 9243 } 9244 9245 protected boolean parseHealthcareServiceContent(int eventType, XmlPullParser xpp, HealthcareService res) throws XmlPullParserException, IOException, FHIRFormatError { 9246 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9247 res.getIdentifier().add(parseIdentifier(xpp)); 9248 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 9249 res.setActiveElement(parseBoolean(xpp)); 9250 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("providedBy")) { 9251 res.setProvidedBy(parseReference(xpp)); 9252 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 9253 res.setCategory(parseCodeableConcept(xpp)); 9254 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 9255 res.getType().add(parseCodeableConcept(xpp)); 9256 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialty")) { 9257 res.getSpecialty().add(parseCodeableConcept(xpp)); 9258 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 9259 res.getLocation().add(parseReference(xpp)); 9260 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 9261 res.setNameElement(parseString(xpp)); 9262 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 9263 res.setCommentElement(parseString(xpp)); 9264 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("extraDetails")) { 9265 res.setExtraDetailsElement(parseString(xpp)); 9266 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("photo")) { 9267 res.setPhoto(parseAttachment(xpp)); 9268 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 9269 res.getTelecom().add(parseContactPoint(xpp)); 9270 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverageArea")) { 9271 res.getCoverageArea().add(parseReference(xpp)); 9272 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceProvisionCode")) { 9273 res.getServiceProvisionCode().add(parseCodeableConcept(xpp)); 9274 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eligibility")) { 9275 res.setEligibility(parseCodeableConcept(xpp)); 9276 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eligibilityNote")) { 9277 res.setEligibilityNoteElement(parseString(xpp)); 9278 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("programName")) { 9279 res.getProgramName().add(parseString(xpp)); 9280 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("characteristic")) { 9281 res.getCharacteristic().add(parseCodeableConcept(xpp)); 9282 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referralMethod")) { 9283 res.getReferralMethod().add(parseCodeableConcept(xpp)); 9284 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("appointmentRequired")) { 9285 res.setAppointmentRequiredElement(parseBoolean(xpp)); 9286 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availableTime")) { 9287 res.getAvailableTime().add(parseHealthcareServiceHealthcareServiceAvailableTimeComponent(xpp, res)); 9288 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notAvailable")) { 9289 res.getNotAvailable().add(parseHealthcareServiceHealthcareServiceNotAvailableComponent(xpp, res)); 9290 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availabilityExceptions")) { 9291 res.setAvailabilityExceptionsElement(parseString(xpp)); 9292 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 9293 res.getEndpoint().add(parseReference(xpp)); 9294 } else if (!parseDomainResourceContent(eventType, xpp, res)) 9295 return false; 9296 return true; 9297 } 9298 9299 protected HealthcareService.HealthcareServiceAvailableTimeComponent parseHealthcareServiceHealthcareServiceAvailableTimeComponent(XmlPullParser xpp, HealthcareService owner) throws XmlPullParserException, IOException, FHIRFormatError { 9300 HealthcareService.HealthcareServiceAvailableTimeComponent res = new HealthcareService.HealthcareServiceAvailableTimeComponent(); 9301 parseBackboneAttributes(xpp, res); 9302 next(xpp); 9303 int eventType = nextNoWhitespace(xpp); 9304 while (eventType != XmlPullParser.END_TAG) { 9305 if (!parseHealthcareServiceHealthcareServiceAvailableTimeComponentContent(eventType, xpp, owner, res)) 9306 unknownContent(xpp); 9307 eventType = nextNoWhitespace(xpp); 9308 } 9309 next(xpp); 9310 parseElementClose(res); 9311 return res; 9312 } 9313 9314 protected boolean parseHealthcareServiceHealthcareServiceAvailableTimeComponentContent(int eventType, XmlPullParser xpp, HealthcareService owner, HealthcareService.HealthcareServiceAvailableTimeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9315 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("daysOfWeek")) { 9316 res.getDaysOfWeek().add(parseEnumeration(xpp, HealthcareService.DaysOfWeek.NULL, new HealthcareService.DaysOfWeekEnumFactory())); 9317 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("allDay")) { 9318 res.setAllDayElement(parseBoolean(xpp)); 9319 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availableStartTime")) { 9320 res.setAvailableStartTimeElement(parseTime(xpp)); 9321 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availableEndTime")) { 9322 res.setAvailableEndTimeElement(parseTime(xpp)); 9323 } else if (!parseBackboneContent(eventType, xpp, res)) 9324 return false; 9325 return true; 9326 } 9327 9328 protected HealthcareService.HealthcareServiceNotAvailableComponent parseHealthcareServiceHealthcareServiceNotAvailableComponent(XmlPullParser xpp, HealthcareService owner) throws XmlPullParserException, IOException, FHIRFormatError { 9329 HealthcareService.HealthcareServiceNotAvailableComponent res = new HealthcareService.HealthcareServiceNotAvailableComponent(); 9330 parseBackboneAttributes(xpp, res); 9331 next(xpp); 9332 int eventType = nextNoWhitespace(xpp); 9333 while (eventType != XmlPullParser.END_TAG) { 9334 if (!parseHealthcareServiceHealthcareServiceNotAvailableComponentContent(eventType, xpp, owner, res)) 9335 unknownContent(xpp); 9336 eventType = nextNoWhitespace(xpp); 9337 } 9338 next(xpp); 9339 parseElementClose(res); 9340 return res; 9341 } 9342 9343 protected boolean parseHealthcareServiceHealthcareServiceNotAvailableComponentContent(int eventType, XmlPullParser xpp, HealthcareService owner, HealthcareService.HealthcareServiceNotAvailableComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9344 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 9345 res.setDescriptionElement(parseString(xpp)); 9346 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("during")) { 9347 res.setDuring(parsePeriod(xpp)); 9348 } else if (!parseBackboneContent(eventType, xpp, res)) 9349 return false; 9350 return true; 9351 } 9352 9353 protected ImagingManifest parseImagingManifest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9354 ImagingManifest res = new ImagingManifest(); 9355 parseDomainResourceAttributes(xpp, res); 9356 next(xpp); 9357 int eventType = nextNoWhitespace(xpp); 9358 while (eventType != XmlPullParser.END_TAG) { 9359 if (!parseImagingManifestContent(eventType, xpp, res)) 9360 unknownContent(xpp); 9361 eventType = nextNoWhitespace(xpp); 9362 } 9363 next(xpp); 9364 parseElementClose(res); 9365 return res; 9366 } 9367 9368 protected boolean parseImagingManifestContent(int eventType, XmlPullParser xpp, ImagingManifest res) throws XmlPullParserException, IOException, FHIRFormatError { 9369 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9370 res.setIdentifier(parseIdentifier(xpp)); 9371 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 9372 res.setPatient(parseReference(xpp)); 9373 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authoringTime")) { 9374 res.setAuthoringTimeElement(parseDateTime(xpp)); 9375 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 9376 res.setAuthor(parseReference(xpp)); 9377 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 9378 res.setDescriptionElement(parseString(xpp)); 9379 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("study")) { 9380 res.getStudy().add(parseImagingManifestStudyComponent(xpp, res)); 9381 } else if (!parseDomainResourceContent(eventType, xpp, res)) 9382 return false; 9383 return true; 9384 } 9385 9386 protected ImagingManifest.StudyComponent parseImagingManifestStudyComponent(XmlPullParser xpp, ImagingManifest owner) throws XmlPullParserException, IOException, FHIRFormatError { 9387 ImagingManifest.StudyComponent res = new ImagingManifest.StudyComponent(); 9388 parseBackboneAttributes(xpp, res); 9389 next(xpp); 9390 int eventType = nextNoWhitespace(xpp); 9391 while (eventType != XmlPullParser.END_TAG) { 9392 if (!parseImagingManifestStudyComponentContent(eventType, xpp, owner, res)) 9393 unknownContent(xpp); 9394 eventType = nextNoWhitespace(xpp); 9395 } 9396 next(xpp); 9397 parseElementClose(res); 9398 return res; 9399 } 9400 9401 protected boolean parseImagingManifestStudyComponentContent(int eventType, XmlPullParser xpp, ImagingManifest owner, ImagingManifest.StudyComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9402 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uid")) { 9403 res.setUidElement(parseOid(xpp)); 9404 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("imagingStudy")) { 9405 res.setImagingStudy(parseReference(xpp)); 9406 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 9407 res.getEndpoint().add(parseReference(xpp)); 9408 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("series")) { 9409 res.getSeries().add(parseImagingManifestSeriesComponent(xpp, owner)); 9410 } else if (!parseBackboneContent(eventType, xpp, res)) 9411 return false; 9412 return true; 9413 } 9414 9415 protected ImagingManifest.SeriesComponent parseImagingManifestSeriesComponent(XmlPullParser xpp, ImagingManifest owner) throws XmlPullParserException, IOException, FHIRFormatError { 9416 ImagingManifest.SeriesComponent res = new ImagingManifest.SeriesComponent(); 9417 parseBackboneAttributes(xpp, res); 9418 next(xpp); 9419 int eventType = nextNoWhitespace(xpp); 9420 while (eventType != XmlPullParser.END_TAG) { 9421 if (!parseImagingManifestSeriesComponentContent(eventType, xpp, owner, res)) 9422 unknownContent(xpp); 9423 eventType = nextNoWhitespace(xpp); 9424 } 9425 next(xpp); 9426 parseElementClose(res); 9427 return res; 9428 } 9429 9430 protected boolean parseImagingManifestSeriesComponentContent(int eventType, XmlPullParser xpp, ImagingManifest owner, ImagingManifest.SeriesComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9431 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uid")) { 9432 res.setUidElement(parseOid(xpp)); 9433 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 9434 res.getEndpoint().add(parseReference(xpp)); 9435 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instance")) { 9436 res.getInstance().add(parseImagingManifestInstanceComponent(xpp, owner)); 9437 } else if (!parseBackboneContent(eventType, xpp, res)) 9438 return false; 9439 return true; 9440 } 9441 9442 protected ImagingManifest.InstanceComponent parseImagingManifestInstanceComponent(XmlPullParser xpp, ImagingManifest owner) throws XmlPullParserException, IOException, FHIRFormatError { 9443 ImagingManifest.InstanceComponent res = new ImagingManifest.InstanceComponent(); 9444 parseBackboneAttributes(xpp, res); 9445 next(xpp); 9446 int eventType = nextNoWhitespace(xpp); 9447 while (eventType != XmlPullParser.END_TAG) { 9448 if (!parseImagingManifestInstanceComponentContent(eventType, xpp, owner, res)) 9449 unknownContent(xpp); 9450 eventType = nextNoWhitespace(xpp); 9451 } 9452 next(xpp); 9453 parseElementClose(res); 9454 return res; 9455 } 9456 9457 protected boolean parseImagingManifestInstanceComponentContent(int eventType, XmlPullParser xpp, ImagingManifest owner, ImagingManifest.InstanceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9458 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sopClass")) { 9459 res.setSopClassElement(parseOid(xpp)); 9460 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uid")) { 9461 res.setUidElement(parseOid(xpp)); 9462 } else if (!parseBackboneContent(eventType, xpp, res)) 9463 return false; 9464 return true; 9465 } 9466 9467 protected ImagingStudy parseImagingStudy(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9468 ImagingStudy res = new ImagingStudy(); 9469 parseDomainResourceAttributes(xpp, res); 9470 next(xpp); 9471 int eventType = nextNoWhitespace(xpp); 9472 while (eventType != XmlPullParser.END_TAG) { 9473 if (!parseImagingStudyContent(eventType, xpp, res)) 9474 unknownContent(xpp); 9475 eventType = nextNoWhitespace(xpp); 9476 } 9477 next(xpp); 9478 parseElementClose(res); 9479 return res; 9480 } 9481 9482 protected boolean parseImagingStudyContent(int eventType, XmlPullParser xpp, ImagingStudy res) throws XmlPullParserException, IOException, FHIRFormatError { 9483 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uid")) { 9484 res.setUidElement(parseOid(xpp)); 9485 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("accession")) { 9486 res.setAccession(parseIdentifier(xpp)); 9487 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9488 res.getIdentifier().add(parseIdentifier(xpp)); 9489 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availability")) { 9490 res.setAvailabilityElement(parseEnumeration(xpp, ImagingStudy.InstanceAvailability.NULL, new ImagingStudy.InstanceAvailabilityEnumFactory())); 9491 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modalityList")) { 9492 res.getModalityList().add(parseCoding(xpp)); 9493 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 9494 res.setPatient(parseReference(xpp)); 9495 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 9496 res.setContext(parseReference(xpp)); 9497 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("started")) { 9498 res.setStartedElement(parseDateTime(xpp)); 9499 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 9500 res.getBasedOn().add(parseReference(xpp)); 9501 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referrer")) { 9502 res.setReferrer(parseReference(xpp)); 9503 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("interpreter")) { 9504 res.getInterpreter().add(parseReference(xpp)); 9505 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 9506 res.getEndpoint().add(parseReference(xpp)); 9507 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("numberOfSeries")) { 9508 res.setNumberOfSeriesElement(parseUnsignedInt(xpp)); 9509 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("numberOfInstances")) { 9510 res.setNumberOfInstancesElement(parseUnsignedInt(xpp)); 9511 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("procedureReference")) { 9512 res.getProcedureReference().add(parseReference(xpp)); 9513 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("procedureCode")) { 9514 res.getProcedureCode().add(parseCodeableConcept(xpp)); 9515 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 9516 res.setReason(parseCodeableConcept(xpp)); 9517 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 9518 res.setDescriptionElement(parseString(xpp)); 9519 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("series")) { 9520 res.getSeries().add(parseImagingStudyImagingStudySeriesComponent(xpp, res)); 9521 } else if (!parseDomainResourceContent(eventType, xpp, res)) 9522 return false; 9523 return true; 9524 } 9525 9526 protected ImagingStudy.ImagingStudySeriesComponent parseImagingStudyImagingStudySeriesComponent(XmlPullParser xpp, ImagingStudy owner) throws XmlPullParserException, IOException, FHIRFormatError { 9527 ImagingStudy.ImagingStudySeriesComponent res = new ImagingStudy.ImagingStudySeriesComponent(); 9528 parseBackboneAttributes(xpp, res); 9529 next(xpp); 9530 int eventType = nextNoWhitespace(xpp); 9531 while (eventType != XmlPullParser.END_TAG) { 9532 if (!parseImagingStudyImagingStudySeriesComponentContent(eventType, xpp, owner, res)) 9533 unknownContent(xpp); 9534 eventType = nextNoWhitespace(xpp); 9535 } 9536 next(xpp); 9537 parseElementClose(res); 9538 return res; 9539 } 9540 9541 protected boolean parseImagingStudyImagingStudySeriesComponentContent(int eventType, XmlPullParser xpp, ImagingStudy owner, ImagingStudy.ImagingStudySeriesComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9542 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uid")) { 9543 res.setUidElement(parseOid(xpp)); 9544 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("number")) { 9545 res.setNumberElement(parseUnsignedInt(xpp)); 9546 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modality")) { 9547 res.setModality(parseCoding(xpp)); 9548 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 9549 res.setDescriptionElement(parseString(xpp)); 9550 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("numberOfInstances")) { 9551 res.setNumberOfInstancesElement(parseUnsignedInt(xpp)); 9552 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availability")) { 9553 res.setAvailabilityElement(parseEnumeration(xpp, ImagingStudy.InstanceAvailability.NULL, new ImagingStudy.InstanceAvailabilityEnumFactory())); 9554 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 9555 res.getEndpoint().add(parseReference(xpp)); 9556 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 9557 res.setBodySite(parseCoding(xpp)); 9558 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("laterality")) { 9559 res.setLaterality(parseCoding(xpp)); 9560 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("started")) { 9561 res.setStartedElement(parseDateTime(xpp)); 9562 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 9563 res.getPerformer().add(parseReference(xpp)); 9564 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instance")) { 9565 res.getInstance().add(parseImagingStudyImagingStudySeriesInstanceComponent(xpp, owner)); 9566 } else if (!parseBackboneContent(eventType, xpp, res)) 9567 return false; 9568 return true; 9569 } 9570 9571 protected ImagingStudy.ImagingStudySeriesInstanceComponent parseImagingStudyImagingStudySeriesInstanceComponent(XmlPullParser xpp, ImagingStudy owner) throws XmlPullParserException, IOException, FHIRFormatError { 9572 ImagingStudy.ImagingStudySeriesInstanceComponent res = new ImagingStudy.ImagingStudySeriesInstanceComponent(); 9573 parseBackboneAttributes(xpp, res); 9574 next(xpp); 9575 int eventType = nextNoWhitespace(xpp); 9576 while (eventType != XmlPullParser.END_TAG) { 9577 if (!parseImagingStudyImagingStudySeriesInstanceComponentContent(eventType, xpp, owner, res)) 9578 unknownContent(xpp); 9579 eventType = nextNoWhitespace(xpp); 9580 } 9581 next(xpp); 9582 parseElementClose(res); 9583 return res; 9584 } 9585 9586 protected boolean parseImagingStudyImagingStudySeriesInstanceComponentContent(int eventType, XmlPullParser xpp, ImagingStudy owner, ImagingStudy.ImagingStudySeriesInstanceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9587 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uid")) { 9588 res.setUidElement(parseOid(xpp)); 9589 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("number")) { 9590 res.setNumberElement(parseUnsignedInt(xpp)); 9591 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sopClass")) { 9592 res.setSopClassElement(parseOid(xpp)); 9593 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 9594 res.setTitleElement(parseString(xpp)); 9595 } else if (!parseBackboneContent(eventType, xpp, res)) 9596 return false; 9597 return true; 9598 } 9599 9600 protected Immunization parseImmunization(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9601 Immunization res = new Immunization(); 9602 parseDomainResourceAttributes(xpp, res); 9603 next(xpp); 9604 int eventType = nextNoWhitespace(xpp); 9605 while (eventType != XmlPullParser.END_TAG) { 9606 if (!parseImmunizationContent(eventType, xpp, res)) 9607 unknownContent(xpp); 9608 eventType = nextNoWhitespace(xpp); 9609 } 9610 next(xpp); 9611 parseElementClose(res); 9612 return res; 9613 } 9614 9615 protected boolean parseImmunizationContent(int eventType, XmlPullParser xpp, Immunization res) throws XmlPullParserException, IOException, FHIRFormatError { 9616 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9617 res.getIdentifier().add(parseIdentifier(xpp)); 9618 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 9619 res.setStatusElement(parseEnumeration(xpp, Immunization.ImmunizationStatus.NULL, new Immunization.ImmunizationStatusEnumFactory())); 9620 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notGiven")) { 9621 res.setNotGivenElement(parseBoolean(xpp)); 9622 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("vaccineCode")) { 9623 res.setVaccineCode(parseCodeableConcept(xpp)); 9624 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 9625 res.setPatient(parseReference(xpp)); 9626 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 9627 res.setEncounter(parseReference(xpp)); 9628 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 9629 res.setDateElement(parseDateTime(xpp)); 9630 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("primarySource")) { 9631 res.setPrimarySourceElement(parseBoolean(xpp)); 9632 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reportOrigin")) { 9633 res.setReportOrigin(parseCodeableConcept(xpp)); 9634 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 9635 res.setLocation(parseReference(xpp)); 9636 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manufacturer")) { 9637 res.setManufacturer(parseReference(xpp)); 9638 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lotNumber")) { 9639 res.setLotNumberElement(parseString(xpp)); 9640 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expirationDate")) { 9641 res.setExpirationDateElement(parseDate(xpp)); 9642 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("site")) { 9643 res.setSite(parseCodeableConcept(xpp)); 9644 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("route")) { 9645 res.setRoute(parseCodeableConcept(xpp)); 9646 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseQuantity")) { 9647 res.setDoseQuantity(parseSimpleQuantity(xpp)); 9648 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("practitioner")) { 9649 res.getPractitioner().add(parseImmunizationImmunizationPractitionerComponent(xpp, res)); 9650 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 9651 res.getNote().add(parseAnnotation(xpp)); 9652 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("explanation")) { 9653 res.setExplanation(parseImmunizationImmunizationExplanationComponent(xpp, res)); 9654 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reaction")) { 9655 res.getReaction().add(parseImmunizationImmunizationReactionComponent(xpp, res)); 9656 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("vaccinationProtocol")) { 9657 res.getVaccinationProtocol().add(parseImmunizationImmunizationVaccinationProtocolComponent(xpp, res)); 9658 } else if (!parseDomainResourceContent(eventType, xpp, res)) 9659 return false; 9660 return true; 9661 } 9662 9663 protected Immunization.ImmunizationPractitionerComponent parseImmunizationImmunizationPractitionerComponent(XmlPullParser xpp, Immunization owner) throws XmlPullParserException, IOException, FHIRFormatError { 9664 Immunization.ImmunizationPractitionerComponent res = new Immunization.ImmunizationPractitionerComponent(); 9665 parseBackboneAttributes(xpp, res); 9666 next(xpp); 9667 int eventType = nextNoWhitespace(xpp); 9668 while (eventType != XmlPullParser.END_TAG) { 9669 if (!parseImmunizationImmunizationPractitionerComponentContent(eventType, xpp, owner, res)) 9670 unknownContent(xpp); 9671 eventType = nextNoWhitespace(xpp); 9672 } 9673 next(xpp); 9674 parseElementClose(res); 9675 return res; 9676 } 9677 9678 protected boolean parseImmunizationImmunizationPractitionerComponentContent(int eventType, XmlPullParser xpp, Immunization owner, Immunization.ImmunizationPractitionerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9679 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 9680 res.setRole(parseCodeableConcept(xpp)); 9681 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 9682 res.setActor(parseReference(xpp)); 9683 } else if (!parseBackboneContent(eventType, xpp, res)) 9684 return false; 9685 return true; 9686 } 9687 9688 protected Immunization.ImmunizationExplanationComponent parseImmunizationImmunizationExplanationComponent(XmlPullParser xpp, Immunization owner) throws XmlPullParserException, IOException, FHIRFormatError { 9689 Immunization.ImmunizationExplanationComponent res = new Immunization.ImmunizationExplanationComponent(); 9690 parseBackboneAttributes(xpp, res); 9691 next(xpp); 9692 int eventType = nextNoWhitespace(xpp); 9693 while (eventType != XmlPullParser.END_TAG) { 9694 if (!parseImmunizationImmunizationExplanationComponentContent(eventType, xpp, owner, res)) 9695 unknownContent(xpp); 9696 eventType = nextNoWhitespace(xpp); 9697 } 9698 next(xpp); 9699 parseElementClose(res); 9700 return res; 9701 } 9702 9703 protected boolean parseImmunizationImmunizationExplanationComponentContent(int eventType, XmlPullParser xpp, Immunization owner, Immunization.ImmunizationExplanationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9704 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 9705 res.getReason().add(parseCodeableConcept(xpp)); 9706 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonNotGiven")) { 9707 res.getReasonNotGiven().add(parseCodeableConcept(xpp)); 9708 } else if (!parseBackboneContent(eventType, xpp, res)) 9709 return false; 9710 return true; 9711 } 9712 9713 protected Immunization.ImmunizationReactionComponent parseImmunizationImmunizationReactionComponent(XmlPullParser xpp, Immunization owner) throws XmlPullParserException, IOException, FHIRFormatError { 9714 Immunization.ImmunizationReactionComponent res = new Immunization.ImmunizationReactionComponent(); 9715 parseBackboneAttributes(xpp, res); 9716 next(xpp); 9717 int eventType = nextNoWhitespace(xpp); 9718 while (eventType != XmlPullParser.END_TAG) { 9719 if (!parseImmunizationImmunizationReactionComponentContent(eventType, xpp, owner, res)) 9720 unknownContent(xpp); 9721 eventType = nextNoWhitespace(xpp); 9722 } 9723 next(xpp); 9724 parseElementClose(res); 9725 return res; 9726 } 9727 9728 protected boolean parseImmunizationImmunizationReactionComponentContent(int eventType, XmlPullParser xpp, Immunization owner, Immunization.ImmunizationReactionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9729 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 9730 res.setDateElement(parseDateTime(xpp)); 9731 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 9732 res.setDetail(parseReference(xpp)); 9733 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reported")) { 9734 res.setReportedElement(parseBoolean(xpp)); 9735 } else if (!parseBackboneContent(eventType, xpp, res)) 9736 return false; 9737 return true; 9738 } 9739 9740 protected Immunization.ImmunizationVaccinationProtocolComponent parseImmunizationImmunizationVaccinationProtocolComponent(XmlPullParser xpp, Immunization owner) throws XmlPullParserException, IOException, FHIRFormatError { 9741 Immunization.ImmunizationVaccinationProtocolComponent res = new Immunization.ImmunizationVaccinationProtocolComponent(); 9742 parseBackboneAttributes(xpp, res); 9743 next(xpp); 9744 int eventType = nextNoWhitespace(xpp); 9745 while (eventType != XmlPullParser.END_TAG) { 9746 if (!parseImmunizationImmunizationVaccinationProtocolComponentContent(eventType, xpp, owner, res)) 9747 unknownContent(xpp); 9748 eventType = nextNoWhitespace(xpp); 9749 } 9750 next(xpp); 9751 parseElementClose(res); 9752 return res; 9753 } 9754 9755 protected boolean parseImmunizationImmunizationVaccinationProtocolComponentContent(int eventType, XmlPullParser xpp, Immunization owner, Immunization.ImmunizationVaccinationProtocolComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9756 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseSequence")) { 9757 res.setDoseSequenceElement(parsePositiveInt(xpp)); 9758 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 9759 res.setDescriptionElement(parseString(xpp)); 9760 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authority")) { 9761 res.setAuthority(parseReference(xpp)); 9762 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("series")) { 9763 res.setSeriesElement(parseString(xpp)); 9764 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("seriesDoses")) { 9765 res.setSeriesDosesElement(parsePositiveInt(xpp)); 9766 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("targetDisease")) { 9767 res.getTargetDisease().add(parseCodeableConcept(xpp)); 9768 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseStatus")) { 9769 res.setDoseStatus(parseCodeableConcept(xpp)); 9770 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseStatusReason")) { 9771 res.setDoseStatusReason(parseCodeableConcept(xpp)); 9772 } else if (!parseBackboneContent(eventType, xpp, res)) 9773 return false; 9774 return true; 9775 } 9776 9777 protected ImmunizationRecommendation parseImmunizationRecommendation(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9778 ImmunizationRecommendation res = new ImmunizationRecommendation(); 9779 parseDomainResourceAttributes(xpp, res); 9780 next(xpp); 9781 int eventType = nextNoWhitespace(xpp); 9782 while (eventType != XmlPullParser.END_TAG) { 9783 if (!parseImmunizationRecommendationContent(eventType, xpp, res)) 9784 unknownContent(xpp); 9785 eventType = nextNoWhitespace(xpp); 9786 } 9787 next(xpp); 9788 parseElementClose(res); 9789 return res; 9790 } 9791 9792 protected boolean parseImmunizationRecommendationContent(int eventType, XmlPullParser xpp, ImmunizationRecommendation res) throws XmlPullParserException, IOException, FHIRFormatError { 9793 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9794 res.getIdentifier().add(parseIdentifier(xpp)); 9795 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 9796 res.setPatient(parseReference(xpp)); 9797 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recommendation")) { 9798 res.getRecommendation().add(parseImmunizationRecommendationImmunizationRecommendationRecommendationComponent(xpp, res)); 9799 } else if (!parseDomainResourceContent(eventType, xpp, res)) 9800 return false; 9801 return true; 9802 } 9803 9804 protected ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent parseImmunizationRecommendationImmunizationRecommendationRecommendationComponent(XmlPullParser xpp, ImmunizationRecommendation owner) throws XmlPullParserException, IOException, FHIRFormatError { 9805 ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent res = new ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent(); 9806 parseBackboneAttributes(xpp, res); 9807 next(xpp); 9808 int eventType = nextNoWhitespace(xpp); 9809 while (eventType != XmlPullParser.END_TAG) { 9810 if (!parseImmunizationRecommendationImmunizationRecommendationRecommendationComponentContent(eventType, xpp, owner, res)) 9811 unknownContent(xpp); 9812 eventType = nextNoWhitespace(xpp); 9813 } 9814 next(xpp); 9815 parseElementClose(res); 9816 return res; 9817 } 9818 9819 protected boolean parseImmunizationRecommendationImmunizationRecommendationRecommendationComponentContent(int eventType, XmlPullParser xpp, ImmunizationRecommendation owner, ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9820 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 9821 res.setDateElement(parseDateTime(xpp)); 9822 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("vaccineCode")) { 9823 res.setVaccineCode(parseCodeableConcept(xpp)); 9824 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("targetDisease")) { 9825 res.setTargetDisease(parseCodeableConcept(xpp)); 9826 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseNumber")) { 9827 res.setDoseNumberElement(parsePositiveInt(xpp)); 9828 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("forecastStatus")) { 9829 res.setForecastStatus(parseCodeableConcept(xpp)); 9830 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateCriterion")) { 9831 res.getDateCriterion().add(parseImmunizationRecommendationImmunizationRecommendationRecommendationDateCriterionComponent(xpp, owner)); 9832 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("protocol")) { 9833 res.setProtocol(parseImmunizationRecommendationImmunizationRecommendationRecommendationProtocolComponent(xpp, owner)); 9834 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingImmunization")) { 9835 res.getSupportingImmunization().add(parseReference(xpp)); 9836 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingPatientInformation")) { 9837 res.getSupportingPatientInformation().add(parseReference(xpp)); 9838 } else if (!parseBackboneContent(eventType, xpp, res)) 9839 return false; 9840 return true; 9841 } 9842 9843 protected ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent parseImmunizationRecommendationImmunizationRecommendationRecommendationDateCriterionComponent(XmlPullParser xpp, ImmunizationRecommendation owner) throws XmlPullParserException, IOException, FHIRFormatError { 9844 ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent res = new ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent(); 9845 parseBackboneAttributes(xpp, res); 9846 next(xpp); 9847 int eventType = nextNoWhitespace(xpp); 9848 while (eventType != XmlPullParser.END_TAG) { 9849 if (!parseImmunizationRecommendationImmunizationRecommendationRecommendationDateCriterionComponentContent(eventType, xpp, owner, res)) 9850 unknownContent(xpp); 9851 eventType = nextNoWhitespace(xpp); 9852 } 9853 next(xpp); 9854 parseElementClose(res); 9855 return res; 9856 } 9857 9858 protected boolean parseImmunizationRecommendationImmunizationRecommendationRecommendationDateCriterionComponentContent(int eventType, XmlPullParser xpp, ImmunizationRecommendation owner, ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9859 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 9860 res.setCode(parseCodeableConcept(xpp)); 9861 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 9862 res.setValueElement(parseDateTime(xpp)); 9863 } else if (!parseBackboneContent(eventType, xpp, res)) 9864 return false; 9865 return true; 9866 } 9867 9868 protected ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent parseImmunizationRecommendationImmunizationRecommendationRecommendationProtocolComponent(XmlPullParser xpp, ImmunizationRecommendation owner) throws XmlPullParserException, IOException, FHIRFormatError { 9869 ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent res = new ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent(); 9870 parseBackboneAttributes(xpp, res); 9871 next(xpp); 9872 int eventType = nextNoWhitespace(xpp); 9873 while (eventType != XmlPullParser.END_TAG) { 9874 if (!parseImmunizationRecommendationImmunizationRecommendationRecommendationProtocolComponentContent(eventType, xpp, owner, res)) 9875 unknownContent(xpp); 9876 eventType = nextNoWhitespace(xpp); 9877 } 9878 next(xpp); 9879 parseElementClose(res); 9880 return res; 9881 } 9882 9883 protected boolean parseImmunizationRecommendationImmunizationRecommendationRecommendationProtocolComponentContent(int eventType, XmlPullParser xpp, ImmunizationRecommendation owner, ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9884 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseSequence")) { 9885 res.setDoseSequenceElement(parsePositiveInt(xpp)); 9886 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 9887 res.setDescriptionElement(parseString(xpp)); 9888 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authority")) { 9889 res.setAuthority(parseReference(xpp)); 9890 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("series")) { 9891 res.setSeriesElement(parseString(xpp)); 9892 } else if (!parseBackboneContent(eventType, xpp, res)) 9893 return false; 9894 return true; 9895 } 9896 9897 protected ImplementationGuide parseImplementationGuide(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9898 ImplementationGuide res = new ImplementationGuide(); 9899 parseDomainResourceAttributes(xpp, res); 9900 next(xpp); 9901 int eventType = nextNoWhitespace(xpp); 9902 while (eventType != XmlPullParser.END_TAG) { 9903 if (!parseImplementationGuideContent(eventType, xpp, res)) 9904 unknownContent(xpp); 9905 eventType = nextNoWhitespace(xpp); 9906 } 9907 next(xpp); 9908 parseElementClose(res); 9909 return res; 9910 } 9911 9912 protected boolean parseImplementationGuideContent(int eventType, XmlPullParser xpp, ImplementationGuide res) throws XmlPullParserException, IOException, FHIRFormatError { 9913 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 9914 res.setUrlElement(parseUri(xpp)); 9915 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 9916 res.setVersionElement(parseString(xpp)); 9917 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 9918 res.setNameElement(parseString(xpp)); 9919 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 9920 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 9921 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 9922 res.setExperimentalElement(parseBoolean(xpp)); 9923 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 9924 res.setDateElement(parseDateTime(xpp)); 9925 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 9926 res.setPublisherElement(parseString(xpp)); 9927 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 9928 res.getContact().add(parseContactDetail(xpp)); 9929 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 9930 res.setDescriptionElement(parseMarkdown(xpp)); 9931 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 9932 res.getUseContext().add(parseUsageContext(xpp)); 9933 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 9934 res.getJurisdiction().add(parseCodeableConcept(xpp)); 9935 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 9936 res.setCopyrightElement(parseMarkdown(xpp)); 9937 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fhirVersion")) { 9938 res.setFhirVersionElement(parseId(xpp)); 9939 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dependency")) { 9940 res.getDependency().add(parseImplementationGuideImplementationGuideDependencyComponent(xpp, res)); 9941 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("package")) { 9942 res.getPackage().add(parseImplementationGuideImplementationGuidePackageComponent(xpp, res)); 9943 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("global")) { 9944 res.getGlobal().add(parseImplementationGuideImplementationGuideGlobalComponent(xpp, res)); 9945 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("binary")) { 9946 res.getBinary().add(parseUri(xpp)); 9947 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("page")) { 9948 res.setPage(parseImplementationGuideImplementationGuidePageComponent(xpp, res)); 9949 } else if (!parseDomainResourceContent(eventType, xpp, res)) 9950 return false; 9951 return true; 9952 } 9953 9954 protected ImplementationGuide.ImplementationGuideDependencyComponent parseImplementationGuideImplementationGuideDependencyComponent(XmlPullParser xpp, ImplementationGuide owner) throws XmlPullParserException, IOException, FHIRFormatError { 9955 ImplementationGuide.ImplementationGuideDependencyComponent res = new ImplementationGuide.ImplementationGuideDependencyComponent(); 9956 parseBackboneAttributes(xpp, res); 9957 next(xpp); 9958 int eventType = nextNoWhitespace(xpp); 9959 while (eventType != XmlPullParser.END_TAG) { 9960 if (!parseImplementationGuideImplementationGuideDependencyComponentContent(eventType, xpp, owner, res)) 9961 unknownContent(xpp); 9962 eventType = nextNoWhitespace(xpp); 9963 } 9964 next(xpp); 9965 parseElementClose(res); 9966 return res; 9967 } 9968 9969 protected boolean parseImplementationGuideImplementationGuideDependencyComponentContent(int eventType, XmlPullParser xpp, ImplementationGuide owner, ImplementationGuide.ImplementationGuideDependencyComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9970 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 9971 res.setTypeElement(parseEnumeration(xpp, ImplementationGuide.GuideDependencyType.NULL, new ImplementationGuide.GuideDependencyTypeEnumFactory())); 9972 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uri")) { 9973 res.setUriElement(parseUri(xpp)); 9974 } else if (!parseBackboneContent(eventType, xpp, res)) 9975 return false; 9976 return true; 9977 } 9978 9979 protected ImplementationGuide.ImplementationGuidePackageComponent parseImplementationGuideImplementationGuidePackageComponent(XmlPullParser xpp, ImplementationGuide owner) throws XmlPullParserException, IOException, FHIRFormatError { 9980 ImplementationGuide.ImplementationGuidePackageComponent res = new ImplementationGuide.ImplementationGuidePackageComponent(); 9981 parseBackboneAttributes(xpp, res); 9982 next(xpp); 9983 int eventType = nextNoWhitespace(xpp); 9984 while (eventType != XmlPullParser.END_TAG) { 9985 if (!parseImplementationGuideImplementationGuidePackageComponentContent(eventType, xpp, owner, res)) 9986 unknownContent(xpp); 9987 eventType = nextNoWhitespace(xpp); 9988 } 9989 next(xpp); 9990 parseElementClose(res); 9991 return res; 9992 } 9993 9994 protected boolean parseImplementationGuideImplementationGuidePackageComponentContent(int eventType, XmlPullParser xpp, ImplementationGuide owner, ImplementationGuide.ImplementationGuidePackageComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9995 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 9996 res.setNameElement(parseString(xpp)); 9997 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 9998 res.setDescriptionElement(parseString(xpp)); 9999 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 10000 res.getResource().add(parseImplementationGuideImplementationGuidePackageResourceComponent(xpp, owner)); 10001 } else if (!parseBackboneContent(eventType, xpp, res)) 10002 return false; 10003 return true; 10004 } 10005 10006 protected ImplementationGuide.ImplementationGuidePackageResourceComponent parseImplementationGuideImplementationGuidePackageResourceComponent(XmlPullParser xpp, ImplementationGuide owner) throws XmlPullParserException, IOException, FHIRFormatError { 10007 ImplementationGuide.ImplementationGuidePackageResourceComponent res = new ImplementationGuide.ImplementationGuidePackageResourceComponent(); 10008 parseBackboneAttributes(xpp, res); 10009 next(xpp); 10010 int eventType = nextNoWhitespace(xpp); 10011 while (eventType != XmlPullParser.END_TAG) { 10012 if (!parseImplementationGuideImplementationGuidePackageResourceComponentContent(eventType, xpp, owner, res)) 10013 unknownContent(xpp); 10014 eventType = nextNoWhitespace(xpp); 10015 } 10016 next(xpp); 10017 parseElementClose(res); 10018 return res; 10019 } 10020 10021 protected boolean parseImplementationGuideImplementationGuidePackageResourceComponentContent(int eventType, XmlPullParser xpp, ImplementationGuide owner, ImplementationGuide.ImplementationGuidePackageResourceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10022 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("example")) { 10023 res.setExampleElement(parseBoolean(xpp)); 10024 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 10025 res.setNameElement(parseString(xpp)); 10026 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 10027 res.setDescriptionElement(parseString(xpp)); 10028 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("acronym")) { 10029 res.setAcronymElement(parseString(xpp)); 10030 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "source")) { 10031 res.setSource(parseType("source", xpp)); 10032 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exampleFor")) { 10033 res.setExampleFor(parseReference(xpp)); 10034 } else if (!parseBackboneContent(eventType, xpp, res)) 10035 return false; 10036 return true; 10037 } 10038 10039 protected ImplementationGuide.ImplementationGuideGlobalComponent parseImplementationGuideImplementationGuideGlobalComponent(XmlPullParser xpp, ImplementationGuide owner) throws XmlPullParserException, IOException, FHIRFormatError { 10040 ImplementationGuide.ImplementationGuideGlobalComponent res = new ImplementationGuide.ImplementationGuideGlobalComponent(); 10041 parseBackboneAttributes(xpp, res); 10042 next(xpp); 10043 int eventType = nextNoWhitespace(xpp); 10044 while (eventType != XmlPullParser.END_TAG) { 10045 if (!parseImplementationGuideImplementationGuideGlobalComponentContent(eventType, xpp, owner, res)) 10046 unknownContent(xpp); 10047 eventType = nextNoWhitespace(xpp); 10048 } 10049 next(xpp); 10050 parseElementClose(res); 10051 return res; 10052 } 10053 10054 protected boolean parseImplementationGuideImplementationGuideGlobalComponentContent(int eventType, XmlPullParser xpp, ImplementationGuide owner, ImplementationGuide.ImplementationGuideGlobalComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10055 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 10056 res.setTypeElement(parseCode(xpp)); 10057 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 10058 res.setProfile(parseReference(xpp)); 10059 } else if (!parseBackboneContent(eventType, xpp, res)) 10060 return false; 10061 return true; 10062 } 10063 10064 protected ImplementationGuide.ImplementationGuidePageComponent parseImplementationGuideImplementationGuidePageComponent(XmlPullParser xpp, ImplementationGuide owner) throws XmlPullParserException, IOException, FHIRFormatError { 10065 ImplementationGuide.ImplementationGuidePageComponent res = new ImplementationGuide.ImplementationGuidePageComponent(); 10066 parseBackboneAttributes(xpp, res); 10067 next(xpp); 10068 int eventType = nextNoWhitespace(xpp); 10069 while (eventType != XmlPullParser.END_TAG) { 10070 if (!parseImplementationGuideImplementationGuidePageComponentContent(eventType, xpp, owner, res)) 10071 unknownContent(xpp); 10072 eventType = nextNoWhitespace(xpp); 10073 } 10074 next(xpp); 10075 parseElementClose(res); 10076 return res; 10077 } 10078 10079 protected boolean parseImplementationGuideImplementationGuidePageComponentContent(int eventType, XmlPullParser xpp, ImplementationGuide owner, ImplementationGuide.ImplementationGuidePageComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10080 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 10081 res.setSourceElement(parseUri(xpp)); 10082 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 10083 res.setTitleElement(parseString(xpp)); 10084 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 10085 res.setKindElement(parseEnumeration(xpp, ImplementationGuide.GuidePageKind.NULL, new ImplementationGuide.GuidePageKindEnumFactory())); 10086 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 10087 res.getType().add(parseCode(xpp)); 10088 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("package")) { 10089 res.getPackage().add(parseString(xpp)); 10090 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("format")) { 10091 res.setFormatElement(parseCode(xpp)); 10092 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("page")) { 10093 res.getPage().add(parseImplementationGuideImplementationGuidePageComponent(xpp, owner)); 10094 } else if (!parseBackboneContent(eventType, xpp, res)) 10095 return false; 10096 return true; 10097 } 10098 10099 protected Library parseLibrary(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10100 Library res = new Library(); 10101 parseDomainResourceAttributes(xpp, res); 10102 next(xpp); 10103 int eventType = nextNoWhitespace(xpp); 10104 while (eventType != XmlPullParser.END_TAG) { 10105 if (!parseLibraryContent(eventType, xpp, res)) 10106 unknownContent(xpp); 10107 eventType = nextNoWhitespace(xpp); 10108 } 10109 next(xpp); 10110 parseElementClose(res); 10111 return res; 10112 } 10113 10114 protected boolean parseLibraryContent(int eventType, XmlPullParser xpp, Library res) throws XmlPullParserException, IOException, FHIRFormatError { 10115 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 10116 res.setUrlElement(parseUri(xpp)); 10117 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10118 res.getIdentifier().add(parseIdentifier(xpp)); 10119 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 10120 res.setVersionElement(parseString(xpp)); 10121 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 10122 res.setNameElement(parseString(xpp)); 10123 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 10124 res.setTitleElement(parseString(xpp)); 10125 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 10126 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 10127 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 10128 res.setExperimentalElement(parseBoolean(xpp)); 10129 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 10130 res.setType(parseCodeableConcept(xpp)); 10131 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 10132 res.setDateElement(parseDateTime(xpp)); 10133 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 10134 res.setPublisherElement(parseString(xpp)); 10135 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 10136 res.setDescriptionElement(parseMarkdown(xpp)); 10137 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 10138 res.setPurposeElement(parseMarkdown(xpp)); 10139 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usage")) { 10140 res.setUsageElement(parseString(xpp)); 10141 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("approvalDate")) { 10142 res.setApprovalDateElement(parseDate(xpp)); 10143 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastReviewDate")) { 10144 res.setLastReviewDateElement(parseDate(xpp)); 10145 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectivePeriod")) { 10146 res.setEffectivePeriod(parsePeriod(xpp)); 10147 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 10148 res.getUseContext().add(parseUsageContext(xpp)); 10149 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 10150 res.getJurisdiction().add(parseCodeableConcept(xpp)); 10151 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { 10152 res.getTopic().add(parseCodeableConcept(xpp)); 10153 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contributor")) { 10154 res.getContributor().add(parseContributor(xpp)); 10155 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 10156 res.getContact().add(parseContactDetail(xpp)); 10157 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 10158 res.setCopyrightElement(parseMarkdown(xpp)); 10159 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedArtifact")) { 10160 res.getRelatedArtifact().add(parseRelatedArtifact(xpp)); 10161 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameter")) { 10162 res.getParameter().add(parseParameterDefinition(xpp)); 10163 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dataRequirement")) { 10164 res.getDataRequirement().add(parseDataRequirement(xpp)); 10165 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 10166 res.getContent().add(parseAttachment(xpp)); 10167 } else if (!parseDomainResourceContent(eventType, xpp, res)) 10168 return false; 10169 return true; 10170 } 10171 10172 protected Linkage parseLinkage(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10173 Linkage res = new Linkage(); 10174 parseDomainResourceAttributes(xpp, res); 10175 next(xpp); 10176 int eventType = nextNoWhitespace(xpp); 10177 while (eventType != XmlPullParser.END_TAG) { 10178 if (!parseLinkageContent(eventType, xpp, res)) 10179 unknownContent(xpp); 10180 eventType = nextNoWhitespace(xpp); 10181 } 10182 next(xpp); 10183 parseElementClose(res); 10184 return res; 10185 } 10186 10187 protected boolean parseLinkageContent(int eventType, XmlPullParser xpp, Linkage res) throws XmlPullParserException, IOException, FHIRFormatError { 10188 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 10189 res.setActiveElement(parseBoolean(xpp)); 10190 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 10191 res.setAuthor(parseReference(xpp)); 10192 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 10193 res.getItem().add(parseLinkageLinkageItemComponent(xpp, res)); 10194 } else if (!parseDomainResourceContent(eventType, xpp, res)) 10195 return false; 10196 return true; 10197 } 10198 10199 protected Linkage.LinkageItemComponent parseLinkageLinkageItemComponent(XmlPullParser xpp, Linkage owner) throws XmlPullParserException, IOException, FHIRFormatError { 10200 Linkage.LinkageItemComponent res = new Linkage.LinkageItemComponent(); 10201 parseBackboneAttributes(xpp, res); 10202 next(xpp); 10203 int eventType = nextNoWhitespace(xpp); 10204 while (eventType != XmlPullParser.END_TAG) { 10205 if (!parseLinkageLinkageItemComponentContent(eventType, xpp, owner, res)) 10206 unknownContent(xpp); 10207 eventType = nextNoWhitespace(xpp); 10208 } 10209 next(xpp); 10210 parseElementClose(res); 10211 return res; 10212 } 10213 10214 protected boolean parseLinkageLinkageItemComponentContent(int eventType, XmlPullParser xpp, Linkage owner, Linkage.LinkageItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10215 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 10216 res.setTypeElement(parseEnumeration(xpp, Linkage.LinkageType.NULL, new Linkage.LinkageTypeEnumFactory())); 10217 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 10218 res.setResource(parseReference(xpp)); 10219 } else if (!parseBackboneContent(eventType, xpp, res)) 10220 return false; 10221 return true; 10222 } 10223 10224 protected ListResource parseListResource(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10225 ListResource res = new ListResource(); 10226 parseDomainResourceAttributes(xpp, res); 10227 next(xpp); 10228 int eventType = nextNoWhitespace(xpp); 10229 while (eventType != XmlPullParser.END_TAG) { 10230 if (!parseListResourceContent(eventType, xpp, res)) 10231 unknownContent(xpp); 10232 eventType = nextNoWhitespace(xpp); 10233 } 10234 next(xpp); 10235 parseElementClose(res); 10236 return res; 10237 } 10238 10239 protected boolean parseListResourceContent(int eventType, XmlPullParser xpp, ListResource res) throws XmlPullParserException, IOException, FHIRFormatError { 10240 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10241 res.getIdentifier().add(parseIdentifier(xpp)); 10242 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 10243 res.setStatusElement(parseEnumeration(xpp, ListResource.ListStatus.NULL, new ListResource.ListStatusEnumFactory())); 10244 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 10245 res.setModeElement(parseEnumeration(xpp, ListResource.ListMode.NULL, new ListResource.ListModeEnumFactory())); 10246 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 10247 res.setTitleElement(parseString(xpp)); 10248 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 10249 res.setCode(parseCodeableConcept(xpp)); 10250 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 10251 res.setSubject(parseReference(xpp)); 10252 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 10253 res.setEncounter(parseReference(xpp)); 10254 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 10255 res.setDateElement(parseDateTime(xpp)); 10256 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 10257 res.setSource(parseReference(xpp)); 10258 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orderedBy")) { 10259 res.setOrderedBy(parseCodeableConcept(xpp)); 10260 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 10261 res.getNote().add(parseAnnotation(xpp)); 10262 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entry")) { 10263 res.getEntry().add(parseListResourceListEntryComponent(xpp, res)); 10264 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("emptyReason")) { 10265 res.setEmptyReason(parseCodeableConcept(xpp)); 10266 } else if (!parseDomainResourceContent(eventType, xpp, res)) 10267 return false; 10268 return true; 10269 } 10270 10271 protected ListResource.ListEntryComponent parseListResourceListEntryComponent(XmlPullParser xpp, ListResource owner) throws XmlPullParserException, IOException, FHIRFormatError { 10272 ListResource.ListEntryComponent res = new ListResource.ListEntryComponent(); 10273 parseBackboneAttributes(xpp, res); 10274 next(xpp); 10275 int eventType = nextNoWhitespace(xpp); 10276 while (eventType != XmlPullParser.END_TAG) { 10277 if (!parseListResourceListEntryComponentContent(eventType, xpp, owner, res)) 10278 unknownContent(xpp); 10279 eventType = nextNoWhitespace(xpp); 10280 } 10281 next(xpp); 10282 parseElementClose(res); 10283 return res; 10284 } 10285 10286 protected boolean parseListResourceListEntryComponentContent(int eventType, XmlPullParser xpp, ListResource owner, ListResource.ListEntryComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10287 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("flag")) { 10288 res.setFlag(parseCodeableConcept(xpp)); 10289 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("deleted")) { 10290 res.setDeletedElement(parseBoolean(xpp)); 10291 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 10292 res.setDateElement(parseDateTime(xpp)); 10293 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 10294 res.setItem(parseReference(xpp)); 10295 } else if (!parseBackboneContent(eventType, xpp, res)) 10296 return false; 10297 return true; 10298 } 10299 10300 protected Location parseLocation(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10301 Location res = new Location(); 10302 parseDomainResourceAttributes(xpp, res); 10303 next(xpp); 10304 int eventType = nextNoWhitespace(xpp); 10305 while (eventType != XmlPullParser.END_TAG) { 10306 if (!parseLocationContent(eventType, xpp, res)) 10307 unknownContent(xpp); 10308 eventType = nextNoWhitespace(xpp); 10309 } 10310 next(xpp); 10311 parseElementClose(res); 10312 return res; 10313 } 10314 10315 protected boolean parseLocationContent(int eventType, XmlPullParser xpp, Location res) throws XmlPullParserException, IOException, FHIRFormatError { 10316 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10317 res.getIdentifier().add(parseIdentifier(xpp)); 10318 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 10319 res.setStatusElement(parseEnumeration(xpp, Location.LocationStatus.NULL, new Location.LocationStatusEnumFactory())); 10320 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operationalStatus")) { 10321 res.setOperationalStatus(parseCoding(xpp)); 10322 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 10323 res.setNameElement(parseString(xpp)); 10324 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("alias")) { 10325 res.getAlias().add(parseString(xpp)); 10326 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 10327 res.setDescriptionElement(parseString(xpp)); 10328 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 10329 res.setModeElement(parseEnumeration(xpp, Location.LocationMode.NULL, new Location.LocationModeEnumFactory())); 10330 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 10331 res.setType(parseCodeableConcept(xpp)); 10332 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 10333 res.getTelecom().add(parseContactPoint(xpp)); 10334 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 10335 res.setAddress(parseAddress(xpp)); 10336 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("physicalType")) { 10337 res.setPhysicalType(parseCodeableConcept(xpp)); 10338 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("position")) { 10339 res.setPosition(parseLocationLocationPositionComponent(xpp, res)); 10340 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("managingOrganization")) { 10341 res.setManagingOrganization(parseReference(xpp)); 10342 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 10343 res.setPartOf(parseReference(xpp)); 10344 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 10345 res.getEndpoint().add(parseReference(xpp)); 10346 } else if (!parseDomainResourceContent(eventType, xpp, res)) 10347 return false; 10348 return true; 10349 } 10350 10351 protected Location.LocationPositionComponent parseLocationLocationPositionComponent(XmlPullParser xpp, Location owner) throws XmlPullParserException, IOException, FHIRFormatError { 10352 Location.LocationPositionComponent res = new Location.LocationPositionComponent(); 10353 parseBackboneAttributes(xpp, res); 10354 next(xpp); 10355 int eventType = nextNoWhitespace(xpp); 10356 while (eventType != XmlPullParser.END_TAG) { 10357 if (!parseLocationLocationPositionComponentContent(eventType, xpp, owner, res)) 10358 unknownContent(xpp); 10359 eventType = nextNoWhitespace(xpp); 10360 } 10361 next(xpp); 10362 parseElementClose(res); 10363 return res; 10364 } 10365 10366 protected boolean parseLocationLocationPositionComponentContent(int eventType, XmlPullParser xpp, Location owner, Location.LocationPositionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10367 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("longitude")) { 10368 res.setLongitudeElement(parseDecimal(xpp)); 10369 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("latitude")) { 10370 res.setLatitudeElement(parseDecimal(xpp)); 10371 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("altitude")) { 10372 res.setAltitudeElement(parseDecimal(xpp)); 10373 } else if (!parseBackboneContent(eventType, xpp, res)) 10374 return false; 10375 return true; 10376 } 10377 10378 protected Measure parseMeasure(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10379 Measure res = new Measure(); 10380 parseDomainResourceAttributes(xpp, res); 10381 next(xpp); 10382 int eventType = nextNoWhitespace(xpp); 10383 while (eventType != XmlPullParser.END_TAG) { 10384 if (!parseMeasureContent(eventType, xpp, res)) 10385 unknownContent(xpp); 10386 eventType = nextNoWhitespace(xpp); 10387 } 10388 next(xpp); 10389 parseElementClose(res); 10390 return res; 10391 } 10392 10393 protected boolean parseMeasureContent(int eventType, XmlPullParser xpp, Measure res) throws XmlPullParserException, IOException, FHIRFormatError { 10394 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 10395 res.setUrlElement(parseUri(xpp)); 10396 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10397 res.getIdentifier().add(parseIdentifier(xpp)); 10398 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 10399 res.setVersionElement(parseString(xpp)); 10400 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 10401 res.setNameElement(parseString(xpp)); 10402 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 10403 res.setTitleElement(parseString(xpp)); 10404 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 10405 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 10406 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 10407 res.setExperimentalElement(parseBoolean(xpp)); 10408 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 10409 res.setDateElement(parseDateTime(xpp)); 10410 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 10411 res.setPublisherElement(parseString(xpp)); 10412 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 10413 res.setDescriptionElement(parseMarkdown(xpp)); 10414 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 10415 res.setPurposeElement(parseMarkdown(xpp)); 10416 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usage")) { 10417 res.setUsageElement(parseString(xpp)); 10418 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("approvalDate")) { 10419 res.setApprovalDateElement(parseDate(xpp)); 10420 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastReviewDate")) { 10421 res.setLastReviewDateElement(parseDate(xpp)); 10422 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectivePeriod")) { 10423 res.setEffectivePeriod(parsePeriod(xpp)); 10424 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 10425 res.getUseContext().add(parseUsageContext(xpp)); 10426 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 10427 res.getJurisdiction().add(parseCodeableConcept(xpp)); 10428 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { 10429 res.getTopic().add(parseCodeableConcept(xpp)); 10430 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contributor")) { 10431 res.getContributor().add(parseContributor(xpp)); 10432 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 10433 res.getContact().add(parseContactDetail(xpp)); 10434 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 10435 res.setCopyrightElement(parseMarkdown(xpp)); 10436 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedArtifact")) { 10437 res.getRelatedArtifact().add(parseRelatedArtifact(xpp)); 10438 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("library")) { 10439 res.getLibrary().add(parseReference(xpp)); 10440 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disclaimer")) { 10441 res.setDisclaimerElement(parseMarkdown(xpp)); 10442 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("scoring")) { 10443 res.setScoring(parseCodeableConcept(xpp)); 10444 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("compositeScoring")) { 10445 res.setCompositeScoring(parseCodeableConcept(xpp)); 10446 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 10447 res.getType().add(parseCodeableConcept(xpp)); 10448 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("riskAdjustment")) { 10449 res.setRiskAdjustmentElement(parseString(xpp)); 10450 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rateAggregation")) { 10451 res.setRateAggregationElement(parseString(xpp)); 10452 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rationale")) { 10453 res.setRationaleElement(parseMarkdown(xpp)); 10454 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("clinicalRecommendationStatement")) { 10455 res.setClinicalRecommendationStatementElement(parseMarkdown(xpp)); 10456 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("improvementNotation")) { 10457 res.setImprovementNotationElement(parseString(xpp)); 10458 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 10459 res.getDefinition().add(parseMarkdown(xpp)); 10460 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("guidance")) { 10461 res.setGuidanceElement(parseMarkdown(xpp)); 10462 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("set")) { 10463 res.setSetElement(parseString(xpp)); 10464 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("group")) { 10465 res.getGroup().add(parseMeasureMeasureGroupComponent(xpp, res)); 10466 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supplementalData")) { 10467 res.getSupplementalData().add(parseMeasureMeasureSupplementalDataComponent(xpp, res)); 10468 } else if (!parseDomainResourceContent(eventType, xpp, res)) 10469 return false; 10470 return true; 10471 } 10472 10473 protected Measure.MeasureGroupComponent parseMeasureMeasureGroupComponent(XmlPullParser xpp, Measure owner) throws XmlPullParserException, IOException, FHIRFormatError { 10474 Measure.MeasureGroupComponent res = new Measure.MeasureGroupComponent(); 10475 parseBackboneAttributes(xpp, res); 10476 next(xpp); 10477 int eventType = nextNoWhitespace(xpp); 10478 while (eventType != XmlPullParser.END_TAG) { 10479 if (!parseMeasureMeasureGroupComponentContent(eventType, xpp, owner, res)) 10480 unknownContent(xpp); 10481 eventType = nextNoWhitespace(xpp); 10482 } 10483 next(xpp); 10484 parseElementClose(res); 10485 return res; 10486 } 10487 10488 protected boolean parseMeasureMeasureGroupComponentContent(int eventType, XmlPullParser xpp, Measure owner, Measure.MeasureGroupComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10489 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10490 res.setIdentifier(parseIdentifier(xpp)); 10491 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 10492 res.setNameElement(parseString(xpp)); 10493 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 10494 res.setDescriptionElement(parseString(xpp)); 10495 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("population")) { 10496 res.getPopulation().add(parseMeasureMeasureGroupPopulationComponent(xpp, owner)); 10497 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("stratifier")) { 10498 res.getStratifier().add(parseMeasureMeasureGroupStratifierComponent(xpp, owner)); 10499 } else if (!parseBackboneContent(eventType, xpp, res)) 10500 return false; 10501 return true; 10502 } 10503 10504 protected Measure.MeasureGroupPopulationComponent parseMeasureMeasureGroupPopulationComponent(XmlPullParser xpp, Measure owner) throws XmlPullParserException, IOException, FHIRFormatError { 10505 Measure.MeasureGroupPopulationComponent res = new Measure.MeasureGroupPopulationComponent(); 10506 parseBackboneAttributes(xpp, res); 10507 next(xpp); 10508 int eventType = nextNoWhitespace(xpp); 10509 while (eventType != XmlPullParser.END_TAG) { 10510 if (!parseMeasureMeasureGroupPopulationComponentContent(eventType, xpp, owner, res)) 10511 unknownContent(xpp); 10512 eventType = nextNoWhitespace(xpp); 10513 } 10514 next(xpp); 10515 parseElementClose(res); 10516 return res; 10517 } 10518 10519 protected boolean parseMeasureMeasureGroupPopulationComponentContent(int eventType, XmlPullParser xpp, Measure owner, Measure.MeasureGroupPopulationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10520 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10521 res.setIdentifier(parseIdentifier(xpp)); 10522 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 10523 res.setCode(parseCodeableConcept(xpp)); 10524 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 10525 res.setNameElement(parseString(xpp)); 10526 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 10527 res.setDescriptionElement(parseString(xpp)); 10528 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("criteria")) { 10529 res.setCriteriaElement(parseString(xpp)); 10530 } else if (!parseBackboneContent(eventType, xpp, res)) 10531 return false; 10532 return true; 10533 } 10534 10535 protected Measure.MeasureGroupStratifierComponent parseMeasureMeasureGroupStratifierComponent(XmlPullParser xpp, Measure owner) throws XmlPullParserException, IOException, FHIRFormatError { 10536 Measure.MeasureGroupStratifierComponent res = new Measure.MeasureGroupStratifierComponent(); 10537 parseBackboneAttributes(xpp, res); 10538 next(xpp); 10539 int eventType = nextNoWhitespace(xpp); 10540 while (eventType != XmlPullParser.END_TAG) { 10541 if (!parseMeasureMeasureGroupStratifierComponentContent(eventType, xpp, owner, res)) 10542 unknownContent(xpp); 10543 eventType = nextNoWhitespace(xpp); 10544 } 10545 next(xpp); 10546 parseElementClose(res); 10547 return res; 10548 } 10549 10550 protected boolean parseMeasureMeasureGroupStratifierComponentContent(int eventType, XmlPullParser xpp, Measure owner, Measure.MeasureGroupStratifierComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10551 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10552 res.setIdentifier(parseIdentifier(xpp)); 10553 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("criteria")) { 10554 res.setCriteriaElement(parseString(xpp)); 10555 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 10556 res.setPathElement(parseString(xpp)); 10557 } else if (!parseBackboneContent(eventType, xpp, res)) 10558 return false; 10559 return true; 10560 } 10561 10562 protected Measure.MeasureSupplementalDataComponent parseMeasureMeasureSupplementalDataComponent(XmlPullParser xpp, Measure owner) throws XmlPullParserException, IOException, FHIRFormatError { 10563 Measure.MeasureSupplementalDataComponent res = new Measure.MeasureSupplementalDataComponent(); 10564 parseBackboneAttributes(xpp, res); 10565 next(xpp); 10566 int eventType = nextNoWhitespace(xpp); 10567 while (eventType != XmlPullParser.END_TAG) { 10568 if (!parseMeasureMeasureSupplementalDataComponentContent(eventType, xpp, owner, res)) 10569 unknownContent(xpp); 10570 eventType = nextNoWhitespace(xpp); 10571 } 10572 next(xpp); 10573 parseElementClose(res); 10574 return res; 10575 } 10576 10577 protected boolean parseMeasureMeasureSupplementalDataComponentContent(int eventType, XmlPullParser xpp, Measure owner, Measure.MeasureSupplementalDataComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10578 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10579 res.setIdentifier(parseIdentifier(xpp)); 10580 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usage")) { 10581 res.getUsage().add(parseCodeableConcept(xpp)); 10582 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("criteria")) { 10583 res.setCriteriaElement(parseString(xpp)); 10584 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 10585 res.setPathElement(parseString(xpp)); 10586 } else if (!parseBackboneContent(eventType, xpp, res)) 10587 return false; 10588 return true; 10589 } 10590 10591 protected MeasureReport parseMeasureReport(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10592 MeasureReport res = new MeasureReport(); 10593 parseDomainResourceAttributes(xpp, res); 10594 next(xpp); 10595 int eventType = nextNoWhitespace(xpp); 10596 while (eventType != XmlPullParser.END_TAG) { 10597 if (!parseMeasureReportContent(eventType, xpp, res)) 10598 unknownContent(xpp); 10599 eventType = nextNoWhitespace(xpp); 10600 } 10601 next(xpp); 10602 parseElementClose(res); 10603 return res; 10604 } 10605 10606 protected boolean parseMeasureReportContent(int eventType, XmlPullParser xpp, MeasureReport res) throws XmlPullParserException, IOException, FHIRFormatError { 10607 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10608 res.setIdentifier(parseIdentifier(xpp)); 10609 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 10610 res.setStatusElement(parseEnumeration(xpp, MeasureReport.MeasureReportStatus.NULL, new MeasureReport.MeasureReportStatusEnumFactory())); 10611 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 10612 res.setTypeElement(parseEnumeration(xpp, MeasureReport.MeasureReportType.NULL, new MeasureReport.MeasureReportTypeEnumFactory())); 10613 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("measure")) { 10614 res.setMeasure(parseReference(xpp)); 10615 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 10616 res.setPatient(parseReference(xpp)); 10617 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 10618 res.setDateElement(parseDateTime(xpp)); 10619 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reportingOrganization")) { 10620 res.setReportingOrganization(parseReference(xpp)); 10621 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 10622 res.setPeriod(parsePeriod(xpp)); 10623 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("group")) { 10624 res.getGroup().add(parseMeasureReportMeasureReportGroupComponent(xpp, res)); 10625 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("evaluatedResources")) { 10626 res.setEvaluatedResources(parseReference(xpp)); 10627 } else if (!parseDomainResourceContent(eventType, xpp, res)) 10628 return false; 10629 return true; 10630 } 10631 10632 protected MeasureReport.MeasureReportGroupComponent parseMeasureReportMeasureReportGroupComponent(XmlPullParser xpp, MeasureReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 10633 MeasureReport.MeasureReportGroupComponent res = new MeasureReport.MeasureReportGroupComponent(); 10634 parseBackboneAttributes(xpp, res); 10635 next(xpp); 10636 int eventType = nextNoWhitespace(xpp); 10637 while (eventType != XmlPullParser.END_TAG) { 10638 if (!parseMeasureReportMeasureReportGroupComponentContent(eventType, xpp, owner, res)) 10639 unknownContent(xpp); 10640 eventType = nextNoWhitespace(xpp); 10641 } 10642 next(xpp); 10643 parseElementClose(res); 10644 return res; 10645 } 10646 10647 protected boolean parseMeasureReportMeasureReportGroupComponentContent(int eventType, XmlPullParser xpp, MeasureReport owner, MeasureReport.MeasureReportGroupComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10648 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10649 res.setIdentifier(parseIdentifier(xpp)); 10650 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("population")) { 10651 res.getPopulation().add(parseMeasureReportMeasureReportGroupPopulationComponent(xpp, owner)); 10652 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("measureScore")) { 10653 res.setMeasureScoreElement(parseDecimal(xpp)); 10654 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("stratifier")) { 10655 res.getStratifier().add(parseMeasureReportMeasureReportGroupStratifierComponent(xpp, owner)); 10656 } else if (!parseBackboneContent(eventType, xpp, res)) 10657 return false; 10658 return true; 10659 } 10660 10661 protected MeasureReport.MeasureReportGroupPopulationComponent parseMeasureReportMeasureReportGroupPopulationComponent(XmlPullParser xpp, MeasureReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 10662 MeasureReport.MeasureReportGroupPopulationComponent res = new MeasureReport.MeasureReportGroupPopulationComponent(); 10663 parseBackboneAttributes(xpp, res); 10664 next(xpp); 10665 int eventType = nextNoWhitespace(xpp); 10666 while (eventType != XmlPullParser.END_TAG) { 10667 if (!parseMeasureReportMeasureReportGroupPopulationComponentContent(eventType, xpp, owner, res)) 10668 unknownContent(xpp); 10669 eventType = nextNoWhitespace(xpp); 10670 } 10671 next(xpp); 10672 parseElementClose(res); 10673 return res; 10674 } 10675 10676 protected boolean parseMeasureReportMeasureReportGroupPopulationComponentContent(int eventType, XmlPullParser xpp, MeasureReport owner, MeasureReport.MeasureReportGroupPopulationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10677 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10678 res.setIdentifier(parseIdentifier(xpp)); 10679 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 10680 res.setCode(parseCodeableConcept(xpp)); 10681 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("count")) { 10682 res.setCountElement(parseInteger(xpp)); 10683 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patients")) { 10684 res.setPatients(parseReference(xpp)); 10685 } else if (!parseBackboneContent(eventType, xpp, res)) 10686 return false; 10687 return true; 10688 } 10689 10690 protected MeasureReport.MeasureReportGroupStratifierComponent parseMeasureReportMeasureReportGroupStratifierComponent(XmlPullParser xpp, MeasureReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 10691 MeasureReport.MeasureReportGroupStratifierComponent res = new MeasureReport.MeasureReportGroupStratifierComponent(); 10692 parseBackboneAttributes(xpp, res); 10693 next(xpp); 10694 int eventType = nextNoWhitespace(xpp); 10695 while (eventType != XmlPullParser.END_TAG) { 10696 if (!parseMeasureReportMeasureReportGroupStratifierComponentContent(eventType, xpp, owner, res)) 10697 unknownContent(xpp); 10698 eventType = nextNoWhitespace(xpp); 10699 } 10700 next(xpp); 10701 parseElementClose(res); 10702 return res; 10703 } 10704 10705 protected boolean parseMeasureReportMeasureReportGroupStratifierComponentContent(int eventType, XmlPullParser xpp, MeasureReport owner, MeasureReport.MeasureReportGroupStratifierComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10706 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10707 res.setIdentifier(parseIdentifier(xpp)); 10708 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("stratum")) { 10709 res.getStratum().add(parseMeasureReportStratifierGroupComponent(xpp, owner)); 10710 } else if (!parseBackboneContent(eventType, xpp, res)) 10711 return false; 10712 return true; 10713 } 10714 10715 protected MeasureReport.StratifierGroupComponent parseMeasureReportStratifierGroupComponent(XmlPullParser xpp, MeasureReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 10716 MeasureReport.StratifierGroupComponent res = new MeasureReport.StratifierGroupComponent(); 10717 parseBackboneAttributes(xpp, res); 10718 next(xpp); 10719 int eventType = nextNoWhitespace(xpp); 10720 while (eventType != XmlPullParser.END_TAG) { 10721 if (!parseMeasureReportStratifierGroupComponentContent(eventType, xpp, owner, res)) 10722 unknownContent(xpp); 10723 eventType = nextNoWhitespace(xpp); 10724 } 10725 next(xpp); 10726 parseElementClose(res); 10727 return res; 10728 } 10729 10730 protected boolean parseMeasureReportStratifierGroupComponentContent(int eventType, XmlPullParser xpp, MeasureReport owner, MeasureReport.StratifierGroupComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10731 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 10732 res.setValueElement(parseString(xpp)); 10733 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("population")) { 10734 res.getPopulation().add(parseMeasureReportStratifierGroupPopulationComponent(xpp, owner)); 10735 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("measureScore")) { 10736 res.setMeasureScoreElement(parseDecimal(xpp)); 10737 } else if (!parseBackboneContent(eventType, xpp, res)) 10738 return false; 10739 return true; 10740 } 10741 10742 protected MeasureReport.StratifierGroupPopulationComponent parseMeasureReportStratifierGroupPopulationComponent(XmlPullParser xpp, MeasureReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 10743 MeasureReport.StratifierGroupPopulationComponent res = new MeasureReport.StratifierGroupPopulationComponent(); 10744 parseBackboneAttributes(xpp, res); 10745 next(xpp); 10746 int eventType = nextNoWhitespace(xpp); 10747 while (eventType != XmlPullParser.END_TAG) { 10748 if (!parseMeasureReportStratifierGroupPopulationComponentContent(eventType, xpp, owner, res)) 10749 unknownContent(xpp); 10750 eventType = nextNoWhitespace(xpp); 10751 } 10752 next(xpp); 10753 parseElementClose(res); 10754 return res; 10755 } 10756 10757 protected boolean parseMeasureReportStratifierGroupPopulationComponentContent(int eventType, XmlPullParser xpp, MeasureReport owner, MeasureReport.StratifierGroupPopulationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10758 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10759 res.setIdentifier(parseIdentifier(xpp)); 10760 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 10761 res.setCode(parseCodeableConcept(xpp)); 10762 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("count")) { 10763 res.setCountElement(parseInteger(xpp)); 10764 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patients")) { 10765 res.setPatients(parseReference(xpp)); 10766 } else if (!parseBackboneContent(eventType, xpp, res)) 10767 return false; 10768 return true; 10769 } 10770 10771 protected Media parseMedia(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10772 Media res = new Media(); 10773 parseDomainResourceAttributes(xpp, res); 10774 next(xpp); 10775 int eventType = nextNoWhitespace(xpp); 10776 while (eventType != XmlPullParser.END_TAG) { 10777 if (!parseMediaContent(eventType, xpp, res)) 10778 unknownContent(xpp); 10779 eventType = nextNoWhitespace(xpp); 10780 } 10781 next(xpp); 10782 parseElementClose(res); 10783 return res; 10784 } 10785 10786 protected boolean parseMediaContent(int eventType, XmlPullParser xpp, Media res) throws XmlPullParserException, IOException, FHIRFormatError { 10787 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10788 res.getIdentifier().add(parseIdentifier(xpp)); 10789 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 10790 res.getBasedOn().add(parseReference(xpp)); 10791 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 10792 res.setTypeElement(parseEnumeration(xpp, Media.DigitalMediaType.NULL, new Media.DigitalMediaTypeEnumFactory())); 10793 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subtype")) { 10794 res.setSubtype(parseCodeableConcept(xpp)); 10795 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("view")) { 10796 res.setView(parseCodeableConcept(xpp)); 10797 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 10798 res.setSubject(parseReference(xpp)); 10799 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 10800 res.setContext(parseReference(xpp)); 10801 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "occurrence")) { 10802 res.setOccurrence(parseType("occurrence", xpp)); 10803 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operator")) { 10804 res.setOperator(parseReference(xpp)); 10805 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonCode")) { 10806 res.getReasonCode().add(parseCodeableConcept(xpp)); 10807 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 10808 res.setBodySite(parseCodeableConcept(xpp)); 10809 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 10810 res.setDevice(parseReference(xpp)); 10811 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("height")) { 10812 res.setHeightElement(parsePositiveInt(xpp)); 10813 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("width")) { 10814 res.setWidthElement(parsePositiveInt(xpp)); 10815 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("frames")) { 10816 res.setFramesElement(parsePositiveInt(xpp)); 10817 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("duration")) { 10818 res.setDurationElement(parseUnsignedInt(xpp)); 10819 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 10820 res.setContent(parseAttachment(xpp)); 10821 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 10822 res.getNote().add(parseAnnotation(xpp)); 10823 } else if (!parseDomainResourceContent(eventType, xpp, res)) 10824 return false; 10825 return true; 10826 } 10827 10828 protected Medication parseMedication(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10829 Medication res = new Medication(); 10830 parseDomainResourceAttributes(xpp, res); 10831 next(xpp); 10832 int eventType = nextNoWhitespace(xpp); 10833 while (eventType != XmlPullParser.END_TAG) { 10834 if (!parseMedicationContent(eventType, xpp, res)) 10835 unknownContent(xpp); 10836 eventType = nextNoWhitespace(xpp); 10837 } 10838 next(xpp); 10839 parseElementClose(res); 10840 return res; 10841 } 10842 10843 protected boolean parseMedicationContent(int eventType, XmlPullParser xpp, Medication res) throws XmlPullParserException, IOException, FHIRFormatError { 10844 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 10845 res.setCode(parseCodeableConcept(xpp)); 10846 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 10847 res.setStatusElement(parseEnumeration(xpp, Medication.MedicationStatus.NULL, new Medication.MedicationStatusEnumFactory())); 10848 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("isBrand")) { 10849 res.setIsBrandElement(parseBoolean(xpp)); 10850 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("isOverTheCounter")) { 10851 res.setIsOverTheCounterElement(parseBoolean(xpp)); 10852 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manufacturer")) { 10853 res.setManufacturer(parseReference(xpp)); 10854 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("form")) { 10855 res.setForm(parseCodeableConcept(xpp)); 10856 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ingredient")) { 10857 res.getIngredient().add(parseMedicationMedicationIngredientComponent(xpp, res)); 10858 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("package")) { 10859 res.setPackage(parseMedicationMedicationPackageComponent(xpp, res)); 10860 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("image")) { 10861 res.getImage().add(parseAttachment(xpp)); 10862 } else if (!parseDomainResourceContent(eventType, xpp, res)) 10863 return false; 10864 return true; 10865 } 10866 10867 protected Medication.MedicationIngredientComponent parseMedicationMedicationIngredientComponent(XmlPullParser xpp, Medication owner) throws XmlPullParserException, IOException, FHIRFormatError { 10868 Medication.MedicationIngredientComponent res = new Medication.MedicationIngredientComponent(); 10869 parseBackboneAttributes(xpp, res); 10870 next(xpp); 10871 int eventType = nextNoWhitespace(xpp); 10872 while (eventType != XmlPullParser.END_TAG) { 10873 if (!parseMedicationMedicationIngredientComponentContent(eventType, xpp, owner, res)) 10874 unknownContent(xpp); 10875 eventType = nextNoWhitespace(xpp); 10876 } 10877 next(xpp); 10878 parseElementClose(res); 10879 return res; 10880 } 10881 10882 protected boolean parseMedicationMedicationIngredientComponentContent(int eventType, XmlPullParser xpp, Medication owner, Medication.MedicationIngredientComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10883 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "item")) { 10884 res.setItem(parseType("item", xpp)); 10885 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("isActive")) { 10886 res.setIsActiveElement(parseBoolean(xpp)); 10887 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 10888 res.setAmount(parseRatio(xpp)); 10889 } else if (!parseBackboneContent(eventType, xpp, res)) 10890 return false; 10891 return true; 10892 } 10893 10894 protected Medication.MedicationPackageComponent parseMedicationMedicationPackageComponent(XmlPullParser xpp, Medication owner) throws XmlPullParserException, IOException, FHIRFormatError { 10895 Medication.MedicationPackageComponent res = new Medication.MedicationPackageComponent(); 10896 parseBackboneAttributes(xpp, res); 10897 next(xpp); 10898 int eventType = nextNoWhitespace(xpp); 10899 while (eventType != XmlPullParser.END_TAG) { 10900 if (!parseMedicationMedicationPackageComponentContent(eventType, xpp, owner, res)) 10901 unknownContent(xpp); 10902 eventType = nextNoWhitespace(xpp); 10903 } 10904 next(xpp); 10905 parseElementClose(res); 10906 return res; 10907 } 10908 10909 protected boolean parseMedicationMedicationPackageComponentContent(int eventType, XmlPullParser xpp, Medication owner, Medication.MedicationPackageComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10910 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("container")) { 10911 res.setContainer(parseCodeableConcept(xpp)); 10912 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 10913 res.getContent().add(parseMedicationMedicationPackageContentComponent(xpp, owner)); 10914 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("batch")) { 10915 res.getBatch().add(parseMedicationMedicationPackageBatchComponent(xpp, owner)); 10916 } else if (!parseBackboneContent(eventType, xpp, res)) 10917 return false; 10918 return true; 10919 } 10920 10921 protected Medication.MedicationPackageContentComponent parseMedicationMedicationPackageContentComponent(XmlPullParser xpp, Medication owner) throws XmlPullParserException, IOException, FHIRFormatError { 10922 Medication.MedicationPackageContentComponent res = new Medication.MedicationPackageContentComponent(); 10923 parseBackboneAttributes(xpp, res); 10924 next(xpp); 10925 int eventType = nextNoWhitespace(xpp); 10926 while (eventType != XmlPullParser.END_TAG) { 10927 if (!parseMedicationMedicationPackageContentComponentContent(eventType, xpp, owner, res)) 10928 unknownContent(xpp); 10929 eventType = nextNoWhitespace(xpp); 10930 } 10931 next(xpp); 10932 parseElementClose(res); 10933 return res; 10934 } 10935 10936 protected boolean parseMedicationMedicationPackageContentComponentContent(int eventType, XmlPullParser xpp, Medication owner, Medication.MedicationPackageContentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10937 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "item")) { 10938 res.setItem(parseType("item", xpp)); 10939 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 10940 res.setAmount(parseSimpleQuantity(xpp)); 10941 } else if (!parseBackboneContent(eventType, xpp, res)) 10942 return false; 10943 return true; 10944 } 10945 10946 protected Medication.MedicationPackageBatchComponent parseMedicationMedicationPackageBatchComponent(XmlPullParser xpp, Medication owner) throws XmlPullParserException, IOException, FHIRFormatError { 10947 Medication.MedicationPackageBatchComponent res = new Medication.MedicationPackageBatchComponent(); 10948 parseBackboneAttributes(xpp, res); 10949 next(xpp); 10950 int eventType = nextNoWhitespace(xpp); 10951 while (eventType != XmlPullParser.END_TAG) { 10952 if (!parseMedicationMedicationPackageBatchComponentContent(eventType, xpp, owner, res)) 10953 unknownContent(xpp); 10954 eventType = nextNoWhitespace(xpp); 10955 } 10956 next(xpp); 10957 parseElementClose(res); 10958 return res; 10959 } 10960 10961 protected boolean parseMedicationMedicationPackageBatchComponentContent(int eventType, XmlPullParser xpp, Medication owner, Medication.MedicationPackageBatchComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10962 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lotNumber")) { 10963 res.setLotNumberElement(parseString(xpp)); 10964 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expirationDate")) { 10965 res.setExpirationDateElement(parseDateTime(xpp)); 10966 } else if (!parseBackboneContent(eventType, xpp, res)) 10967 return false; 10968 return true; 10969 } 10970 10971 protected MedicationAdministration parseMedicationAdministration(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10972 MedicationAdministration res = new MedicationAdministration(); 10973 parseDomainResourceAttributes(xpp, res); 10974 next(xpp); 10975 int eventType = nextNoWhitespace(xpp); 10976 while (eventType != XmlPullParser.END_TAG) { 10977 if (!parseMedicationAdministrationContent(eventType, xpp, res)) 10978 unknownContent(xpp); 10979 eventType = nextNoWhitespace(xpp); 10980 } 10981 next(xpp); 10982 parseElementClose(res); 10983 return res; 10984 } 10985 10986 protected boolean parseMedicationAdministrationContent(int eventType, XmlPullParser xpp, MedicationAdministration res) throws XmlPullParserException, IOException, FHIRFormatError { 10987 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10988 res.getIdentifier().add(parseIdentifier(xpp)); 10989 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 10990 res.getDefinition().add(parseReference(xpp)); 10991 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 10992 res.getPartOf().add(parseReference(xpp)); 10993 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 10994 res.setStatusElement(parseEnumeration(xpp, MedicationAdministration.MedicationAdministrationStatus.NULL, new MedicationAdministration.MedicationAdministrationStatusEnumFactory())); 10995 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 10996 res.setCategory(parseCodeableConcept(xpp)); 10997 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "medication")) { 10998 res.setMedication(parseType("medication", xpp)); 10999 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 11000 res.setSubject(parseReference(xpp)); 11001 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 11002 res.setContext(parseReference(xpp)); 11003 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInformation")) { 11004 res.getSupportingInformation().add(parseReference(xpp)); 11005 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "effective")) { 11006 res.setEffective(parseType("effective", xpp)); 11007 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 11008 res.getPerformer().add(parseMedicationAdministrationMedicationAdministrationPerformerComponent(xpp, res)); 11009 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notGiven")) { 11010 res.setNotGivenElement(parseBoolean(xpp)); 11011 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonNotGiven")) { 11012 res.getReasonNotGiven().add(parseCodeableConcept(xpp)); 11013 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonCode")) { 11014 res.getReasonCode().add(parseCodeableConcept(xpp)); 11015 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonReference")) { 11016 res.getReasonReference().add(parseReference(xpp)); 11017 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prescription")) { 11018 res.setPrescription(parseReference(xpp)); 11019 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 11020 res.getDevice().add(parseReference(xpp)); 11021 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 11022 res.getNote().add(parseAnnotation(xpp)); 11023 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dosage")) { 11024 res.setDosage(parseMedicationAdministrationMedicationAdministrationDosageComponent(xpp, res)); 11025 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eventHistory")) { 11026 res.getEventHistory().add(parseReference(xpp)); 11027 } else if (!parseDomainResourceContent(eventType, xpp, res)) 11028 return false; 11029 return true; 11030 } 11031 11032 protected MedicationAdministration.MedicationAdministrationPerformerComponent parseMedicationAdministrationMedicationAdministrationPerformerComponent(XmlPullParser xpp, MedicationAdministration owner) throws XmlPullParserException, IOException, FHIRFormatError { 11033 MedicationAdministration.MedicationAdministrationPerformerComponent res = new MedicationAdministration.MedicationAdministrationPerformerComponent(); 11034 parseBackboneAttributes(xpp, res); 11035 next(xpp); 11036 int eventType = nextNoWhitespace(xpp); 11037 while (eventType != XmlPullParser.END_TAG) { 11038 if (!parseMedicationAdministrationMedicationAdministrationPerformerComponentContent(eventType, xpp, owner, res)) 11039 unknownContent(xpp); 11040 eventType = nextNoWhitespace(xpp); 11041 } 11042 next(xpp); 11043 parseElementClose(res); 11044 return res; 11045 } 11046 11047 protected boolean parseMedicationAdministrationMedicationAdministrationPerformerComponentContent(int eventType, XmlPullParser xpp, MedicationAdministration owner, MedicationAdministration.MedicationAdministrationPerformerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11048 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 11049 res.setActor(parseReference(xpp)); 11050 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onBehalfOf")) { 11051 res.setOnBehalfOf(parseReference(xpp)); 11052 } else if (!parseBackboneContent(eventType, xpp, res)) 11053 return false; 11054 return true; 11055 } 11056 11057 protected MedicationAdministration.MedicationAdministrationDosageComponent parseMedicationAdministrationMedicationAdministrationDosageComponent(XmlPullParser xpp, MedicationAdministration owner) throws XmlPullParserException, IOException, FHIRFormatError { 11058 MedicationAdministration.MedicationAdministrationDosageComponent res = new MedicationAdministration.MedicationAdministrationDosageComponent(); 11059 parseBackboneAttributes(xpp, res); 11060 next(xpp); 11061 int eventType = nextNoWhitespace(xpp); 11062 while (eventType != XmlPullParser.END_TAG) { 11063 if (!parseMedicationAdministrationMedicationAdministrationDosageComponentContent(eventType, xpp, owner, res)) 11064 unknownContent(xpp); 11065 eventType = nextNoWhitespace(xpp); 11066 } 11067 next(xpp); 11068 parseElementClose(res); 11069 return res; 11070 } 11071 11072 protected boolean parseMedicationAdministrationMedicationAdministrationDosageComponentContent(int eventType, XmlPullParser xpp, MedicationAdministration owner, MedicationAdministration.MedicationAdministrationDosageComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11073 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 11074 res.setTextElement(parseString(xpp)); 11075 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("site")) { 11076 res.setSite(parseCodeableConcept(xpp)); 11077 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("route")) { 11078 res.setRoute(parseCodeableConcept(xpp)); 11079 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 11080 res.setMethod(parseCodeableConcept(xpp)); 11081 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dose")) { 11082 res.setDose(parseSimpleQuantity(xpp)); 11083 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "rate")) { 11084 res.setRate(parseType("rate", xpp)); 11085 } else if (!parseBackboneContent(eventType, xpp, res)) 11086 return false; 11087 return true; 11088 } 11089 11090 protected MedicationDispense parseMedicationDispense(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11091 MedicationDispense res = new MedicationDispense(); 11092 parseDomainResourceAttributes(xpp, res); 11093 next(xpp); 11094 int eventType = nextNoWhitespace(xpp); 11095 while (eventType != XmlPullParser.END_TAG) { 11096 if (!parseMedicationDispenseContent(eventType, xpp, res)) 11097 unknownContent(xpp); 11098 eventType = nextNoWhitespace(xpp); 11099 } 11100 next(xpp); 11101 parseElementClose(res); 11102 return res; 11103 } 11104 11105 protected boolean parseMedicationDispenseContent(int eventType, XmlPullParser xpp, MedicationDispense res) throws XmlPullParserException, IOException, FHIRFormatError { 11106 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 11107 res.getIdentifier().add(parseIdentifier(xpp)); 11108 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 11109 res.getPartOf().add(parseReference(xpp)); 11110 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 11111 res.setStatusElement(parseEnumeration(xpp, MedicationDispense.MedicationDispenseStatus.NULL, new MedicationDispense.MedicationDispenseStatusEnumFactory())); 11112 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 11113 res.setCategory(parseCodeableConcept(xpp)); 11114 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "medication")) { 11115 res.setMedication(parseType("medication", xpp)); 11116 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 11117 res.setSubject(parseReference(xpp)); 11118 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 11119 res.setContext(parseReference(xpp)); 11120 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInformation")) { 11121 res.getSupportingInformation().add(parseReference(xpp)); 11122 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 11123 res.getPerformer().add(parseMedicationDispenseMedicationDispensePerformerComponent(xpp, res)); 11124 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authorizingPrescription")) { 11125 res.getAuthorizingPrescription().add(parseReference(xpp)); 11126 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 11127 res.setType(parseCodeableConcept(xpp)); 11128 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 11129 res.setQuantity(parseSimpleQuantity(xpp)); 11130 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("daysSupply")) { 11131 res.setDaysSupply(parseSimpleQuantity(xpp)); 11132 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("whenPrepared")) { 11133 res.setWhenPreparedElement(parseDateTime(xpp)); 11134 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("whenHandedOver")) { 11135 res.setWhenHandedOverElement(parseDateTime(xpp)); 11136 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 11137 res.setDestination(parseReference(xpp)); 11138 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("receiver")) { 11139 res.getReceiver().add(parseReference(xpp)); 11140 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 11141 res.getNote().add(parseAnnotation(xpp)); 11142 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dosageInstruction")) { 11143 res.getDosageInstruction().add(parseDosage(xpp)); 11144 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("substitution")) { 11145 res.setSubstitution(parseMedicationDispenseMedicationDispenseSubstitutionComponent(xpp, res)); 11146 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detectedIssue")) { 11147 res.getDetectedIssue().add(parseReference(xpp)); 11148 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notDone")) { 11149 res.setNotDoneElement(parseBoolean(xpp)); 11150 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "notDoneReason")) { 11151 res.setNotDoneReason(parseType("notDoneReason", xpp)); 11152 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eventHistory")) { 11153 res.getEventHistory().add(parseReference(xpp)); 11154 } else if (!parseDomainResourceContent(eventType, xpp, res)) 11155 return false; 11156 return true; 11157 } 11158 11159 protected MedicationDispense.MedicationDispensePerformerComponent parseMedicationDispenseMedicationDispensePerformerComponent(XmlPullParser xpp, MedicationDispense owner) throws XmlPullParserException, IOException, FHIRFormatError { 11160 MedicationDispense.MedicationDispensePerformerComponent res = new MedicationDispense.MedicationDispensePerformerComponent(); 11161 parseBackboneAttributes(xpp, res); 11162 next(xpp); 11163 int eventType = nextNoWhitespace(xpp); 11164 while (eventType != XmlPullParser.END_TAG) { 11165 if (!parseMedicationDispenseMedicationDispensePerformerComponentContent(eventType, xpp, owner, res)) 11166 unknownContent(xpp); 11167 eventType = nextNoWhitespace(xpp); 11168 } 11169 next(xpp); 11170 parseElementClose(res); 11171 return res; 11172 } 11173 11174 protected boolean parseMedicationDispenseMedicationDispensePerformerComponentContent(int eventType, XmlPullParser xpp, MedicationDispense owner, MedicationDispense.MedicationDispensePerformerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11175 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 11176 res.setActor(parseReference(xpp)); 11177 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onBehalfOf")) { 11178 res.setOnBehalfOf(parseReference(xpp)); 11179 } else if (!parseBackboneContent(eventType, xpp, res)) 11180 return false; 11181 return true; 11182 } 11183 11184 protected MedicationDispense.MedicationDispenseSubstitutionComponent parseMedicationDispenseMedicationDispenseSubstitutionComponent(XmlPullParser xpp, MedicationDispense owner) throws XmlPullParserException, IOException, FHIRFormatError { 11185 MedicationDispense.MedicationDispenseSubstitutionComponent res = new MedicationDispense.MedicationDispenseSubstitutionComponent(); 11186 parseBackboneAttributes(xpp, res); 11187 next(xpp); 11188 int eventType = nextNoWhitespace(xpp); 11189 while (eventType != XmlPullParser.END_TAG) { 11190 if (!parseMedicationDispenseMedicationDispenseSubstitutionComponentContent(eventType, xpp, owner, res)) 11191 unknownContent(xpp); 11192 eventType = nextNoWhitespace(xpp); 11193 } 11194 next(xpp); 11195 parseElementClose(res); 11196 return res; 11197 } 11198 11199 protected boolean parseMedicationDispenseMedicationDispenseSubstitutionComponentContent(int eventType, XmlPullParser xpp, MedicationDispense owner, MedicationDispense.MedicationDispenseSubstitutionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11200 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("wasSubstituted")) { 11201 res.setWasSubstitutedElement(parseBoolean(xpp)); 11202 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 11203 res.setType(parseCodeableConcept(xpp)); 11204 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 11205 res.getReason().add(parseCodeableConcept(xpp)); 11206 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responsibleParty")) { 11207 res.getResponsibleParty().add(parseReference(xpp)); 11208 } else if (!parseBackboneContent(eventType, xpp, res)) 11209 return false; 11210 return true; 11211 } 11212 11213 protected MedicationRequest parseMedicationRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11214 MedicationRequest res = new MedicationRequest(); 11215 parseDomainResourceAttributes(xpp, res); 11216 next(xpp); 11217 int eventType = nextNoWhitespace(xpp); 11218 while (eventType != XmlPullParser.END_TAG) { 11219 if (!parseMedicationRequestContent(eventType, xpp, res)) 11220 unknownContent(xpp); 11221 eventType = nextNoWhitespace(xpp); 11222 } 11223 next(xpp); 11224 parseElementClose(res); 11225 return res; 11226 } 11227 11228 protected boolean parseMedicationRequestContent(int eventType, XmlPullParser xpp, MedicationRequest res) throws XmlPullParserException, IOException, FHIRFormatError { 11229 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 11230 res.getIdentifier().add(parseIdentifier(xpp)); 11231 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 11232 res.getDefinition().add(parseReference(xpp)); 11233 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 11234 res.getBasedOn().add(parseReference(xpp)); 11235 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("groupIdentifier")) { 11236 res.setGroupIdentifier(parseIdentifier(xpp)); 11237 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 11238 res.setStatusElement(parseEnumeration(xpp, MedicationRequest.MedicationRequestStatus.NULL, new MedicationRequest.MedicationRequestStatusEnumFactory())); 11239 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intent")) { 11240 res.setIntentElement(parseEnumeration(xpp, MedicationRequest.MedicationRequestIntent.NULL, new MedicationRequest.MedicationRequestIntentEnumFactory())); 11241 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 11242 res.setCategory(parseCodeableConcept(xpp)); 11243 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 11244 res.setPriorityElement(parseEnumeration(xpp, MedicationRequest.MedicationRequestPriority.NULL, new MedicationRequest.MedicationRequestPriorityEnumFactory())); 11245 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "medication")) { 11246 res.setMedication(parseType("medication", xpp)); 11247 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 11248 res.setSubject(parseReference(xpp)); 11249 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 11250 res.setContext(parseReference(xpp)); 11251 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInformation")) { 11252 res.getSupportingInformation().add(parseReference(xpp)); 11253 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authoredOn")) { 11254 res.setAuthoredOnElement(parseDateTime(xpp)); 11255 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requester")) { 11256 res.setRequester(parseMedicationRequestMedicationRequestRequesterComponent(xpp, res)); 11257 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recorder")) { 11258 res.setRecorder(parseReference(xpp)); 11259 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonCode")) { 11260 res.getReasonCode().add(parseCodeableConcept(xpp)); 11261 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonReference")) { 11262 res.getReasonReference().add(parseReference(xpp)); 11263 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 11264 res.getNote().add(parseAnnotation(xpp)); 11265 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dosageInstruction")) { 11266 res.getDosageInstruction().add(parseDosage(xpp)); 11267 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dispenseRequest")) { 11268 res.setDispenseRequest(parseMedicationRequestMedicationRequestDispenseRequestComponent(xpp, res)); 11269 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("substitution")) { 11270 res.setSubstitution(parseMedicationRequestMedicationRequestSubstitutionComponent(xpp, res)); 11271 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priorPrescription")) { 11272 res.setPriorPrescription(parseReference(xpp)); 11273 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detectedIssue")) { 11274 res.getDetectedIssue().add(parseReference(xpp)); 11275 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eventHistory")) { 11276 res.getEventHistory().add(parseReference(xpp)); 11277 } else if (!parseDomainResourceContent(eventType, xpp, res)) 11278 return false; 11279 return true; 11280 } 11281 11282 protected MedicationRequest.MedicationRequestRequesterComponent parseMedicationRequestMedicationRequestRequesterComponent(XmlPullParser xpp, MedicationRequest owner) throws XmlPullParserException, IOException, FHIRFormatError { 11283 MedicationRequest.MedicationRequestRequesterComponent res = new MedicationRequest.MedicationRequestRequesterComponent(); 11284 parseBackboneAttributes(xpp, res); 11285 next(xpp); 11286 int eventType = nextNoWhitespace(xpp); 11287 while (eventType != XmlPullParser.END_TAG) { 11288 if (!parseMedicationRequestMedicationRequestRequesterComponentContent(eventType, xpp, owner, res)) 11289 unknownContent(xpp); 11290 eventType = nextNoWhitespace(xpp); 11291 } 11292 next(xpp); 11293 parseElementClose(res); 11294 return res; 11295 } 11296 11297 protected boolean parseMedicationRequestMedicationRequestRequesterComponentContent(int eventType, XmlPullParser xpp, MedicationRequest owner, MedicationRequest.MedicationRequestRequesterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11298 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { 11299 res.setAgent(parseReference(xpp)); 11300 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onBehalfOf")) { 11301 res.setOnBehalfOf(parseReference(xpp)); 11302 } else if (!parseBackboneContent(eventType, xpp, res)) 11303 return false; 11304 return true; 11305 } 11306 11307 protected MedicationRequest.MedicationRequestDispenseRequestComponent parseMedicationRequestMedicationRequestDispenseRequestComponent(XmlPullParser xpp, MedicationRequest owner) throws XmlPullParserException, IOException, FHIRFormatError { 11308 MedicationRequest.MedicationRequestDispenseRequestComponent res = new MedicationRequest.MedicationRequestDispenseRequestComponent(); 11309 parseBackboneAttributes(xpp, res); 11310 next(xpp); 11311 int eventType = nextNoWhitespace(xpp); 11312 while (eventType != XmlPullParser.END_TAG) { 11313 if (!parseMedicationRequestMedicationRequestDispenseRequestComponentContent(eventType, xpp, owner, res)) 11314 unknownContent(xpp); 11315 eventType = nextNoWhitespace(xpp); 11316 } 11317 next(xpp); 11318 parseElementClose(res); 11319 return res; 11320 } 11321 11322 protected boolean parseMedicationRequestMedicationRequestDispenseRequestComponentContent(int eventType, XmlPullParser xpp, MedicationRequest owner, MedicationRequest.MedicationRequestDispenseRequestComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11323 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("validityPeriod")) { 11324 res.setValidityPeriod(parsePeriod(xpp)); 11325 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("numberOfRepeatsAllowed")) { 11326 res.setNumberOfRepeatsAllowedElement(parsePositiveInt(xpp)); 11327 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 11328 res.setQuantity(parseSimpleQuantity(xpp)); 11329 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expectedSupplyDuration")) { 11330 res.setExpectedSupplyDuration(parseDuration(xpp)); 11331 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 11332 res.setPerformer(parseReference(xpp)); 11333 } else if (!parseBackboneContent(eventType, xpp, res)) 11334 return false; 11335 return true; 11336 } 11337 11338 protected MedicationRequest.MedicationRequestSubstitutionComponent parseMedicationRequestMedicationRequestSubstitutionComponent(XmlPullParser xpp, MedicationRequest owner) throws XmlPullParserException, IOException, FHIRFormatError { 11339 MedicationRequest.MedicationRequestSubstitutionComponent res = new MedicationRequest.MedicationRequestSubstitutionComponent(); 11340 parseBackboneAttributes(xpp, res); 11341 next(xpp); 11342 int eventType = nextNoWhitespace(xpp); 11343 while (eventType != XmlPullParser.END_TAG) { 11344 if (!parseMedicationRequestMedicationRequestSubstitutionComponentContent(eventType, xpp, owner, res)) 11345 unknownContent(xpp); 11346 eventType = nextNoWhitespace(xpp); 11347 } 11348 next(xpp); 11349 parseElementClose(res); 11350 return res; 11351 } 11352 11353 protected boolean parseMedicationRequestMedicationRequestSubstitutionComponentContent(int eventType, XmlPullParser xpp, MedicationRequest owner, MedicationRequest.MedicationRequestSubstitutionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11354 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("allowed")) { 11355 res.setAllowedElement(parseBoolean(xpp)); 11356 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 11357 res.setReason(parseCodeableConcept(xpp)); 11358 } else if (!parseBackboneContent(eventType, xpp, res)) 11359 return false; 11360 return true; 11361 } 11362 11363 protected MedicationStatement parseMedicationStatement(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11364 MedicationStatement res = new MedicationStatement(); 11365 parseDomainResourceAttributes(xpp, res); 11366 next(xpp); 11367 int eventType = nextNoWhitespace(xpp); 11368 while (eventType != XmlPullParser.END_TAG) { 11369 if (!parseMedicationStatementContent(eventType, xpp, res)) 11370 unknownContent(xpp); 11371 eventType = nextNoWhitespace(xpp); 11372 } 11373 next(xpp); 11374 parseElementClose(res); 11375 return res; 11376 } 11377 11378 protected boolean parseMedicationStatementContent(int eventType, XmlPullParser xpp, MedicationStatement res) throws XmlPullParserException, IOException, FHIRFormatError { 11379 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 11380 res.getIdentifier().add(parseIdentifier(xpp)); 11381 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 11382 res.getBasedOn().add(parseReference(xpp)); 11383 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 11384 res.getPartOf().add(parseReference(xpp)); 11385 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 11386 res.setContext(parseReference(xpp)); 11387 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 11388 res.setStatusElement(parseEnumeration(xpp, MedicationStatement.MedicationStatementStatus.NULL, new MedicationStatement.MedicationStatementStatusEnumFactory())); 11389 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 11390 res.setCategory(parseCodeableConcept(xpp)); 11391 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "medication")) { 11392 res.setMedication(parseType("medication", xpp)); 11393 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "effective")) { 11394 res.setEffective(parseType("effective", xpp)); 11395 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateAsserted")) { 11396 res.setDateAssertedElement(parseDateTime(xpp)); 11397 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("informationSource")) { 11398 res.setInformationSource(parseReference(xpp)); 11399 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 11400 res.setSubject(parseReference(xpp)); 11401 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("derivedFrom")) { 11402 res.getDerivedFrom().add(parseReference(xpp)); 11403 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("taken")) { 11404 res.setTakenElement(parseEnumeration(xpp, MedicationStatement.MedicationStatementTaken.NULL, new MedicationStatement.MedicationStatementTakenEnumFactory())); 11405 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonNotTaken")) { 11406 res.getReasonNotTaken().add(parseCodeableConcept(xpp)); 11407 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonCode")) { 11408 res.getReasonCode().add(parseCodeableConcept(xpp)); 11409 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonReference")) { 11410 res.getReasonReference().add(parseReference(xpp)); 11411 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 11412 res.getNote().add(parseAnnotation(xpp)); 11413 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dosage")) { 11414 res.getDosage().add(parseDosage(xpp)); 11415 } else if (!parseDomainResourceContent(eventType, xpp, res)) 11416 return false; 11417 return true; 11418 } 11419 11420 protected MessageDefinition parseMessageDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11421 MessageDefinition res = new MessageDefinition(); 11422 parseDomainResourceAttributes(xpp, res); 11423 next(xpp); 11424 int eventType = nextNoWhitespace(xpp); 11425 while (eventType != XmlPullParser.END_TAG) { 11426 if (!parseMessageDefinitionContent(eventType, xpp, res)) 11427 unknownContent(xpp); 11428 eventType = nextNoWhitespace(xpp); 11429 } 11430 next(xpp); 11431 parseElementClose(res); 11432 return res; 11433 } 11434 11435 protected boolean parseMessageDefinitionContent(int eventType, XmlPullParser xpp, MessageDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 11436 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 11437 res.setUrlElement(parseUri(xpp)); 11438 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 11439 res.setIdentifier(parseIdentifier(xpp)); 11440 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 11441 res.setVersionElement(parseString(xpp)); 11442 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 11443 res.setNameElement(parseString(xpp)); 11444 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 11445 res.setTitleElement(parseString(xpp)); 11446 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 11447 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 11448 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 11449 res.setExperimentalElement(parseBoolean(xpp)); 11450 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 11451 res.setDateElement(parseDateTime(xpp)); 11452 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 11453 res.setPublisherElement(parseString(xpp)); 11454 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 11455 res.getContact().add(parseContactDetail(xpp)); 11456 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 11457 res.setDescriptionElement(parseMarkdown(xpp)); 11458 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 11459 res.getUseContext().add(parseUsageContext(xpp)); 11460 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 11461 res.getJurisdiction().add(parseCodeableConcept(xpp)); 11462 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 11463 res.setPurposeElement(parseMarkdown(xpp)); 11464 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 11465 res.setCopyrightElement(parseMarkdown(xpp)); 11466 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("base")) { 11467 res.setBase(parseReference(xpp)); 11468 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parent")) { 11469 res.getParent().add(parseReference(xpp)); 11470 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("replaces")) { 11471 res.getReplaces().add(parseReference(xpp)); 11472 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 11473 res.setEvent(parseCoding(xpp)); 11474 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 11475 res.setCategoryElement(parseEnumeration(xpp, MessageDefinition.MessageSignificanceCategory.NULL, new MessageDefinition.MessageSignificanceCategoryEnumFactory())); 11476 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focus")) { 11477 res.getFocus().add(parseMessageDefinitionMessageDefinitionFocusComponent(xpp, res)); 11478 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responseRequired")) { 11479 res.setResponseRequiredElement(parseBoolean(xpp)); 11480 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("allowedResponse")) { 11481 res.getAllowedResponse().add(parseMessageDefinitionMessageDefinitionAllowedResponseComponent(xpp, res)); 11482 } else if (!parseDomainResourceContent(eventType, xpp, res)) 11483 return false; 11484 return true; 11485 } 11486 11487 protected MessageDefinition.MessageDefinitionFocusComponent parseMessageDefinitionMessageDefinitionFocusComponent(XmlPullParser xpp, MessageDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 11488 MessageDefinition.MessageDefinitionFocusComponent res = new MessageDefinition.MessageDefinitionFocusComponent(); 11489 parseBackboneAttributes(xpp, res); 11490 next(xpp); 11491 int eventType = nextNoWhitespace(xpp); 11492 while (eventType != XmlPullParser.END_TAG) { 11493 if (!parseMessageDefinitionMessageDefinitionFocusComponentContent(eventType, xpp, owner, res)) 11494 unknownContent(xpp); 11495 eventType = nextNoWhitespace(xpp); 11496 } 11497 next(xpp); 11498 parseElementClose(res); 11499 return res; 11500 } 11501 11502 protected boolean parseMessageDefinitionMessageDefinitionFocusComponentContent(int eventType, XmlPullParser xpp, MessageDefinition owner, MessageDefinition.MessageDefinitionFocusComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11503 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 11504 res.setCodeElement(parseCode(xpp)); 11505 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 11506 res.setProfile(parseReference(xpp)); 11507 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("min")) { 11508 res.setMinElement(parseUnsignedInt(xpp)); 11509 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("max")) { 11510 res.setMaxElement(parseString(xpp)); 11511 } else if (!parseBackboneContent(eventType, xpp, res)) 11512 return false; 11513 return true; 11514 } 11515 11516 protected MessageDefinition.MessageDefinitionAllowedResponseComponent parseMessageDefinitionMessageDefinitionAllowedResponseComponent(XmlPullParser xpp, MessageDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 11517 MessageDefinition.MessageDefinitionAllowedResponseComponent res = new MessageDefinition.MessageDefinitionAllowedResponseComponent(); 11518 parseBackboneAttributes(xpp, res); 11519 next(xpp); 11520 int eventType = nextNoWhitespace(xpp); 11521 while (eventType != XmlPullParser.END_TAG) { 11522 if (!parseMessageDefinitionMessageDefinitionAllowedResponseComponentContent(eventType, xpp, owner, res)) 11523 unknownContent(xpp); 11524 eventType = nextNoWhitespace(xpp); 11525 } 11526 next(xpp); 11527 parseElementClose(res); 11528 return res; 11529 } 11530 11531 protected boolean parseMessageDefinitionMessageDefinitionAllowedResponseComponentContent(int eventType, XmlPullParser xpp, MessageDefinition owner, MessageDefinition.MessageDefinitionAllowedResponseComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11532 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("message")) { 11533 res.setMessage(parseReference(xpp)); 11534 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("situation")) { 11535 res.setSituationElement(parseMarkdown(xpp)); 11536 } else if (!parseBackboneContent(eventType, xpp, res)) 11537 return false; 11538 return true; 11539 } 11540 11541 protected MessageHeader parseMessageHeader(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11542 MessageHeader res = new MessageHeader(); 11543 parseDomainResourceAttributes(xpp, res); 11544 next(xpp); 11545 int eventType = nextNoWhitespace(xpp); 11546 while (eventType != XmlPullParser.END_TAG) { 11547 if (!parseMessageHeaderContent(eventType, xpp, res)) 11548 unknownContent(xpp); 11549 eventType = nextNoWhitespace(xpp); 11550 } 11551 next(xpp); 11552 parseElementClose(res); 11553 return res; 11554 } 11555 11556 protected boolean parseMessageHeaderContent(int eventType, XmlPullParser xpp, MessageHeader res) throws XmlPullParserException, IOException, FHIRFormatError { 11557 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 11558 res.setEvent(parseCoding(xpp)); 11559 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 11560 res.getDestination().add(parseMessageHeaderMessageDestinationComponent(xpp, res)); 11561 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("receiver")) { 11562 res.setReceiver(parseReference(xpp)); 11563 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sender")) { 11564 res.setSender(parseReference(xpp)); 11565 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("timestamp")) { 11566 res.setTimestampElement(parseInstant(xpp)); 11567 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("enterer")) { 11568 res.setEnterer(parseReference(xpp)); 11569 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 11570 res.setAuthor(parseReference(xpp)); 11571 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 11572 res.setSource(parseMessageHeaderMessageSourceComponent(xpp, res)); 11573 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responsible")) { 11574 res.setResponsible(parseReference(xpp)); 11575 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 11576 res.setReason(parseCodeableConcept(xpp)); 11577 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("response")) { 11578 res.setResponse(parseMessageHeaderMessageHeaderResponseComponent(xpp, res)); 11579 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focus")) { 11580 res.getFocus().add(parseReference(xpp)); 11581 } else if (!parseDomainResourceContent(eventType, xpp, res)) 11582 return false; 11583 return true; 11584 } 11585 11586 protected MessageHeader.MessageDestinationComponent parseMessageHeaderMessageDestinationComponent(XmlPullParser xpp, MessageHeader owner) throws XmlPullParserException, IOException, FHIRFormatError { 11587 MessageHeader.MessageDestinationComponent res = new MessageHeader.MessageDestinationComponent(); 11588 parseBackboneAttributes(xpp, res); 11589 next(xpp); 11590 int eventType = nextNoWhitespace(xpp); 11591 while (eventType != XmlPullParser.END_TAG) { 11592 if (!parseMessageHeaderMessageDestinationComponentContent(eventType, xpp, owner, res)) 11593 unknownContent(xpp); 11594 eventType = nextNoWhitespace(xpp); 11595 } 11596 next(xpp); 11597 parseElementClose(res); 11598 return res; 11599 } 11600 11601 protected boolean parseMessageHeaderMessageDestinationComponentContent(int eventType, XmlPullParser xpp, MessageHeader owner, MessageHeader.MessageDestinationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11602 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 11603 res.setNameElement(parseString(xpp)); 11604 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 11605 res.setTarget(parseReference(xpp)); 11606 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 11607 res.setEndpointElement(parseUri(xpp)); 11608 } else if (!parseBackboneContent(eventType, xpp, res)) 11609 return false; 11610 return true; 11611 } 11612 11613 protected MessageHeader.MessageSourceComponent parseMessageHeaderMessageSourceComponent(XmlPullParser xpp, MessageHeader owner) throws XmlPullParserException, IOException, FHIRFormatError { 11614 MessageHeader.MessageSourceComponent res = new MessageHeader.MessageSourceComponent(); 11615 parseBackboneAttributes(xpp, res); 11616 next(xpp); 11617 int eventType = nextNoWhitespace(xpp); 11618 while (eventType != XmlPullParser.END_TAG) { 11619 if (!parseMessageHeaderMessageSourceComponentContent(eventType, xpp, owner, res)) 11620 unknownContent(xpp); 11621 eventType = nextNoWhitespace(xpp); 11622 } 11623 next(xpp); 11624 parseElementClose(res); 11625 return res; 11626 } 11627 11628 protected boolean parseMessageHeaderMessageSourceComponentContent(int eventType, XmlPullParser xpp, MessageHeader owner, MessageHeader.MessageSourceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11629 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 11630 res.setNameElement(parseString(xpp)); 11631 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("software")) { 11632 res.setSoftwareElement(parseString(xpp)); 11633 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 11634 res.setVersionElement(parseString(xpp)); 11635 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 11636 res.setContact(parseContactPoint(xpp)); 11637 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 11638 res.setEndpointElement(parseUri(xpp)); 11639 } else if (!parseBackboneContent(eventType, xpp, res)) 11640 return false; 11641 return true; 11642 } 11643 11644 protected MessageHeader.MessageHeaderResponseComponent parseMessageHeaderMessageHeaderResponseComponent(XmlPullParser xpp, MessageHeader owner) throws XmlPullParserException, IOException, FHIRFormatError { 11645 MessageHeader.MessageHeaderResponseComponent res = new MessageHeader.MessageHeaderResponseComponent(); 11646 parseBackboneAttributes(xpp, res); 11647 next(xpp); 11648 int eventType = nextNoWhitespace(xpp); 11649 while (eventType != XmlPullParser.END_TAG) { 11650 if (!parseMessageHeaderMessageHeaderResponseComponentContent(eventType, xpp, owner, res)) 11651 unknownContent(xpp); 11652 eventType = nextNoWhitespace(xpp); 11653 } 11654 next(xpp); 11655 parseElementClose(res); 11656 return res; 11657 } 11658 11659 protected boolean parseMessageHeaderMessageHeaderResponseComponentContent(int eventType, XmlPullParser xpp, MessageHeader owner, MessageHeader.MessageHeaderResponseComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11660 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 11661 res.setIdentifierElement(parseId(xpp)); 11662 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 11663 res.setCodeElement(parseEnumeration(xpp, MessageHeader.ResponseType.NULL, new MessageHeader.ResponseTypeEnumFactory())); 11664 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("details")) { 11665 res.setDetails(parseReference(xpp)); 11666 } else if (!parseBackboneContent(eventType, xpp, res)) 11667 return false; 11668 return true; 11669 } 11670 11671 protected NamingSystem parseNamingSystem(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11672 NamingSystem res = new NamingSystem(); 11673 parseDomainResourceAttributes(xpp, res); 11674 next(xpp); 11675 int eventType = nextNoWhitespace(xpp); 11676 while (eventType != XmlPullParser.END_TAG) { 11677 if (!parseNamingSystemContent(eventType, xpp, res)) 11678 unknownContent(xpp); 11679 eventType = nextNoWhitespace(xpp); 11680 } 11681 next(xpp); 11682 parseElementClose(res); 11683 return res; 11684 } 11685 11686 protected boolean parseNamingSystemContent(int eventType, XmlPullParser xpp, NamingSystem res) throws XmlPullParserException, IOException, FHIRFormatError { 11687 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 11688 res.setNameElement(parseString(xpp)); 11689 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 11690 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 11691 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 11692 res.setKindElement(parseEnumeration(xpp, NamingSystem.NamingSystemType.NULL, new NamingSystem.NamingSystemTypeEnumFactory())); 11693 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 11694 res.setDateElement(parseDateTime(xpp)); 11695 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 11696 res.setPublisherElement(parseString(xpp)); 11697 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 11698 res.getContact().add(parseContactDetail(xpp)); 11699 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responsible")) { 11700 res.setResponsibleElement(parseString(xpp)); 11701 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 11702 res.setType(parseCodeableConcept(xpp)); 11703 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 11704 res.setDescriptionElement(parseMarkdown(xpp)); 11705 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 11706 res.getUseContext().add(parseUsageContext(xpp)); 11707 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 11708 res.getJurisdiction().add(parseCodeableConcept(xpp)); 11709 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usage")) { 11710 res.setUsageElement(parseString(xpp)); 11711 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uniqueId")) { 11712 res.getUniqueId().add(parseNamingSystemNamingSystemUniqueIdComponent(xpp, res)); 11713 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("replacedBy")) { 11714 res.setReplacedBy(parseReference(xpp)); 11715 } else if (!parseDomainResourceContent(eventType, xpp, res)) 11716 return false; 11717 return true; 11718 } 11719 11720 protected NamingSystem.NamingSystemUniqueIdComponent parseNamingSystemNamingSystemUniqueIdComponent(XmlPullParser xpp, NamingSystem owner) throws XmlPullParserException, IOException, FHIRFormatError { 11721 NamingSystem.NamingSystemUniqueIdComponent res = new NamingSystem.NamingSystemUniqueIdComponent(); 11722 parseBackboneAttributes(xpp, res); 11723 next(xpp); 11724 int eventType = nextNoWhitespace(xpp); 11725 while (eventType != XmlPullParser.END_TAG) { 11726 if (!parseNamingSystemNamingSystemUniqueIdComponentContent(eventType, xpp, owner, res)) 11727 unknownContent(xpp); 11728 eventType = nextNoWhitespace(xpp); 11729 } 11730 next(xpp); 11731 parseElementClose(res); 11732 return res; 11733 } 11734 11735 protected boolean parseNamingSystemNamingSystemUniqueIdComponentContent(int eventType, XmlPullParser xpp, NamingSystem owner, NamingSystem.NamingSystemUniqueIdComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11736 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 11737 res.setTypeElement(parseEnumeration(xpp, NamingSystem.NamingSystemIdentifierType.NULL, new NamingSystem.NamingSystemIdentifierTypeEnumFactory())); 11738 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 11739 res.setValueElement(parseString(xpp)); 11740 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preferred")) { 11741 res.setPreferredElement(parseBoolean(xpp)); 11742 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 11743 res.setCommentElement(parseString(xpp)); 11744 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 11745 res.setPeriod(parsePeriod(xpp)); 11746 } else if (!parseBackboneContent(eventType, xpp, res)) 11747 return false; 11748 return true; 11749 } 11750 11751 protected NutritionOrder parseNutritionOrder(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11752 NutritionOrder res = new NutritionOrder(); 11753 parseDomainResourceAttributes(xpp, res); 11754 next(xpp); 11755 int eventType = nextNoWhitespace(xpp); 11756 while (eventType != XmlPullParser.END_TAG) { 11757 if (!parseNutritionOrderContent(eventType, xpp, res)) 11758 unknownContent(xpp); 11759 eventType = nextNoWhitespace(xpp); 11760 } 11761 next(xpp); 11762 parseElementClose(res); 11763 return res; 11764 } 11765 11766 protected boolean parseNutritionOrderContent(int eventType, XmlPullParser xpp, NutritionOrder res) throws XmlPullParserException, IOException, FHIRFormatError { 11767 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 11768 res.getIdentifier().add(parseIdentifier(xpp)); 11769 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 11770 res.setStatusElement(parseEnumeration(xpp, NutritionOrder.NutritionOrderStatus.NULL, new NutritionOrder.NutritionOrderStatusEnumFactory())); 11771 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 11772 res.setPatient(parseReference(xpp)); 11773 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 11774 res.setEncounter(parseReference(xpp)); 11775 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateTime")) { 11776 res.setDateTimeElement(parseDateTime(xpp)); 11777 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orderer")) { 11778 res.setOrderer(parseReference(xpp)); 11779 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("allergyIntolerance")) { 11780 res.getAllergyIntolerance().add(parseReference(xpp)); 11781 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("foodPreferenceModifier")) { 11782 res.getFoodPreferenceModifier().add(parseCodeableConcept(xpp)); 11783 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("excludeFoodModifier")) { 11784 res.getExcludeFoodModifier().add(parseCodeableConcept(xpp)); 11785 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("oralDiet")) { 11786 res.setOralDiet(parseNutritionOrderNutritionOrderOralDietComponent(xpp, res)); 11787 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supplement")) { 11788 res.getSupplement().add(parseNutritionOrderNutritionOrderSupplementComponent(xpp, res)); 11789 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("enteralFormula")) { 11790 res.setEnteralFormula(parseNutritionOrderNutritionOrderEnteralFormulaComponent(xpp, res)); 11791 } else if (!parseDomainResourceContent(eventType, xpp, res)) 11792 return false; 11793 return true; 11794 } 11795 11796 protected NutritionOrder.NutritionOrderOralDietComponent parseNutritionOrderNutritionOrderOralDietComponent(XmlPullParser xpp, NutritionOrder owner) throws XmlPullParserException, IOException, FHIRFormatError { 11797 NutritionOrder.NutritionOrderOralDietComponent res = new NutritionOrder.NutritionOrderOralDietComponent(); 11798 parseBackboneAttributes(xpp, res); 11799 next(xpp); 11800 int eventType = nextNoWhitespace(xpp); 11801 while (eventType != XmlPullParser.END_TAG) { 11802 if (!parseNutritionOrderNutritionOrderOralDietComponentContent(eventType, xpp, owner, res)) 11803 unknownContent(xpp); 11804 eventType = nextNoWhitespace(xpp); 11805 } 11806 next(xpp); 11807 parseElementClose(res); 11808 return res; 11809 } 11810 11811 protected boolean parseNutritionOrderNutritionOrderOralDietComponentContent(int eventType, XmlPullParser xpp, NutritionOrder owner, NutritionOrder.NutritionOrderOralDietComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11812 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 11813 res.getType().add(parseCodeableConcept(xpp)); 11814 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("schedule")) { 11815 res.getSchedule().add(parseTiming(xpp)); 11816 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("nutrient")) { 11817 res.getNutrient().add(parseNutritionOrderNutritionOrderOralDietNutrientComponent(xpp, owner)); 11818 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("texture")) { 11819 res.getTexture().add(parseNutritionOrderNutritionOrderOralDietTextureComponent(xpp, owner)); 11820 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fluidConsistencyType")) { 11821 res.getFluidConsistencyType().add(parseCodeableConcept(xpp)); 11822 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instruction")) { 11823 res.setInstructionElement(parseString(xpp)); 11824 } else if (!parseBackboneContent(eventType, xpp, res)) 11825 return false; 11826 return true; 11827 } 11828 11829 protected NutritionOrder.NutritionOrderOralDietNutrientComponent parseNutritionOrderNutritionOrderOralDietNutrientComponent(XmlPullParser xpp, NutritionOrder owner) throws XmlPullParserException, IOException, FHIRFormatError { 11830 NutritionOrder.NutritionOrderOralDietNutrientComponent res = new NutritionOrder.NutritionOrderOralDietNutrientComponent(); 11831 parseBackboneAttributes(xpp, res); 11832 next(xpp); 11833 int eventType = nextNoWhitespace(xpp); 11834 while (eventType != XmlPullParser.END_TAG) { 11835 if (!parseNutritionOrderNutritionOrderOralDietNutrientComponentContent(eventType, xpp, owner, res)) 11836 unknownContent(xpp); 11837 eventType = nextNoWhitespace(xpp); 11838 } 11839 next(xpp); 11840 parseElementClose(res); 11841 return res; 11842 } 11843 11844 protected boolean parseNutritionOrderNutritionOrderOralDietNutrientComponentContent(int eventType, XmlPullParser xpp, NutritionOrder owner, NutritionOrder.NutritionOrderOralDietNutrientComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11845 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 11846 res.setModifier(parseCodeableConcept(xpp)); 11847 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 11848 res.setAmount(parseSimpleQuantity(xpp)); 11849 } else if (!parseBackboneContent(eventType, xpp, res)) 11850 return false; 11851 return true; 11852 } 11853 11854 protected NutritionOrder.NutritionOrderOralDietTextureComponent parseNutritionOrderNutritionOrderOralDietTextureComponent(XmlPullParser xpp, NutritionOrder owner) throws XmlPullParserException, IOException, FHIRFormatError { 11855 NutritionOrder.NutritionOrderOralDietTextureComponent res = new NutritionOrder.NutritionOrderOralDietTextureComponent(); 11856 parseBackboneAttributes(xpp, res); 11857 next(xpp); 11858 int eventType = nextNoWhitespace(xpp); 11859 while (eventType != XmlPullParser.END_TAG) { 11860 if (!parseNutritionOrderNutritionOrderOralDietTextureComponentContent(eventType, xpp, owner, res)) 11861 unknownContent(xpp); 11862 eventType = nextNoWhitespace(xpp); 11863 } 11864 next(xpp); 11865 parseElementClose(res); 11866 return res; 11867 } 11868 11869 protected boolean parseNutritionOrderNutritionOrderOralDietTextureComponentContent(int eventType, XmlPullParser xpp, NutritionOrder owner, NutritionOrder.NutritionOrderOralDietTextureComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11870 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 11871 res.setModifier(parseCodeableConcept(xpp)); 11872 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("foodType")) { 11873 res.setFoodType(parseCodeableConcept(xpp)); 11874 } else if (!parseBackboneContent(eventType, xpp, res)) 11875 return false; 11876 return true; 11877 } 11878 11879 protected NutritionOrder.NutritionOrderSupplementComponent parseNutritionOrderNutritionOrderSupplementComponent(XmlPullParser xpp, NutritionOrder owner) throws XmlPullParserException, IOException, FHIRFormatError { 11880 NutritionOrder.NutritionOrderSupplementComponent res = new NutritionOrder.NutritionOrderSupplementComponent(); 11881 parseBackboneAttributes(xpp, res); 11882 next(xpp); 11883 int eventType = nextNoWhitespace(xpp); 11884 while (eventType != XmlPullParser.END_TAG) { 11885 if (!parseNutritionOrderNutritionOrderSupplementComponentContent(eventType, xpp, owner, res)) 11886 unknownContent(xpp); 11887 eventType = nextNoWhitespace(xpp); 11888 } 11889 next(xpp); 11890 parseElementClose(res); 11891 return res; 11892 } 11893 11894 protected boolean parseNutritionOrderNutritionOrderSupplementComponentContent(int eventType, XmlPullParser xpp, NutritionOrder owner, NutritionOrder.NutritionOrderSupplementComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11895 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 11896 res.setType(parseCodeableConcept(xpp)); 11897 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productName")) { 11898 res.setProductNameElement(parseString(xpp)); 11899 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("schedule")) { 11900 res.getSchedule().add(parseTiming(xpp)); 11901 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 11902 res.setQuantity(parseSimpleQuantity(xpp)); 11903 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instruction")) { 11904 res.setInstructionElement(parseString(xpp)); 11905 } else if (!parseBackboneContent(eventType, xpp, res)) 11906 return false; 11907 return true; 11908 } 11909 11910 protected NutritionOrder.NutritionOrderEnteralFormulaComponent parseNutritionOrderNutritionOrderEnteralFormulaComponent(XmlPullParser xpp, NutritionOrder owner) throws XmlPullParserException, IOException, FHIRFormatError { 11911 NutritionOrder.NutritionOrderEnteralFormulaComponent res = new NutritionOrder.NutritionOrderEnteralFormulaComponent(); 11912 parseBackboneAttributes(xpp, res); 11913 next(xpp); 11914 int eventType = nextNoWhitespace(xpp); 11915 while (eventType != XmlPullParser.END_TAG) { 11916 if (!parseNutritionOrderNutritionOrderEnteralFormulaComponentContent(eventType, xpp, owner, res)) 11917 unknownContent(xpp); 11918 eventType = nextNoWhitespace(xpp); 11919 } 11920 next(xpp); 11921 parseElementClose(res); 11922 return res; 11923 } 11924 11925 protected boolean parseNutritionOrderNutritionOrderEnteralFormulaComponentContent(int eventType, XmlPullParser xpp, NutritionOrder owner, NutritionOrder.NutritionOrderEnteralFormulaComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11926 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("baseFormulaType")) { 11927 res.setBaseFormulaType(parseCodeableConcept(xpp)); 11928 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("baseFormulaProductName")) { 11929 res.setBaseFormulaProductNameElement(parseString(xpp)); 11930 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("additiveType")) { 11931 res.setAdditiveType(parseCodeableConcept(xpp)); 11932 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("additiveProductName")) { 11933 res.setAdditiveProductNameElement(parseString(xpp)); 11934 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("caloricDensity")) { 11935 res.setCaloricDensity(parseSimpleQuantity(xpp)); 11936 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("routeofAdministration")) { 11937 res.setRouteofAdministration(parseCodeableConcept(xpp)); 11938 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("administration")) { 11939 res.getAdministration().add(parseNutritionOrderNutritionOrderEnteralFormulaAdministrationComponent(xpp, owner)); 11940 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxVolumeToDeliver")) { 11941 res.setMaxVolumeToDeliver(parseSimpleQuantity(xpp)); 11942 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("administrationInstruction")) { 11943 res.setAdministrationInstructionElement(parseString(xpp)); 11944 } else if (!parseBackboneContent(eventType, xpp, res)) 11945 return false; 11946 return true; 11947 } 11948 11949 protected NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent parseNutritionOrderNutritionOrderEnteralFormulaAdministrationComponent(XmlPullParser xpp, NutritionOrder owner) throws XmlPullParserException, IOException, FHIRFormatError { 11950 NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent res = new NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent(); 11951 parseBackboneAttributes(xpp, res); 11952 next(xpp); 11953 int eventType = nextNoWhitespace(xpp); 11954 while (eventType != XmlPullParser.END_TAG) { 11955 if (!parseNutritionOrderNutritionOrderEnteralFormulaAdministrationComponentContent(eventType, xpp, owner, res)) 11956 unknownContent(xpp); 11957 eventType = nextNoWhitespace(xpp); 11958 } 11959 next(xpp); 11960 parseElementClose(res); 11961 return res; 11962 } 11963 11964 protected boolean parseNutritionOrderNutritionOrderEnteralFormulaAdministrationComponentContent(int eventType, XmlPullParser xpp, NutritionOrder owner, NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11965 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("schedule")) { 11966 res.setSchedule(parseTiming(xpp)); 11967 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 11968 res.setQuantity(parseSimpleQuantity(xpp)); 11969 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "rate")) { 11970 res.setRate(parseType("rate", xpp)); 11971 } else if (!parseBackboneContent(eventType, xpp, res)) 11972 return false; 11973 return true; 11974 } 11975 11976 protected Observation parseObservation(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11977 Observation res = new Observation(); 11978 parseDomainResourceAttributes(xpp, res); 11979 next(xpp); 11980 int eventType = nextNoWhitespace(xpp); 11981 while (eventType != XmlPullParser.END_TAG) { 11982 if (!parseObservationContent(eventType, xpp, res)) 11983 unknownContent(xpp); 11984 eventType = nextNoWhitespace(xpp); 11985 } 11986 next(xpp); 11987 parseElementClose(res); 11988 return res; 11989 } 11990 11991 protected boolean parseObservationContent(int eventType, XmlPullParser xpp, Observation res) throws XmlPullParserException, IOException, FHIRFormatError { 11992 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 11993 res.getIdentifier().add(parseIdentifier(xpp)); 11994 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 11995 res.getBasedOn().add(parseReference(xpp)); 11996 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 11997 res.setStatusElement(parseEnumeration(xpp, Observation.ObservationStatus.NULL, new Observation.ObservationStatusEnumFactory())); 11998 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 11999 res.getCategory().add(parseCodeableConcept(xpp)); 12000 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 12001 res.setCode(parseCodeableConcept(xpp)); 12002 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 12003 res.setSubject(parseReference(xpp)); 12004 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 12005 res.setContext(parseReference(xpp)); 12006 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "effective")) { 12007 res.setEffective(parseType("effective", xpp)); 12008 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issued")) { 12009 res.setIssuedElement(parseInstant(xpp)); 12010 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 12011 res.getPerformer().add(parseReference(xpp)); 12012 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 12013 res.setValue(parseType("value", xpp)); 12014 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dataAbsentReason")) { 12015 res.setDataAbsentReason(parseCodeableConcept(xpp)); 12016 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("interpretation")) { 12017 res.setInterpretation(parseCodeableConcept(xpp)); 12018 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 12019 res.setCommentElement(parseString(xpp)); 12020 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 12021 res.setBodySite(parseCodeableConcept(xpp)); 12022 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 12023 res.setMethod(parseCodeableConcept(xpp)); 12024 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specimen")) { 12025 res.setSpecimen(parseReference(xpp)); 12026 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 12027 res.setDevice(parseReference(xpp)); 12028 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referenceRange")) { 12029 res.getReferenceRange().add(parseObservationObservationReferenceRangeComponent(xpp, res)); 12030 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("related")) { 12031 res.getRelated().add(parseObservationObservationRelatedComponent(xpp, res)); 12032 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("component")) { 12033 res.getComponent().add(parseObservationObservationComponentComponent(xpp, res)); 12034 } else if (!parseDomainResourceContent(eventType, xpp, res)) 12035 return false; 12036 return true; 12037 } 12038 12039 protected Observation.ObservationReferenceRangeComponent parseObservationObservationReferenceRangeComponent(XmlPullParser xpp, Observation owner) throws XmlPullParserException, IOException, FHIRFormatError { 12040 Observation.ObservationReferenceRangeComponent res = new Observation.ObservationReferenceRangeComponent(); 12041 parseBackboneAttributes(xpp, res); 12042 next(xpp); 12043 int eventType = nextNoWhitespace(xpp); 12044 while (eventType != XmlPullParser.END_TAG) { 12045 if (!parseObservationObservationReferenceRangeComponentContent(eventType, xpp, owner, res)) 12046 unknownContent(xpp); 12047 eventType = nextNoWhitespace(xpp); 12048 } 12049 next(xpp); 12050 parseElementClose(res); 12051 return res; 12052 } 12053 12054 protected boolean parseObservationObservationReferenceRangeComponentContent(int eventType, XmlPullParser xpp, Observation owner, Observation.ObservationReferenceRangeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12055 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("low")) { 12056 res.setLow(parseSimpleQuantity(xpp)); 12057 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("high")) { 12058 res.setHigh(parseSimpleQuantity(xpp)); 12059 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 12060 res.setType(parseCodeableConcept(xpp)); 12061 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("appliesTo")) { 12062 res.getAppliesTo().add(parseCodeableConcept(xpp)); 12063 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("age")) { 12064 res.setAge(parseRange(xpp)); 12065 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 12066 res.setTextElement(parseString(xpp)); 12067 } else if (!parseBackboneContent(eventType, xpp, res)) 12068 return false; 12069 return true; 12070 } 12071 12072 protected Observation.ObservationRelatedComponent parseObservationObservationRelatedComponent(XmlPullParser xpp, Observation owner) throws XmlPullParserException, IOException, FHIRFormatError { 12073 Observation.ObservationRelatedComponent res = new Observation.ObservationRelatedComponent(); 12074 parseBackboneAttributes(xpp, res); 12075 next(xpp); 12076 int eventType = nextNoWhitespace(xpp); 12077 while (eventType != XmlPullParser.END_TAG) { 12078 if (!parseObservationObservationRelatedComponentContent(eventType, xpp, owner, res)) 12079 unknownContent(xpp); 12080 eventType = nextNoWhitespace(xpp); 12081 } 12082 next(xpp); 12083 parseElementClose(res); 12084 return res; 12085 } 12086 12087 protected boolean parseObservationObservationRelatedComponentContent(int eventType, XmlPullParser xpp, Observation owner, Observation.ObservationRelatedComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12088 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 12089 res.setTypeElement(parseEnumeration(xpp, Observation.ObservationRelationshipType.NULL, new Observation.ObservationRelationshipTypeEnumFactory())); 12090 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 12091 res.setTarget(parseReference(xpp)); 12092 } else if (!parseBackboneContent(eventType, xpp, res)) 12093 return false; 12094 return true; 12095 } 12096 12097 protected Observation.ObservationComponentComponent parseObservationObservationComponentComponent(XmlPullParser xpp, Observation owner) throws XmlPullParserException, IOException, FHIRFormatError { 12098 Observation.ObservationComponentComponent res = new Observation.ObservationComponentComponent(); 12099 parseBackboneAttributes(xpp, res); 12100 next(xpp); 12101 int eventType = nextNoWhitespace(xpp); 12102 while (eventType != XmlPullParser.END_TAG) { 12103 if (!parseObservationObservationComponentComponentContent(eventType, xpp, owner, res)) 12104 unknownContent(xpp); 12105 eventType = nextNoWhitespace(xpp); 12106 } 12107 next(xpp); 12108 parseElementClose(res); 12109 return res; 12110 } 12111 12112 protected boolean parseObservationObservationComponentComponentContent(int eventType, XmlPullParser xpp, Observation owner, Observation.ObservationComponentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12113 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 12114 res.setCode(parseCodeableConcept(xpp)); 12115 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 12116 res.setValue(parseType("value", xpp)); 12117 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dataAbsentReason")) { 12118 res.setDataAbsentReason(parseCodeableConcept(xpp)); 12119 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("interpretation")) { 12120 res.setInterpretation(parseCodeableConcept(xpp)); 12121 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referenceRange")) { 12122 res.getReferenceRange().add(parseObservationObservationReferenceRangeComponent(xpp, owner)); 12123 } else if (!parseBackboneContent(eventType, xpp, res)) 12124 return false; 12125 return true; 12126 } 12127 12128 protected OperationDefinition parseOperationDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12129 OperationDefinition res = new OperationDefinition(); 12130 parseDomainResourceAttributes(xpp, res); 12131 next(xpp); 12132 int eventType = nextNoWhitespace(xpp); 12133 while (eventType != XmlPullParser.END_TAG) { 12134 if (!parseOperationDefinitionContent(eventType, xpp, res)) 12135 unknownContent(xpp); 12136 eventType = nextNoWhitespace(xpp); 12137 } 12138 next(xpp); 12139 parseElementClose(res); 12140 return res; 12141 } 12142 12143 protected boolean parseOperationDefinitionContent(int eventType, XmlPullParser xpp, OperationDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 12144 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 12145 res.setUrlElement(parseUri(xpp)); 12146 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 12147 res.setVersionElement(parseString(xpp)); 12148 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 12149 res.setNameElement(parseString(xpp)); 12150 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 12151 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 12152 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 12153 res.setKindElement(parseEnumeration(xpp, OperationDefinition.OperationKind.NULL, new OperationDefinition.OperationKindEnumFactory())); 12154 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 12155 res.setExperimentalElement(parseBoolean(xpp)); 12156 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 12157 res.setDateElement(parseDateTime(xpp)); 12158 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 12159 res.setPublisherElement(parseString(xpp)); 12160 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 12161 res.getContact().add(parseContactDetail(xpp)); 12162 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 12163 res.setDescriptionElement(parseMarkdown(xpp)); 12164 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 12165 res.getUseContext().add(parseUsageContext(xpp)); 12166 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 12167 res.getJurisdiction().add(parseCodeableConcept(xpp)); 12168 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 12169 res.setPurposeElement(parseMarkdown(xpp)); 12170 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("idempotent")) { 12171 res.setIdempotentElement(parseBoolean(xpp)); 12172 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 12173 res.setCodeElement(parseCode(xpp)); 12174 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 12175 res.setCommentElement(parseString(xpp)); 12176 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("base")) { 12177 res.setBase(parseReference(xpp)); 12178 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 12179 res.getResource().add(parseCode(xpp)); 12180 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 12181 res.setSystemElement(parseBoolean(xpp)); 12182 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 12183 res.setTypeElement(parseBoolean(xpp)); 12184 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instance")) { 12185 res.setInstanceElement(parseBoolean(xpp)); 12186 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameter")) { 12187 res.getParameter().add(parseOperationDefinitionOperationDefinitionParameterComponent(xpp, res)); 12188 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("overload")) { 12189 res.getOverload().add(parseOperationDefinitionOperationDefinitionOverloadComponent(xpp, res)); 12190 } else if (!parseDomainResourceContent(eventType, xpp, res)) 12191 return false; 12192 return true; 12193 } 12194 12195 protected OperationDefinition.OperationDefinitionParameterComponent parseOperationDefinitionOperationDefinitionParameterComponent(XmlPullParser xpp, OperationDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 12196 OperationDefinition.OperationDefinitionParameterComponent res = new OperationDefinition.OperationDefinitionParameterComponent(); 12197 parseBackboneAttributes(xpp, res); 12198 next(xpp); 12199 int eventType = nextNoWhitespace(xpp); 12200 while (eventType != XmlPullParser.END_TAG) { 12201 if (!parseOperationDefinitionOperationDefinitionParameterComponentContent(eventType, xpp, owner, res)) 12202 unknownContent(xpp); 12203 eventType = nextNoWhitespace(xpp); 12204 } 12205 next(xpp); 12206 parseElementClose(res); 12207 return res; 12208 } 12209 12210 protected boolean parseOperationDefinitionOperationDefinitionParameterComponentContent(int eventType, XmlPullParser xpp, OperationDefinition owner, OperationDefinition.OperationDefinitionParameterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12211 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 12212 res.setNameElement(parseCode(xpp)); 12213 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 12214 res.setUseElement(parseEnumeration(xpp, OperationDefinition.OperationParameterUse.NULL, new OperationDefinition.OperationParameterUseEnumFactory())); 12215 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("min")) { 12216 res.setMinElement(parseInteger(xpp)); 12217 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("max")) { 12218 res.setMaxElement(parseString(xpp)); 12219 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 12220 res.setDocumentationElement(parseString(xpp)); 12221 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 12222 res.setTypeElement(parseCode(xpp)); 12223 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("searchType")) { 12224 res.setSearchTypeElement(parseEnumeration(xpp, Enumerations.SearchParamType.NULL, new Enumerations.SearchParamTypeEnumFactory())); 12225 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 12226 res.setProfile(parseReference(xpp)); 12227 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("binding")) { 12228 res.setBinding(parseOperationDefinitionOperationDefinitionParameterBindingComponent(xpp, owner)); 12229 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("part")) { 12230 res.getPart().add(parseOperationDefinitionOperationDefinitionParameterComponent(xpp, owner)); 12231 } else if (!parseBackboneContent(eventType, xpp, res)) 12232 return false; 12233 return true; 12234 } 12235 12236 protected OperationDefinition.OperationDefinitionParameterBindingComponent parseOperationDefinitionOperationDefinitionParameterBindingComponent(XmlPullParser xpp, OperationDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 12237 OperationDefinition.OperationDefinitionParameterBindingComponent res = new OperationDefinition.OperationDefinitionParameterBindingComponent(); 12238 parseBackboneAttributes(xpp, res); 12239 next(xpp); 12240 int eventType = nextNoWhitespace(xpp); 12241 while (eventType != XmlPullParser.END_TAG) { 12242 if (!parseOperationDefinitionOperationDefinitionParameterBindingComponentContent(eventType, xpp, owner, res)) 12243 unknownContent(xpp); 12244 eventType = nextNoWhitespace(xpp); 12245 } 12246 next(xpp); 12247 parseElementClose(res); 12248 return res; 12249 } 12250 12251 protected boolean parseOperationDefinitionOperationDefinitionParameterBindingComponentContent(int eventType, XmlPullParser xpp, OperationDefinition owner, OperationDefinition.OperationDefinitionParameterBindingComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12252 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("strength")) { 12253 res.setStrengthElement(parseEnumeration(xpp, Enumerations.BindingStrength.NULL, new Enumerations.BindingStrengthEnumFactory())); 12254 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "valueSet")) { 12255 res.setValueSet(parseType("valueSet", xpp)); 12256 } else if (!parseBackboneContent(eventType, xpp, res)) 12257 return false; 12258 return true; 12259 } 12260 12261 protected OperationDefinition.OperationDefinitionOverloadComponent parseOperationDefinitionOperationDefinitionOverloadComponent(XmlPullParser xpp, OperationDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 12262 OperationDefinition.OperationDefinitionOverloadComponent res = new OperationDefinition.OperationDefinitionOverloadComponent(); 12263 parseBackboneAttributes(xpp, res); 12264 next(xpp); 12265 int eventType = nextNoWhitespace(xpp); 12266 while (eventType != XmlPullParser.END_TAG) { 12267 if (!parseOperationDefinitionOperationDefinitionOverloadComponentContent(eventType, xpp, owner, res)) 12268 unknownContent(xpp); 12269 eventType = nextNoWhitespace(xpp); 12270 } 12271 next(xpp); 12272 parseElementClose(res); 12273 return res; 12274 } 12275 12276 protected boolean parseOperationDefinitionOperationDefinitionOverloadComponentContent(int eventType, XmlPullParser xpp, OperationDefinition owner, OperationDefinition.OperationDefinitionOverloadComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12277 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameterName")) { 12278 res.getParameterName().add(parseString(xpp)); 12279 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 12280 res.setCommentElement(parseString(xpp)); 12281 } else if (!parseBackboneContent(eventType, xpp, res)) 12282 return false; 12283 return true; 12284 } 12285 12286 protected OperationOutcome parseOperationOutcome(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12287 OperationOutcome res = new OperationOutcome(); 12288 parseDomainResourceAttributes(xpp, res); 12289 next(xpp); 12290 int eventType = nextNoWhitespace(xpp); 12291 while (eventType != XmlPullParser.END_TAG) { 12292 if (!parseOperationOutcomeContent(eventType, xpp, res)) 12293 unknownContent(xpp); 12294 eventType = nextNoWhitespace(xpp); 12295 } 12296 next(xpp); 12297 parseElementClose(res); 12298 return res; 12299 } 12300 12301 protected boolean parseOperationOutcomeContent(int eventType, XmlPullParser xpp, OperationOutcome res) throws XmlPullParserException, IOException, FHIRFormatError { 12302 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issue")) { 12303 res.getIssue().add(parseOperationOutcomeOperationOutcomeIssueComponent(xpp, res)); 12304 } else if (!parseDomainResourceContent(eventType, xpp, res)) 12305 return false; 12306 return true; 12307 } 12308 12309 protected OperationOutcome.OperationOutcomeIssueComponent parseOperationOutcomeOperationOutcomeIssueComponent(XmlPullParser xpp, OperationOutcome owner) throws XmlPullParserException, IOException, FHIRFormatError { 12310 OperationOutcome.OperationOutcomeIssueComponent res = new OperationOutcome.OperationOutcomeIssueComponent(); 12311 parseBackboneAttributes(xpp, res); 12312 next(xpp); 12313 int eventType = nextNoWhitespace(xpp); 12314 while (eventType != XmlPullParser.END_TAG) { 12315 if (!parseOperationOutcomeOperationOutcomeIssueComponentContent(eventType, xpp, owner, res)) 12316 unknownContent(xpp); 12317 eventType = nextNoWhitespace(xpp); 12318 } 12319 next(xpp); 12320 parseElementClose(res); 12321 return res; 12322 } 12323 12324 protected boolean parseOperationOutcomeOperationOutcomeIssueComponentContent(int eventType, XmlPullParser xpp, OperationOutcome owner, OperationOutcome.OperationOutcomeIssueComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12325 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("severity")) { 12326 res.setSeverityElement(parseEnumeration(xpp, OperationOutcome.IssueSeverity.NULL, new OperationOutcome.IssueSeverityEnumFactory())); 12327 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 12328 res.setCodeElement(parseEnumeration(xpp, OperationOutcome.IssueType.NULL, new OperationOutcome.IssueTypeEnumFactory())); 12329 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("details")) { 12330 res.setDetails(parseCodeableConcept(xpp)); 12331 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnostics")) { 12332 res.setDiagnosticsElement(parseString(xpp)); 12333 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 12334 res.getLocation().add(parseString(xpp)); 12335 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 12336 res.getExpression().add(parseString(xpp)); 12337 } else if (!parseBackboneContent(eventType, xpp, res)) 12338 return false; 12339 return true; 12340 } 12341 12342 protected Organization parseOrganization(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12343 Organization res = new Organization(); 12344 parseDomainResourceAttributes(xpp, res); 12345 next(xpp); 12346 int eventType = nextNoWhitespace(xpp); 12347 while (eventType != XmlPullParser.END_TAG) { 12348 if (!parseOrganizationContent(eventType, xpp, res)) 12349 unknownContent(xpp); 12350 eventType = nextNoWhitespace(xpp); 12351 } 12352 next(xpp); 12353 parseElementClose(res); 12354 return res; 12355 } 12356 12357 protected boolean parseOrganizationContent(int eventType, XmlPullParser xpp, Organization res) throws XmlPullParserException, IOException, FHIRFormatError { 12358 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 12359 res.getIdentifier().add(parseIdentifier(xpp)); 12360 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 12361 res.setActiveElement(parseBoolean(xpp)); 12362 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 12363 res.getType().add(parseCodeableConcept(xpp)); 12364 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 12365 res.setNameElement(parseString(xpp)); 12366 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("alias")) { 12367 res.getAlias().add(parseString(xpp)); 12368 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 12369 res.getTelecom().add(parseContactPoint(xpp)); 12370 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 12371 res.getAddress().add(parseAddress(xpp)); 12372 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 12373 res.setPartOf(parseReference(xpp)); 12374 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 12375 res.getContact().add(parseOrganizationOrganizationContactComponent(xpp, res)); 12376 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 12377 res.getEndpoint().add(parseReference(xpp)); 12378 } else if (!parseDomainResourceContent(eventType, xpp, res)) 12379 return false; 12380 return true; 12381 } 12382 12383 protected Organization.OrganizationContactComponent parseOrganizationOrganizationContactComponent(XmlPullParser xpp, Organization owner) throws XmlPullParserException, IOException, FHIRFormatError { 12384 Organization.OrganizationContactComponent res = new Organization.OrganizationContactComponent(); 12385 parseBackboneAttributes(xpp, res); 12386 next(xpp); 12387 int eventType = nextNoWhitespace(xpp); 12388 while (eventType != XmlPullParser.END_TAG) { 12389 if (!parseOrganizationOrganizationContactComponentContent(eventType, xpp, owner, res)) 12390 unknownContent(xpp); 12391 eventType = nextNoWhitespace(xpp); 12392 } 12393 next(xpp); 12394 parseElementClose(res); 12395 return res; 12396 } 12397 12398 protected boolean parseOrganizationOrganizationContactComponentContent(int eventType, XmlPullParser xpp, Organization owner, Organization.OrganizationContactComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12399 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 12400 res.setPurpose(parseCodeableConcept(xpp)); 12401 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 12402 res.setName(parseHumanName(xpp)); 12403 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 12404 res.getTelecom().add(parseContactPoint(xpp)); 12405 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 12406 res.setAddress(parseAddress(xpp)); 12407 } else if (!parseBackboneContent(eventType, xpp, res)) 12408 return false; 12409 return true; 12410 } 12411 12412 protected Patient parsePatient(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12413 Patient res = new Patient(); 12414 parseDomainResourceAttributes(xpp, res); 12415 next(xpp); 12416 int eventType = nextNoWhitespace(xpp); 12417 while (eventType != XmlPullParser.END_TAG) { 12418 if (!parsePatientContent(eventType, xpp, res)) 12419 unknownContent(xpp); 12420 eventType = nextNoWhitespace(xpp); 12421 } 12422 next(xpp); 12423 parseElementClose(res); 12424 return res; 12425 } 12426 12427 protected boolean parsePatientContent(int eventType, XmlPullParser xpp, Patient res) throws XmlPullParserException, IOException, FHIRFormatError { 12428 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 12429 res.getIdentifier().add(parseIdentifier(xpp)); 12430 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 12431 res.setActiveElement(parseBoolean(xpp)); 12432 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 12433 res.getName().add(parseHumanName(xpp)); 12434 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 12435 res.getTelecom().add(parseContactPoint(xpp)); 12436 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gender")) { 12437 res.setGenderElement(parseEnumeration(xpp, Enumerations.AdministrativeGender.NULL, new Enumerations.AdministrativeGenderEnumFactory())); 12438 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("birthDate")) { 12439 res.setBirthDateElement(parseDate(xpp)); 12440 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "deceased")) { 12441 res.setDeceased(parseType("deceased", xpp)); 12442 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 12443 res.getAddress().add(parseAddress(xpp)); 12444 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maritalStatus")) { 12445 res.setMaritalStatus(parseCodeableConcept(xpp)); 12446 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "multipleBirth")) { 12447 res.setMultipleBirth(parseType("multipleBirth", xpp)); 12448 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("photo")) { 12449 res.getPhoto().add(parseAttachment(xpp)); 12450 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 12451 res.getContact().add(parsePatientContactComponent(xpp, res)); 12452 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("animal")) { 12453 res.setAnimal(parsePatientAnimalComponent(xpp, res)); 12454 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("communication")) { 12455 res.getCommunication().add(parsePatientPatientCommunicationComponent(xpp, res)); 12456 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("generalPractitioner")) { 12457 res.getGeneralPractitioner().add(parseReference(xpp)); 12458 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("managingOrganization")) { 12459 res.setManagingOrganization(parseReference(xpp)); 12460 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 12461 res.getLink().add(parsePatientPatientLinkComponent(xpp, res)); 12462 } else if (!parseDomainResourceContent(eventType, xpp, res)) 12463 return false; 12464 return true; 12465 } 12466 12467 protected Patient.ContactComponent parsePatientContactComponent(XmlPullParser xpp, Patient owner) throws XmlPullParserException, IOException, FHIRFormatError { 12468 Patient.ContactComponent res = new Patient.ContactComponent(); 12469 parseBackboneAttributes(xpp, res); 12470 next(xpp); 12471 int eventType = nextNoWhitespace(xpp); 12472 while (eventType != XmlPullParser.END_TAG) { 12473 if (!parsePatientContactComponentContent(eventType, xpp, owner, res)) 12474 unknownContent(xpp); 12475 eventType = nextNoWhitespace(xpp); 12476 } 12477 next(xpp); 12478 parseElementClose(res); 12479 return res; 12480 } 12481 12482 protected boolean parsePatientContactComponentContent(int eventType, XmlPullParser xpp, Patient owner, Patient.ContactComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12483 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 12484 res.getRelationship().add(parseCodeableConcept(xpp)); 12485 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 12486 res.setName(parseHumanName(xpp)); 12487 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 12488 res.getTelecom().add(parseContactPoint(xpp)); 12489 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 12490 res.setAddress(parseAddress(xpp)); 12491 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gender")) { 12492 res.setGenderElement(parseEnumeration(xpp, Enumerations.AdministrativeGender.NULL, new Enumerations.AdministrativeGenderEnumFactory())); 12493 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 12494 res.setOrganization(parseReference(xpp)); 12495 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 12496 res.setPeriod(parsePeriod(xpp)); 12497 } else if (!parseBackboneContent(eventType, xpp, res)) 12498 return false; 12499 return true; 12500 } 12501 12502 protected Patient.AnimalComponent parsePatientAnimalComponent(XmlPullParser xpp, Patient owner) throws XmlPullParserException, IOException, FHIRFormatError { 12503 Patient.AnimalComponent res = new Patient.AnimalComponent(); 12504 parseBackboneAttributes(xpp, res); 12505 next(xpp); 12506 int eventType = nextNoWhitespace(xpp); 12507 while (eventType != XmlPullParser.END_TAG) { 12508 if (!parsePatientAnimalComponentContent(eventType, xpp, owner, res)) 12509 unknownContent(xpp); 12510 eventType = nextNoWhitespace(xpp); 12511 } 12512 next(xpp); 12513 parseElementClose(res); 12514 return res; 12515 } 12516 12517 protected boolean parsePatientAnimalComponentContent(int eventType, XmlPullParser xpp, Patient owner, Patient.AnimalComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12518 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("species")) { 12519 res.setSpecies(parseCodeableConcept(xpp)); 12520 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("breed")) { 12521 res.setBreed(parseCodeableConcept(xpp)); 12522 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("genderStatus")) { 12523 res.setGenderStatus(parseCodeableConcept(xpp)); 12524 } else if (!parseBackboneContent(eventType, xpp, res)) 12525 return false; 12526 return true; 12527 } 12528 12529 protected Patient.PatientCommunicationComponent parsePatientPatientCommunicationComponent(XmlPullParser xpp, Patient owner) throws XmlPullParserException, IOException, FHIRFormatError { 12530 Patient.PatientCommunicationComponent res = new Patient.PatientCommunicationComponent(); 12531 parseBackboneAttributes(xpp, res); 12532 next(xpp); 12533 int eventType = nextNoWhitespace(xpp); 12534 while (eventType != XmlPullParser.END_TAG) { 12535 if (!parsePatientPatientCommunicationComponentContent(eventType, xpp, owner, res)) 12536 unknownContent(xpp); 12537 eventType = nextNoWhitespace(xpp); 12538 } 12539 next(xpp); 12540 parseElementClose(res); 12541 return res; 12542 } 12543 12544 protected boolean parsePatientPatientCommunicationComponentContent(int eventType, XmlPullParser xpp, Patient owner, Patient.PatientCommunicationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12545 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 12546 res.setLanguage(parseCodeableConcept(xpp)); 12547 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preferred")) { 12548 res.setPreferredElement(parseBoolean(xpp)); 12549 } else if (!parseBackboneContent(eventType, xpp, res)) 12550 return false; 12551 return true; 12552 } 12553 12554 protected Patient.PatientLinkComponent parsePatientPatientLinkComponent(XmlPullParser xpp, Patient owner) throws XmlPullParserException, IOException, FHIRFormatError { 12555 Patient.PatientLinkComponent res = new Patient.PatientLinkComponent(); 12556 parseBackboneAttributes(xpp, res); 12557 next(xpp); 12558 int eventType = nextNoWhitespace(xpp); 12559 while (eventType != XmlPullParser.END_TAG) { 12560 if (!parsePatientPatientLinkComponentContent(eventType, xpp, owner, res)) 12561 unknownContent(xpp); 12562 eventType = nextNoWhitespace(xpp); 12563 } 12564 next(xpp); 12565 parseElementClose(res); 12566 return res; 12567 } 12568 12569 protected boolean parsePatientPatientLinkComponentContent(int eventType, XmlPullParser xpp, Patient owner, Patient.PatientLinkComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12570 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("other")) { 12571 res.setOther(parseReference(xpp)); 12572 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 12573 res.setTypeElement(parseEnumeration(xpp, Patient.LinkType.NULL, new Patient.LinkTypeEnumFactory())); 12574 } else if (!parseBackboneContent(eventType, xpp, res)) 12575 return false; 12576 return true; 12577 } 12578 12579 protected PaymentNotice parsePaymentNotice(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12580 PaymentNotice res = new PaymentNotice(); 12581 parseDomainResourceAttributes(xpp, res); 12582 next(xpp); 12583 int eventType = nextNoWhitespace(xpp); 12584 while (eventType != XmlPullParser.END_TAG) { 12585 if (!parsePaymentNoticeContent(eventType, xpp, res)) 12586 unknownContent(xpp); 12587 eventType = nextNoWhitespace(xpp); 12588 } 12589 next(xpp); 12590 parseElementClose(res); 12591 return res; 12592 } 12593 12594 protected boolean parsePaymentNoticeContent(int eventType, XmlPullParser xpp, PaymentNotice res) throws XmlPullParserException, IOException, FHIRFormatError { 12595 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 12596 res.getIdentifier().add(parseIdentifier(xpp)); 12597 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 12598 res.setStatusElement(parseEnumeration(xpp, PaymentNotice.PaymentNoticeStatus.NULL, new PaymentNotice.PaymentNoticeStatusEnumFactory())); 12599 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 12600 res.setRequest(parseReference(xpp)); 12601 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("response")) { 12602 res.setResponse(parseReference(xpp)); 12603 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusDate")) { 12604 res.setStatusDateElement(parseDate(xpp)); 12605 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 12606 res.setCreatedElement(parseDateTime(xpp)); 12607 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 12608 res.setTarget(parseReference(xpp)); 12609 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provider")) { 12610 res.setProvider(parseReference(xpp)); 12611 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 12612 res.setOrganization(parseReference(xpp)); 12613 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("paymentStatus")) { 12614 res.setPaymentStatus(parseCodeableConcept(xpp)); 12615 } else if (!parseDomainResourceContent(eventType, xpp, res)) 12616 return false; 12617 return true; 12618 } 12619 12620 protected PaymentReconciliation parsePaymentReconciliation(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12621 PaymentReconciliation res = new PaymentReconciliation(); 12622 parseDomainResourceAttributes(xpp, res); 12623 next(xpp); 12624 int eventType = nextNoWhitespace(xpp); 12625 while (eventType != XmlPullParser.END_TAG) { 12626 if (!parsePaymentReconciliationContent(eventType, xpp, res)) 12627 unknownContent(xpp); 12628 eventType = nextNoWhitespace(xpp); 12629 } 12630 next(xpp); 12631 parseElementClose(res); 12632 return res; 12633 } 12634 12635 protected boolean parsePaymentReconciliationContent(int eventType, XmlPullParser xpp, PaymentReconciliation res) throws XmlPullParserException, IOException, FHIRFormatError { 12636 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 12637 res.getIdentifier().add(parseIdentifier(xpp)); 12638 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 12639 res.setStatusElement(parseEnumeration(xpp, PaymentReconciliation.PaymentReconciliationStatus.NULL, new PaymentReconciliation.PaymentReconciliationStatusEnumFactory())); 12640 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 12641 res.setPeriod(parsePeriod(xpp)); 12642 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 12643 res.setCreatedElement(parseDateTime(xpp)); 12644 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 12645 res.setOrganization(parseReference(xpp)); 12646 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 12647 res.setRequest(parseReference(xpp)); 12648 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 12649 res.setOutcome(parseCodeableConcept(xpp)); 12650 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disposition")) { 12651 res.setDispositionElement(parseString(xpp)); 12652 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestProvider")) { 12653 res.setRequestProvider(parseReference(xpp)); 12654 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestOrganization")) { 12655 res.setRequestOrganization(parseReference(xpp)); 12656 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 12657 res.getDetail().add(parsePaymentReconciliationDetailsComponent(xpp, res)); 12658 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("form")) { 12659 res.setForm(parseCodeableConcept(xpp)); 12660 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("total")) { 12661 res.setTotal(parseMoney(xpp)); 12662 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("processNote")) { 12663 res.getProcessNote().add(parsePaymentReconciliationNotesComponent(xpp, res)); 12664 } else if (!parseDomainResourceContent(eventType, xpp, res)) 12665 return false; 12666 return true; 12667 } 12668 12669 protected PaymentReconciliation.DetailsComponent parsePaymentReconciliationDetailsComponent(XmlPullParser xpp, PaymentReconciliation owner) throws XmlPullParserException, IOException, FHIRFormatError { 12670 PaymentReconciliation.DetailsComponent res = new PaymentReconciliation.DetailsComponent(); 12671 parseBackboneAttributes(xpp, res); 12672 next(xpp); 12673 int eventType = nextNoWhitespace(xpp); 12674 while (eventType != XmlPullParser.END_TAG) { 12675 if (!parsePaymentReconciliationDetailsComponentContent(eventType, xpp, owner, res)) 12676 unknownContent(xpp); 12677 eventType = nextNoWhitespace(xpp); 12678 } 12679 next(xpp); 12680 parseElementClose(res); 12681 return res; 12682 } 12683 12684 protected boolean parsePaymentReconciliationDetailsComponentContent(int eventType, XmlPullParser xpp, PaymentReconciliation owner, PaymentReconciliation.DetailsComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12685 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 12686 res.setType(parseCodeableConcept(xpp)); 12687 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 12688 res.setRequest(parseReference(xpp)); 12689 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("response")) { 12690 res.setResponse(parseReference(xpp)); 12691 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("submitter")) { 12692 res.setSubmitter(parseReference(xpp)); 12693 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payee")) { 12694 res.setPayee(parseReference(xpp)); 12695 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 12696 res.setDateElement(parseDate(xpp)); 12697 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 12698 res.setAmount(parseMoney(xpp)); 12699 } else if (!parseBackboneContent(eventType, xpp, res)) 12700 return false; 12701 return true; 12702 } 12703 12704 protected PaymentReconciliation.NotesComponent parsePaymentReconciliationNotesComponent(XmlPullParser xpp, PaymentReconciliation owner) throws XmlPullParserException, IOException, FHIRFormatError { 12705 PaymentReconciliation.NotesComponent res = new PaymentReconciliation.NotesComponent(); 12706 parseBackboneAttributes(xpp, res); 12707 next(xpp); 12708 int eventType = nextNoWhitespace(xpp); 12709 while (eventType != XmlPullParser.END_TAG) { 12710 if (!parsePaymentReconciliationNotesComponentContent(eventType, xpp, owner, res)) 12711 unknownContent(xpp); 12712 eventType = nextNoWhitespace(xpp); 12713 } 12714 next(xpp); 12715 parseElementClose(res); 12716 return res; 12717 } 12718 12719 protected boolean parsePaymentReconciliationNotesComponentContent(int eventType, XmlPullParser xpp, PaymentReconciliation owner, PaymentReconciliation.NotesComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12720 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 12721 res.setType(parseCodeableConcept(xpp)); 12722 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 12723 res.setTextElement(parseString(xpp)); 12724 } else if (!parseBackboneContent(eventType, xpp, res)) 12725 return false; 12726 return true; 12727 } 12728 12729 protected Person parsePerson(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12730 Person res = new Person(); 12731 parseDomainResourceAttributes(xpp, res); 12732 next(xpp); 12733 int eventType = nextNoWhitespace(xpp); 12734 while (eventType != XmlPullParser.END_TAG) { 12735 if (!parsePersonContent(eventType, xpp, res)) 12736 unknownContent(xpp); 12737 eventType = nextNoWhitespace(xpp); 12738 } 12739 next(xpp); 12740 parseElementClose(res); 12741 return res; 12742 } 12743 12744 protected boolean parsePersonContent(int eventType, XmlPullParser xpp, Person res) throws XmlPullParserException, IOException, FHIRFormatError { 12745 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 12746 res.getIdentifier().add(parseIdentifier(xpp)); 12747 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 12748 res.getName().add(parseHumanName(xpp)); 12749 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 12750 res.getTelecom().add(parseContactPoint(xpp)); 12751 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gender")) { 12752 res.setGenderElement(parseEnumeration(xpp, Enumerations.AdministrativeGender.NULL, new Enumerations.AdministrativeGenderEnumFactory())); 12753 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("birthDate")) { 12754 res.setBirthDateElement(parseDate(xpp)); 12755 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 12756 res.getAddress().add(parseAddress(xpp)); 12757 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("photo")) { 12758 res.setPhoto(parseAttachment(xpp)); 12759 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("managingOrganization")) { 12760 res.setManagingOrganization(parseReference(xpp)); 12761 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 12762 res.setActiveElement(parseBoolean(xpp)); 12763 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 12764 res.getLink().add(parsePersonPersonLinkComponent(xpp, res)); 12765 } else if (!parseDomainResourceContent(eventType, xpp, res)) 12766 return false; 12767 return true; 12768 } 12769 12770 protected Person.PersonLinkComponent parsePersonPersonLinkComponent(XmlPullParser xpp, Person owner) throws XmlPullParserException, IOException, FHIRFormatError { 12771 Person.PersonLinkComponent res = new Person.PersonLinkComponent(); 12772 parseBackboneAttributes(xpp, res); 12773 next(xpp); 12774 int eventType = nextNoWhitespace(xpp); 12775 while (eventType != XmlPullParser.END_TAG) { 12776 if (!parsePersonPersonLinkComponentContent(eventType, xpp, owner, res)) 12777 unknownContent(xpp); 12778 eventType = nextNoWhitespace(xpp); 12779 } 12780 next(xpp); 12781 parseElementClose(res); 12782 return res; 12783 } 12784 12785 protected boolean parsePersonPersonLinkComponentContent(int eventType, XmlPullParser xpp, Person owner, Person.PersonLinkComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12786 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 12787 res.setTarget(parseReference(xpp)); 12788 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assurance")) { 12789 res.setAssuranceElement(parseEnumeration(xpp, Person.IdentityAssuranceLevel.NULL, new Person.IdentityAssuranceLevelEnumFactory())); 12790 } else if (!parseBackboneContent(eventType, xpp, res)) 12791 return false; 12792 return true; 12793 } 12794 12795 protected PlanDefinition parsePlanDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12796 PlanDefinition res = new PlanDefinition(); 12797 parseDomainResourceAttributes(xpp, res); 12798 next(xpp); 12799 int eventType = nextNoWhitespace(xpp); 12800 while (eventType != XmlPullParser.END_TAG) { 12801 if (!parsePlanDefinitionContent(eventType, xpp, res)) 12802 unknownContent(xpp); 12803 eventType = nextNoWhitespace(xpp); 12804 } 12805 next(xpp); 12806 parseElementClose(res); 12807 return res; 12808 } 12809 12810 protected boolean parsePlanDefinitionContent(int eventType, XmlPullParser xpp, PlanDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 12811 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 12812 res.setUrlElement(parseUri(xpp)); 12813 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 12814 res.getIdentifier().add(parseIdentifier(xpp)); 12815 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 12816 res.setVersionElement(parseString(xpp)); 12817 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 12818 res.setNameElement(parseString(xpp)); 12819 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 12820 res.setTitleElement(parseString(xpp)); 12821 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 12822 res.setType(parseCodeableConcept(xpp)); 12823 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 12824 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 12825 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 12826 res.setExperimentalElement(parseBoolean(xpp)); 12827 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 12828 res.setDateElement(parseDateTime(xpp)); 12829 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 12830 res.setPublisherElement(parseString(xpp)); 12831 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 12832 res.setDescriptionElement(parseMarkdown(xpp)); 12833 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 12834 res.setPurposeElement(parseMarkdown(xpp)); 12835 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usage")) { 12836 res.setUsageElement(parseString(xpp)); 12837 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("approvalDate")) { 12838 res.setApprovalDateElement(parseDate(xpp)); 12839 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastReviewDate")) { 12840 res.setLastReviewDateElement(parseDate(xpp)); 12841 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectivePeriod")) { 12842 res.setEffectivePeriod(parsePeriod(xpp)); 12843 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 12844 res.getUseContext().add(parseUsageContext(xpp)); 12845 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 12846 res.getJurisdiction().add(parseCodeableConcept(xpp)); 12847 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { 12848 res.getTopic().add(parseCodeableConcept(xpp)); 12849 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contributor")) { 12850 res.getContributor().add(parseContributor(xpp)); 12851 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 12852 res.getContact().add(parseContactDetail(xpp)); 12853 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 12854 res.setCopyrightElement(parseMarkdown(xpp)); 12855 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedArtifact")) { 12856 res.getRelatedArtifact().add(parseRelatedArtifact(xpp)); 12857 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("library")) { 12858 res.getLibrary().add(parseReference(xpp)); 12859 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("goal")) { 12860 res.getGoal().add(parsePlanDefinitionPlanDefinitionGoalComponent(xpp, res)); 12861 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 12862 res.getAction().add(parsePlanDefinitionPlanDefinitionActionComponent(xpp, res)); 12863 } else if (!parseDomainResourceContent(eventType, xpp, res)) 12864 return false; 12865 return true; 12866 } 12867 12868 protected PlanDefinition.PlanDefinitionGoalComponent parsePlanDefinitionPlanDefinitionGoalComponent(XmlPullParser xpp, PlanDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 12869 PlanDefinition.PlanDefinitionGoalComponent res = new PlanDefinition.PlanDefinitionGoalComponent(); 12870 parseBackboneAttributes(xpp, res); 12871 next(xpp); 12872 int eventType = nextNoWhitespace(xpp); 12873 while (eventType != XmlPullParser.END_TAG) { 12874 if (!parsePlanDefinitionPlanDefinitionGoalComponentContent(eventType, xpp, owner, res)) 12875 unknownContent(xpp); 12876 eventType = nextNoWhitespace(xpp); 12877 } 12878 next(xpp); 12879 parseElementClose(res); 12880 return res; 12881 } 12882 12883 protected boolean parsePlanDefinitionPlanDefinitionGoalComponentContent(int eventType, XmlPullParser xpp, PlanDefinition owner, PlanDefinition.PlanDefinitionGoalComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12884 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 12885 res.setCategory(parseCodeableConcept(xpp)); 12886 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 12887 res.setDescription(parseCodeableConcept(xpp)); 12888 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 12889 res.setPriority(parseCodeableConcept(xpp)); 12890 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("start")) { 12891 res.setStart(parseCodeableConcept(xpp)); 12892 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("addresses")) { 12893 res.getAddresses().add(parseCodeableConcept(xpp)); 12894 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 12895 res.getDocumentation().add(parseRelatedArtifact(xpp)); 12896 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 12897 res.getTarget().add(parsePlanDefinitionPlanDefinitionGoalTargetComponent(xpp, owner)); 12898 } else if (!parseBackboneContent(eventType, xpp, res)) 12899 return false; 12900 return true; 12901 } 12902 12903 protected PlanDefinition.PlanDefinitionGoalTargetComponent parsePlanDefinitionPlanDefinitionGoalTargetComponent(XmlPullParser xpp, PlanDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 12904 PlanDefinition.PlanDefinitionGoalTargetComponent res = new PlanDefinition.PlanDefinitionGoalTargetComponent(); 12905 parseBackboneAttributes(xpp, res); 12906 next(xpp); 12907 int eventType = nextNoWhitespace(xpp); 12908 while (eventType != XmlPullParser.END_TAG) { 12909 if (!parsePlanDefinitionPlanDefinitionGoalTargetComponentContent(eventType, xpp, owner, res)) 12910 unknownContent(xpp); 12911 eventType = nextNoWhitespace(xpp); 12912 } 12913 next(xpp); 12914 parseElementClose(res); 12915 return res; 12916 } 12917 12918 protected boolean parsePlanDefinitionPlanDefinitionGoalTargetComponentContent(int eventType, XmlPullParser xpp, PlanDefinition owner, PlanDefinition.PlanDefinitionGoalTargetComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12919 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("measure")) { 12920 res.setMeasure(parseCodeableConcept(xpp)); 12921 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "detail")) { 12922 res.setDetail(parseType("detail", xpp)); 12923 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("due")) { 12924 res.setDue(parseDuration(xpp)); 12925 } else if (!parseBackboneContent(eventType, xpp, res)) 12926 return false; 12927 return true; 12928 } 12929 12930 protected PlanDefinition.PlanDefinitionActionComponent parsePlanDefinitionPlanDefinitionActionComponent(XmlPullParser xpp, PlanDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 12931 PlanDefinition.PlanDefinitionActionComponent res = new PlanDefinition.PlanDefinitionActionComponent(); 12932 parseBackboneAttributes(xpp, res); 12933 next(xpp); 12934 int eventType = nextNoWhitespace(xpp); 12935 while (eventType != XmlPullParser.END_TAG) { 12936 if (!parsePlanDefinitionPlanDefinitionActionComponentContent(eventType, xpp, owner, res)) 12937 unknownContent(xpp); 12938 eventType = nextNoWhitespace(xpp); 12939 } 12940 next(xpp); 12941 parseElementClose(res); 12942 return res; 12943 } 12944 12945 protected boolean parsePlanDefinitionPlanDefinitionActionComponentContent(int eventType, XmlPullParser xpp, PlanDefinition owner, PlanDefinition.PlanDefinitionActionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12946 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("label")) { 12947 res.setLabelElement(parseString(xpp)); 12948 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 12949 res.setTitleElement(parseString(xpp)); 12950 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 12951 res.setDescriptionElement(parseString(xpp)); 12952 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("textEquivalent")) { 12953 res.setTextEquivalentElement(parseString(xpp)); 12954 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 12955 res.getCode().add(parseCodeableConcept(xpp)); 12956 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 12957 res.getReason().add(parseCodeableConcept(xpp)); 12958 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 12959 res.getDocumentation().add(parseRelatedArtifact(xpp)); 12960 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("goalId")) { 12961 res.getGoalId().add(parseId(xpp)); 12962 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("triggerDefinition")) { 12963 res.getTriggerDefinition().add(parseTriggerDefinition(xpp)); 12964 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 12965 res.getCondition().add(parsePlanDefinitionPlanDefinitionActionConditionComponent(xpp, owner)); 12966 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("input")) { 12967 res.getInput().add(parseDataRequirement(xpp)); 12968 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("output")) { 12969 res.getOutput().add(parseDataRequirement(xpp)); 12970 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedAction")) { 12971 res.getRelatedAction().add(parsePlanDefinitionPlanDefinitionActionRelatedActionComponent(xpp, owner)); 12972 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "timing")) { 12973 res.setTiming(parseType("timing", xpp)); 12974 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 12975 res.getParticipant().add(parsePlanDefinitionPlanDefinitionActionParticipantComponent(xpp, owner)); 12976 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 12977 res.setType(parseCoding(xpp)); 12978 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("groupingBehavior")) { 12979 res.setGroupingBehaviorElement(parseEnumeration(xpp, PlanDefinition.ActionGroupingBehavior.NULL, new PlanDefinition.ActionGroupingBehaviorEnumFactory())); 12980 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("selectionBehavior")) { 12981 res.setSelectionBehaviorElement(parseEnumeration(xpp, PlanDefinition.ActionSelectionBehavior.NULL, new PlanDefinition.ActionSelectionBehaviorEnumFactory())); 12982 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requiredBehavior")) { 12983 res.setRequiredBehaviorElement(parseEnumeration(xpp, PlanDefinition.ActionRequiredBehavior.NULL, new PlanDefinition.ActionRequiredBehaviorEnumFactory())); 12984 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("precheckBehavior")) { 12985 res.setPrecheckBehaviorElement(parseEnumeration(xpp, PlanDefinition.ActionPrecheckBehavior.NULL, new PlanDefinition.ActionPrecheckBehaviorEnumFactory())); 12986 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("cardinalityBehavior")) { 12987 res.setCardinalityBehaviorElement(parseEnumeration(xpp, PlanDefinition.ActionCardinalityBehavior.NULL, new PlanDefinition.ActionCardinalityBehaviorEnumFactory())); 12988 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 12989 res.setDefinition(parseReference(xpp)); 12990 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("transform")) { 12991 res.setTransform(parseReference(xpp)); 12992 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dynamicValue")) { 12993 res.getDynamicValue().add(parsePlanDefinitionPlanDefinitionActionDynamicValueComponent(xpp, owner)); 12994 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 12995 res.getAction().add(parsePlanDefinitionPlanDefinitionActionComponent(xpp, owner)); 12996 } else if (!parseBackboneContent(eventType, xpp, res)) 12997 return false; 12998 return true; 12999 } 13000 13001 protected PlanDefinition.PlanDefinitionActionConditionComponent parsePlanDefinitionPlanDefinitionActionConditionComponent(XmlPullParser xpp, PlanDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 13002 PlanDefinition.PlanDefinitionActionConditionComponent res = new PlanDefinition.PlanDefinitionActionConditionComponent(); 13003 parseBackboneAttributes(xpp, res); 13004 next(xpp); 13005 int eventType = nextNoWhitespace(xpp); 13006 while (eventType != XmlPullParser.END_TAG) { 13007 if (!parsePlanDefinitionPlanDefinitionActionConditionComponentContent(eventType, xpp, owner, res)) 13008 unknownContent(xpp); 13009 eventType = nextNoWhitespace(xpp); 13010 } 13011 next(xpp); 13012 parseElementClose(res); 13013 return res; 13014 } 13015 13016 protected boolean parsePlanDefinitionPlanDefinitionActionConditionComponentContent(int eventType, XmlPullParser xpp, PlanDefinition owner, PlanDefinition.PlanDefinitionActionConditionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13017 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 13018 res.setKindElement(parseEnumeration(xpp, PlanDefinition.ActionConditionKind.NULL, new PlanDefinition.ActionConditionKindEnumFactory())); 13019 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 13020 res.setDescriptionElement(parseString(xpp)); 13021 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 13022 res.setLanguageElement(parseString(xpp)); 13023 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 13024 res.setExpressionElement(parseString(xpp)); 13025 } else if (!parseBackboneContent(eventType, xpp, res)) 13026 return false; 13027 return true; 13028 } 13029 13030 protected PlanDefinition.PlanDefinitionActionRelatedActionComponent parsePlanDefinitionPlanDefinitionActionRelatedActionComponent(XmlPullParser xpp, PlanDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 13031 PlanDefinition.PlanDefinitionActionRelatedActionComponent res = new PlanDefinition.PlanDefinitionActionRelatedActionComponent(); 13032 parseBackboneAttributes(xpp, res); 13033 next(xpp); 13034 int eventType = nextNoWhitespace(xpp); 13035 while (eventType != XmlPullParser.END_TAG) { 13036 if (!parsePlanDefinitionPlanDefinitionActionRelatedActionComponentContent(eventType, xpp, owner, res)) 13037 unknownContent(xpp); 13038 eventType = nextNoWhitespace(xpp); 13039 } 13040 next(xpp); 13041 parseElementClose(res); 13042 return res; 13043 } 13044 13045 protected boolean parsePlanDefinitionPlanDefinitionActionRelatedActionComponentContent(int eventType, XmlPullParser xpp, PlanDefinition owner, PlanDefinition.PlanDefinitionActionRelatedActionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13046 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actionId")) { 13047 res.setActionIdElement(parseId(xpp)); 13048 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 13049 res.setRelationshipElement(parseEnumeration(xpp, PlanDefinition.ActionRelationshipType.NULL, new PlanDefinition.ActionRelationshipTypeEnumFactory())); 13050 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "offset")) { 13051 res.setOffset(parseType("offset", xpp)); 13052 } else if (!parseBackboneContent(eventType, xpp, res)) 13053 return false; 13054 return true; 13055 } 13056 13057 protected PlanDefinition.PlanDefinitionActionParticipantComponent parsePlanDefinitionPlanDefinitionActionParticipantComponent(XmlPullParser xpp, PlanDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 13058 PlanDefinition.PlanDefinitionActionParticipantComponent res = new PlanDefinition.PlanDefinitionActionParticipantComponent(); 13059 parseBackboneAttributes(xpp, res); 13060 next(xpp); 13061 int eventType = nextNoWhitespace(xpp); 13062 while (eventType != XmlPullParser.END_TAG) { 13063 if (!parsePlanDefinitionPlanDefinitionActionParticipantComponentContent(eventType, xpp, owner, res)) 13064 unknownContent(xpp); 13065 eventType = nextNoWhitespace(xpp); 13066 } 13067 next(xpp); 13068 parseElementClose(res); 13069 return res; 13070 } 13071 13072 protected boolean parsePlanDefinitionPlanDefinitionActionParticipantComponentContent(int eventType, XmlPullParser xpp, PlanDefinition owner, PlanDefinition.PlanDefinitionActionParticipantComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13073 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 13074 res.setTypeElement(parseEnumeration(xpp, PlanDefinition.ActionParticipantType.NULL, new PlanDefinition.ActionParticipantTypeEnumFactory())); 13075 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 13076 res.setRole(parseCodeableConcept(xpp)); 13077 } else if (!parseBackboneContent(eventType, xpp, res)) 13078 return false; 13079 return true; 13080 } 13081 13082 protected PlanDefinition.PlanDefinitionActionDynamicValueComponent parsePlanDefinitionPlanDefinitionActionDynamicValueComponent(XmlPullParser xpp, PlanDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 13083 PlanDefinition.PlanDefinitionActionDynamicValueComponent res = new PlanDefinition.PlanDefinitionActionDynamicValueComponent(); 13084 parseBackboneAttributes(xpp, res); 13085 next(xpp); 13086 int eventType = nextNoWhitespace(xpp); 13087 while (eventType != XmlPullParser.END_TAG) { 13088 if (!parsePlanDefinitionPlanDefinitionActionDynamicValueComponentContent(eventType, xpp, owner, res)) 13089 unknownContent(xpp); 13090 eventType = nextNoWhitespace(xpp); 13091 } 13092 next(xpp); 13093 parseElementClose(res); 13094 return res; 13095 } 13096 13097 protected boolean parsePlanDefinitionPlanDefinitionActionDynamicValueComponentContent(int eventType, XmlPullParser xpp, PlanDefinition owner, PlanDefinition.PlanDefinitionActionDynamicValueComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13098 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 13099 res.setDescriptionElement(parseString(xpp)); 13100 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 13101 res.setPathElement(parseString(xpp)); 13102 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 13103 res.setLanguageElement(parseString(xpp)); 13104 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 13105 res.setExpressionElement(parseString(xpp)); 13106 } else if (!parseBackboneContent(eventType, xpp, res)) 13107 return false; 13108 return true; 13109 } 13110 13111 protected Practitioner parsePractitioner(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13112 Practitioner res = new Practitioner(); 13113 parseDomainResourceAttributes(xpp, res); 13114 next(xpp); 13115 int eventType = nextNoWhitespace(xpp); 13116 while (eventType != XmlPullParser.END_TAG) { 13117 if (!parsePractitionerContent(eventType, xpp, res)) 13118 unknownContent(xpp); 13119 eventType = nextNoWhitespace(xpp); 13120 } 13121 next(xpp); 13122 parseElementClose(res); 13123 return res; 13124 } 13125 13126 protected boolean parsePractitionerContent(int eventType, XmlPullParser xpp, Practitioner res) throws XmlPullParserException, IOException, FHIRFormatError { 13127 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 13128 res.getIdentifier().add(parseIdentifier(xpp)); 13129 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 13130 res.setActiveElement(parseBoolean(xpp)); 13131 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 13132 res.getName().add(parseHumanName(xpp)); 13133 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 13134 res.getTelecom().add(parseContactPoint(xpp)); 13135 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 13136 res.getAddress().add(parseAddress(xpp)); 13137 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gender")) { 13138 res.setGenderElement(parseEnumeration(xpp, Enumerations.AdministrativeGender.NULL, new Enumerations.AdministrativeGenderEnumFactory())); 13139 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("birthDate")) { 13140 res.setBirthDateElement(parseDate(xpp)); 13141 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("photo")) { 13142 res.getPhoto().add(parseAttachment(xpp)); 13143 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("qualification")) { 13144 res.getQualification().add(parsePractitionerPractitionerQualificationComponent(xpp, res)); 13145 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("communication")) { 13146 res.getCommunication().add(parseCodeableConcept(xpp)); 13147 } else if (!parseDomainResourceContent(eventType, xpp, res)) 13148 return false; 13149 return true; 13150 } 13151 13152 protected Practitioner.PractitionerQualificationComponent parsePractitionerPractitionerQualificationComponent(XmlPullParser xpp, Practitioner owner) throws XmlPullParserException, IOException, FHIRFormatError { 13153 Practitioner.PractitionerQualificationComponent res = new Practitioner.PractitionerQualificationComponent(); 13154 parseBackboneAttributes(xpp, res); 13155 next(xpp); 13156 int eventType = nextNoWhitespace(xpp); 13157 while (eventType != XmlPullParser.END_TAG) { 13158 if (!parsePractitionerPractitionerQualificationComponentContent(eventType, xpp, owner, res)) 13159 unknownContent(xpp); 13160 eventType = nextNoWhitespace(xpp); 13161 } 13162 next(xpp); 13163 parseElementClose(res); 13164 return res; 13165 } 13166 13167 protected boolean parsePractitionerPractitionerQualificationComponentContent(int eventType, XmlPullParser xpp, Practitioner owner, Practitioner.PractitionerQualificationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13168 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 13169 res.getIdentifier().add(parseIdentifier(xpp)); 13170 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 13171 res.setCode(parseCodeableConcept(xpp)); 13172 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 13173 res.setPeriod(parsePeriod(xpp)); 13174 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issuer")) { 13175 res.setIssuer(parseReference(xpp)); 13176 } else if (!parseBackboneContent(eventType, xpp, res)) 13177 return false; 13178 return true; 13179 } 13180 13181 protected PractitionerRole parsePractitionerRole(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13182 PractitionerRole res = new PractitionerRole(); 13183 parseDomainResourceAttributes(xpp, res); 13184 next(xpp); 13185 int eventType = nextNoWhitespace(xpp); 13186 while (eventType != XmlPullParser.END_TAG) { 13187 if (!parsePractitionerRoleContent(eventType, xpp, res)) 13188 unknownContent(xpp); 13189 eventType = nextNoWhitespace(xpp); 13190 } 13191 next(xpp); 13192 parseElementClose(res); 13193 return res; 13194 } 13195 13196 protected boolean parsePractitionerRoleContent(int eventType, XmlPullParser xpp, PractitionerRole res) throws XmlPullParserException, IOException, FHIRFormatError { 13197 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 13198 res.getIdentifier().add(parseIdentifier(xpp)); 13199 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 13200 res.setActiveElement(parseBoolean(xpp)); 13201 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 13202 res.setPeriod(parsePeriod(xpp)); 13203 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("practitioner")) { 13204 res.setPractitioner(parseReference(xpp)); 13205 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 13206 res.setOrganization(parseReference(xpp)); 13207 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 13208 res.getCode().add(parseCodeableConcept(xpp)); 13209 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialty")) { 13210 res.getSpecialty().add(parseCodeableConcept(xpp)); 13211 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 13212 res.getLocation().add(parseReference(xpp)); 13213 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("healthcareService")) { 13214 res.getHealthcareService().add(parseReference(xpp)); 13215 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 13216 res.getTelecom().add(parseContactPoint(xpp)); 13217 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availableTime")) { 13218 res.getAvailableTime().add(parsePractitionerRolePractitionerRoleAvailableTimeComponent(xpp, res)); 13219 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notAvailable")) { 13220 res.getNotAvailable().add(parsePractitionerRolePractitionerRoleNotAvailableComponent(xpp, res)); 13221 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availabilityExceptions")) { 13222 res.setAvailabilityExceptionsElement(parseString(xpp)); 13223 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 13224 res.getEndpoint().add(parseReference(xpp)); 13225 } else if (!parseDomainResourceContent(eventType, xpp, res)) 13226 return false; 13227 return true; 13228 } 13229 13230 protected PractitionerRole.PractitionerRoleAvailableTimeComponent parsePractitionerRolePractitionerRoleAvailableTimeComponent(XmlPullParser xpp, PractitionerRole owner) throws XmlPullParserException, IOException, FHIRFormatError { 13231 PractitionerRole.PractitionerRoleAvailableTimeComponent res = new PractitionerRole.PractitionerRoleAvailableTimeComponent(); 13232 parseBackboneAttributes(xpp, res); 13233 next(xpp); 13234 int eventType = nextNoWhitespace(xpp); 13235 while (eventType != XmlPullParser.END_TAG) { 13236 if (!parsePractitionerRolePractitionerRoleAvailableTimeComponentContent(eventType, xpp, owner, res)) 13237 unknownContent(xpp); 13238 eventType = nextNoWhitespace(xpp); 13239 } 13240 next(xpp); 13241 parseElementClose(res); 13242 return res; 13243 } 13244 13245 protected boolean parsePractitionerRolePractitionerRoleAvailableTimeComponentContent(int eventType, XmlPullParser xpp, PractitionerRole owner, PractitionerRole.PractitionerRoleAvailableTimeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13246 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("daysOfWeek")) { 13247 res.getDaysOfWeek().add(parseEnumeration(xpp, PractitionerRole.DaysOfWeek.NULL, new PractitionerRole.DaysOfWeekEnumFactory())); 13248 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("allDay")) { 13249 res.setAllDayElement(parseBoolean(xpp)); 13250 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availableStartTime")) { 13251 res.setAvailableStartTimeElement(parseTime(xpp)); 13252 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availableEndTime")) { 13253 res.setAvailableEndTimeElement(parseTime(xpp)); 13254 } else if (!parseBackboneContent(eventType, xpp, res)) 13255 return false; 13256 return true; 13257 } 13258 13259 protected PractitionerRole.PractitionerRoleNotAvailableComponent parsePractitionerRolePractitionerRoleNotAvailableComponent(XmlPullParser xpp, PractitionerRole owner) throws XmlPullParserException, IOException, FHIRFormatError { 13260 PractitionerRole.PractitionerRoleNotAvailableComponent res = new PractitionerRole.PractitionerRoleNotAvailableComponent(); 13261 parseBackboneAttributes(xpp, res); 13262 next(xpp); 13263 int eventType = nextNoWhitespace(xpp); 13264 while (eventType != XmlPullParser.END_TAG) { 13265 if (!parsePractitionerRolePractitionerRoleNotAvailableComponentContent(eventType, xpp, owner, res)) 13266 unknownContent(xpp); 13267 eventType = nextNoWhitespace(xpp); 13268 } 13269 next(xpp); 13270 parseElementClose(res); 13271 return res; 13272 } 13273 13274 protected boolean parsePractitionerRolePractitionerRoleNotAvailableComponentContent(int eventType, XmlPullParser xpp, PractitionerRole owner, PractitionerRole.PractitionerRoleNotAvailableComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13275 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 13276 res.setDescriptionElement(parseString(xpp)); 13277 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("during")) { 13278 res.setDuring(parsePeriod(xpp)); 13279 } else if (!parseBackboneContent(eventType, xpp, res)) 13280 return false; 13281 return true; 13282 } 13283 13284 protected Procedure parseProcedure(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13285 Procedure res = new Procedure(); 13286 parseDomainResourceAttributes(xpp, res); 13287 next(xpp); 13288 int eventType = nextNoWhitespace(xpp); 13289 while (eventType != XmlPullParser.END_TAG) { 13290 if (!parseProcedureContent(eventType, xpp, res)) 13291 unknownContent(xpp); 13292 eventType = nextNoWhitespace(xpp); 13293 } 13294 next(xpp); 13295 parseElementClose(res); 13296 return res; 13297 } 13298 13299 protected boolean parseProcedureContent(int eventType, XmlPullParser xpp, Procedure res) throws XmlPullParserException, IOException, FHIRFormatError { 13300 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 13301 res.getIdentifier().add(parseIdentifier(xpp)); 13302 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 13303 res.getDefinition().add(parseReference(xpp)); 13304 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 13305 res.getBasedOn().add(parseReference(xpp)); 13306 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 13307 res.getPartOf().add(parseReference(xpp)); 13308 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 13309 res.setStatusElement(parseEnumeration(xpp, Procedure.ProcedureStatus.NULL, new Procedure.ProcedureStatusEnumFactory())); 13310 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notDone")) { 13311 res.setNotDoneElement(parseBoolean(xpp)); 13312 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notDoneReason")) { 13313 res.setNotDoneReason(parseCodeableConcept(xpp)); 13314 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 13315 res.setCategory(parseCodeableConcept(xpp)); 13316 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 13317 res.setCode(parseCodeableConcept(xpp)); 13318 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 13319 res.setSubject(parseReference(xpp)); 13320 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 13321 res.setContext(parseReference(xpp)); 13322 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "performed")) { 13323 res.setPerformed(parseType("performed", xpp)); 13324 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 13325 res.getPerformer().add(parseProcedureProcedurePerformerComponent(xpp, res)); 13326 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 13327 res.setLocation(parseReference(xpp)); 13328 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonCode")) { 13329 res.getReasonCode().add(parseCodeableConcept(xpp)); 13330 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonReference")) { 13331 res.getReasonReference().add(parseReference(xpp)); 13332 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 13333 res.getBodySite().add(parseCodeableConcept(xpp)); 13334 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 13335 res.setOutcome(parseCodeableConcept(xpp)); 13336 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("report")) { 13337 res.getReport().add(parseReference(xpp)); 13338 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("complication")) { 13339 res.getComplication().add(parseCodeableConcept(xpp)); 13340 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("complicationDetail")) { 13341 res.getComplicationDetail().add(parseReference(xpp)); 13342 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("followUp")) { 13343 res.getFollowUp().add(parseCodeableConcept(xpp)); 13344 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 13345 res.getNote().add(parseAnnotation(xpp)); 13346 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focalDevice")) { 13347 res.getFocalDevice().add(parseProcedureProcedureFocalDeviceComponent(xpp, res)); 13348 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usedReference")) { 13349 res.getUsedReference().add(parseReference(xpp)); 13350 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usedCode")) { 13351 res.getUsedCode().add(parseCodeableConcept(xpp)); 13352 } else if (!parseDomainResourceContent(eventType, xpp, res)) 13353 return false; 13354 return true; 13355 } 13356 13357 protected Procedure.ProcedurePerformerComponent parseProcedureProcedurePerformerComponent(XmlPullParser xpp, Procedure owner) throws XmlPullParserException, IOException, FHIRFormatError { 13358 Procedure.ProcedurePerformerComponent res = new Procedure.ProcedurePerformerComponent(); 13359 parseBackboneAttributes(xpp, res); 13360 next(xpp); 13361 int eventType = nextNoWhitespace(xpp); 13362 while (eventType != XmlPullParser.END_TAG) { 13363 if (!parseProcedureProcedurePerformerComponentContent(eventType, xpp, owner, res)) 13364 unknownContent(xpp); 13365 eventType = nextNoWhitespace(xpp); 13366 } 13367 next(xpp); 13368 parseElementClose(res); 13369 return res; 13370 } 13371 13372 protected boolean parseProcedureProcedurePerformerComponentContent(int eventType, XmlPullParser xpp, Procedure owner, Procedure.ProcedurePerformerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13373 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 13374 res.setRole(parseCodeableConcept(xpp)); 13375 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 13376 res.setActor(parseReference(xpp)); 13377 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onBehalfOf")) { 13378 res.setOnBehalfOf(parseReference(xpp)); 13379 } else if (!parseBackboneContent(eventType, xpp, res)) 13380 return false; 13381 return true; 13382 } 13383 13384 protected Procedure.ProcedureFocalDeviceComponent parseProcedureProcedureFocalDeviceComponent(XmlPullParser xpp, Procedure owner) throws XmlPullParserException, IOException, FHIRFormatError { 13385 Procedure.ProcedureFocalDeviceComponent res = new Procedure.ProcedureFocalDeviceComponent(); 13386 parseBackboneAttributes(xpp, res); 13387 next(xpp); 13388 int eventType = nextNoWhitespace(xpp); 13389 while (eventType != XmlPullParser.END_TAG) { 13390 if (!parseProcedureProcedureFocalDeviceComponentContent(eventType, xpp, owner, res)) 13391 unknownContent(xpp); 13392 eventType = nextNoWhitespace(xpp); 13393 } 13394 next(xpp); 13395 parseElementClose(res); 13396 return res; 13397 } 13398 13399 protected boolean parseProcedureProcedureFocalDeviceComponentContent(int eventType, XmlPullParser xpp, Procedure owner, Procedure.ProcedureFocalDeviceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13400 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 13401 res.setAction(parseCodeableConcept(xpp)); 13402 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manipulated")) { 13403 res.setManipulated(parseReference(xpp)); 13404 } else if (!parseBackboneContent(eventType, xpp, res)) 13405 return false; 13406 return true; 13407 } 13408 13409 protected ProcedureRequest parseProcedureRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13410 ProcedureRequest res = new ProcedureRequest(); 13411 parseDomainResourceAttributes(xpp, res); 13412 next(xpp); 13413 int eventType = nextNoWhitespace(xpp); 13414 while (eventType != XmlPullParser.END_TAG) { 13415 if (!parseProcedureRequestContent(eventType, xpp, res)) 13416 unknownContent(xpp); 13417 eventType = nextNoWhitespace(xpp); 13418 } 13419 next(xpp); 13420 parseElementClose(res); 13421 return res; 13422 } 13423 13424 protected boolean parseProcedureRequestContent(int eventType, XmlPullParser xpp, ProcedureRequest res) throws XmlPullParserException, IOException, FHIRFormatError { 13425 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 13426 res.getIdentifier().add(parseIdentifier(xpp)); 13427 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 13428 res.getDefinition().add(parseReference(xpp)); 13429 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 13430 res.getBasedOn().add(parseReference(xpp)); 13431 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("replaces")) { 13432 res.getReplaces().add(parseReference(xpp)); 13433 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requisition")) { 13434 res.setRequisition(parseIdentifier(xpp)); 13435 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 13436 res.setStatusElement(parseEnumeration(xpp, ProcedureRequest.ProcedureRequestStatus.NULL, new ProcedureRequest.ProcedureRequestStatusEnumFactory())); 13437 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intent")) { 13438 res.setIntentElement(parseEnumeration(xpp, ProcedureRequest.ProcedureRequestIntent.NULL, new ProcedureRequest.ProcedureRequestIntentEnumFactory())); 13439 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 13440 res.setPriorityElement(parseEnumeration(xpp, ProcedureRequest.ProcedureRequestPriority.NULL, new ProcedureRequest.ProcedureRequestPriorityEnumFactory())); 13441 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doNotPerform")) { 13442 res.setDoNotPerformElement(parseBoolean(xpp)); 13443 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 13444 res.getCategory().add(parseCodeableConcept(xpp)); 13445 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 13446 res.setCode(parseCodeableConcept(xpp)); 13447 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 13448 res.setSubject(parseReference(xpp)); 13449 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 13450 res.setContext(parseReference(xpp)); 13451 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "occurrence")) { 13452 res.setOccurrence(parseType("occurrence", xpp)); 13453 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "asNeeded")) { 13454 res.setAsNeeded(parseType("asNeeded", xpp)); 13455 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authoredOn")) { 13456 res.setAuthoredOnElement(parseDateTime(xpp)); 13457 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requester")) { 13458 res.setRequester(parseProcedureRequestProcedureRequestRequesterComponent(xpp, res)); 13459 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performerType")) { 13460 res.setPerformerType(parseCodeableConcept(xpp)); 13461 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 13462 res.setPerformer(parseReference(xpp)); 13463 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonCode")) { 13464 res.getReasonCode().add(parseCodeableConcept(xpp)); 13465 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonReference")) { 13466 res.getReasonReference().add(parseReference(xpp)); 13467 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInfo")) { 13468 res.getSupportingInfo().add(parseReference(xpp)); 13469 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specimen")) { 13470 res.getSpecimen().add(parseReference(xpp)); 13471 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 13472 res.getBodySite().add(parseCodeableConcept(xpp)); 13473 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 13474 res.getNote().add(parseAnnotation(xpp)); 13475 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relevantHistory")) { 13476 res.getRelevantHistory().add(parseReference(xpp)); 13477 } else if (!parseDomainResourceContent(eventType, xpp, res)) 13478 return false; 13479 return true; 13480 } 13481 13482 protected ProcedureRequest.ProcedureRequestRequesterComponent parseProcedureRequestProcedureRequestRequesterComponent(XmlPullParser xpp, ProcedureRequest owner) throws XmlPullParserException, IOException, FHIRFormatError { 13483 ProcedureRequest.ProcedureRequestRequesterComponent res = new ProcedureRequest.ProcedureRequestRequesterComponent(); 13484 parseBackboneAttributes(xpp, res); 13485 next(xpp); 13486 int eventType = nextNoWhitespace(xpp); 13487 while (eventType != XmlPullParser.END_TAG) { 13488 if (!parseProcedureRequestProcedureRequestRequesterComponentContent(eventType, xpp, owner, res)) 13489 unknownContent(xpp); 13490 eventType = nextNoWhitespace(xpp); 13491 } 13492 next(xpp); 13493 parseElementClose(res); 13494 return res; 13495 } 13496 13497 protected boolean parseProcedureRequestProcedureRequestRequesterComponentContent(int eventType, XmlPullParser xpp, ProcedureRequest owner, ProcedureRequest.ProcedureRequestRequesterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13498 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { 13499 res.setAgent(parseReference(xpp)); 13500 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onBehalfOf")) { 13501 res.setOnBehalfOf(parseReference(xpp)); 13502 } else if (!parseBackboneContent(eventType, xpp, res)) 13503 return false; 13504 return true; 13505 } 13506 13507 protected ProcessRequest parseProcessRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13508 ProcessRequest res = new ProcessRequest(); 13509 parseDomainResourceAttributes(xpp, res); 13510 next(xpp); 13511 int eventType = nextNoWhitespace(xpp); 13512 while (eventType != XmlPullParser.END_TAG) { 13513 if (!parseProcessRequestContent(eventType, xpp, res)) 13514 unknownContent(xpp); 13515 eventType = nextNoWhitespace(xpp); 13516 } 13517 next(xpp); 13518 parseElementClose(res); 13519 return res; 13520 } 13521 13522 protected boolean parseProcessRequestContent(int eventType, XmlPullParser xpp, ProcessRequest res) throws XmlPullParserException, IOException, FHIRFormatError { 13523 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 13524 res.getIdentifier().add(parseIdentifier(xpp)); 13525 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 13526 res.setStatusElement(parseEnumeration(xpp, ProcessRequest.ProcessRequestStatus.NULL, new ProcessRequest.ProcessRequestStatusEnumFactory())); 13527 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 13528 res.setActionElement(parseEnumeration(xpp, ProcessRequest.ActionList.NULL, new ProcessRequest.ActionListEnumFactory())); 13529 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 13530 res.setTarget(parseReference(xpp)); 13531 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 13532 res.setCreatedElement(parseDateTime(xpp)); 13533 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provider")) { 13534 res.setProvider(parseReference(xpp)); 13535 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 13536 res.setOrganization(parseReference(xpp)); 13537 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 13538 res.setRequest(parseReference(xpp)); 13539 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("response")) { 13540 res.setResponse(parseReference(xpp)); 13541 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("nullify")) { 13542 res.setNullifyElement(parseBoolean(xpp)); 13543 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 13544 res.setReferenceElement(parseString(xpp)); 13545 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 13546 res.getItem().add(parseProcessRequestItemsComponent(xpp, res)); 13547 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("include")) { 13548 res.getInclude().add(parseString(xpp)); 13549 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exclude")) { 13550 res.getExclude().add(parseString(xpp)); 13551 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 13552 res.setPeriod(parsePeriod(xpp)); 13553 } else if (!parseDomainResourceContent(eventType, xpp, res)) 13554 return false; 13555 return true; 13556 } 13557 13558 protected ProcessRequest.ItemsComponent parseProcessRequestItemsComponent(XmlPullParser xpp, ProcessRequest owner) throws XmlPullParserException, IOException, FHIRFormatError { 13559 ProcessRequest.ItemsComponent res = new ProcessRequest.ItemsComponent(); 13560 parseBackboneAttributes(xpp, res); 13561 next(xpp); 13562 int eventType = nextNoWhitespace(xpp); 13563 while (eventType != XmlPullParser.END_TAG) { 13564 if (!parseProcessRequestItemsComponentContent(eventType, xpp, owner, res)) 13565 unknownContent(xpp); 13566 eventType = nextNoWhitespace(xpp); 13567 } 13568 next(xpp); 13569 parseElementClose(res); 13570 return res; 13571 } 13572 13573 protected boolean parseProcessRequestItemsComponentContent(int eventType, XmlPullParser xpp, ProcessRequest owner, ProcessRequest.ItemsComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13574 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequenceLinkId")) { 13575 res.setSequenceLinkIdElement(parseInteger(xpp)); 13576 } else if (!parseBackboneContent(eventType, xpp, res)) 13577 return false; 13578 return true; 13579 } 13580 13581 protected ProcessResponse parseProcessResponse(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13582 ProcessResponse res = new ProcessResponse(); 13583 parseDomainResourceAttributes(xpp, res); 13584 next(xpp); 13585 int eventType = nextNoWhitespace(xpp); 13586 while (eventType != XmlPullParser.END_TAG) { 13587 if (!parseProcessResponseContent(eventType, xpp, res)) 13588 unknownContent(xpp); 13589 eventType = nextNoWhitespace(xpp); 13590 } 13591 next(xpp); 13592 parseElementClose(res); 13593 return res; 13594 } 13595 13596 protected boolean parseProcessResponseContent(int eventType, XmlPullParser xpp, ProcessResponse res) throws XmlPullParserException, IOException, FHIRFormatError { 13597 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 13598 res.getIdentifier().add(parseIdentifier(xpp)); 13599 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 13600 res.setStatusElement(parseEnumeration(xpp, ProcessResponse.ProcessResponseStatus.NULL, new ProcessResponse.ProcessResponseStatusEnumFactory())); 13601 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 13602 res.setCreatedElement(parseDateTime(xpp)); 13603 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 13604 res.setOrganization(parseReference(xpp)); 13605 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 13606 res.setRequest(parseReference(xpp)); 13607 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 13608 res.setOutcome(parseCodeableConcept(xpp)); 13609 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disposition")) { 13610 res.setDispositionElement(parseString(xpp)); 13611 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestProvider")) { 13612 res.setRequestProvider(parseReference(xpp)); 13613 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestOrganization")) { 13614 res.setRequestOrganization(parseReference(xpp)); 13615 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("form")) { 13616 res.setForm(parseCodeableConcept(xpp)); 13617 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("processNote")) { 13618 res.getProcessNote().add(parseProcessResponseProcessResponseProcessNoteComponent(xpp, res)); 13619 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("error")) { 13620 res.getError().add(parseCodeableConcept(xpp)); 13621 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("communicationRequest")) { 13622 res.getCommunicationRequest().add(parseReference(xpp)); 13623 } else if (!parseDomainResourceContent(eventType, xpp, res)) 13624 return false; 13625 return true; 13626 } 13627 13628 protected ProcessResponse.ProcessResponseProcessNoteComponent parseProcessResponseProcessResponseProcessNoteComponent(XmlPullParser xpp, ProcessResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 13629 ProcessResponse.ProcessResponseProcessNoteComponent res = new ProcessResponse.ProcessResponseProcessNoteComponent(); 13630 parseBackboneAttributes(xpp, res); 13631 next(xpp); 13632 int eventType = nextNoWhitespace(xpp); 13633 while (eventType != XmlPullParser.END_TAG) { 13634 if (!parseProcessResponseProcessResponseProcessNoteComponentContent(eventType, xpp, owner, res)) 13635 unknownContent(xpp); 13636 eventType = nextNoWhitespace(xpp); 13637 } 13638 next(xpp); 13639 parseElementClose(res); 13640 return res; 13641 } 13642 13643 protected boolean parseProcessResponseProcessResponseProcessNoteComponentContent(int eventType, XmlPullParser xpp, ProcessResponse owner, ProcessResponse.ProcessResponseProcessNoteComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13644 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 13645 res.setType(parseCodeableConcept(xpp)); 13646 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 13647 res.setTextElement(parseString(xpp)); 13648 } else if (!parseBackboneContent(eventType, xpp, res)) 13649 return false; 13650 return true; 13651 } 13652 13653 protected Provenance parseProvenance(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13654 Provenance res = new Provenance(); 13655 parseDomainResourceAttributes(xpp, res); 13656 next(xpp); 13657 int eventType = nextNoWhitespace(xpp); 13658 while (eventType != XmlPullParser.END_TAG) { 13659 if (!parseProvenanceContent(eventType, xpp, res)) 13660 unknownContent(xpp); 13661 eventType = nextNoWhitespace(xpp); 13662 } 13663 next(xpp); 13664 parseElementClose(res); 13665 return res; 13666 } 13667 13668 protected boolean parseProvenanceContent(int eventType, XmlPullParser xpp, Provenance res) throws XmlPullParserException, IOException, FHIRFormatError { 13669 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 13670 res.getTarget().add(parseReference(xpp)); 13671 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 13672 res.setPeriod(parsePeriod(xpp)); 13673 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recorded")) { 13674 res.setRecordedElement(parseInstant(xpp)); 13675 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("policy")) { 13676 res.getPolicy().add(parseUri(xpp)); 13677 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 13678 res.setLocation(parseReference(xpp)); 13679 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 13680 res.getReason().add(parseCoding(xpp)); 13681 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("activity")) { 13682 res.setActivity(parseCoding(xpp)); 13683 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { 13684 res.getAgent().add(parseProvenanceProvenanceAgentComponent(xpp, res)); 13685 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entity")) { 13686 res.getEntity().add(parseProvenanceProvenanceEntityComponent(xpp, res)); 13687 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("signature")) { 13688 res.getSignature().add(parseSignature(xpp)); 13689 } else if (!parseDomainResourceContent(eventType, xpp, res)) 13690 return false; 13691 return true; 13692 } 13693 13694 protected Provenance.ProvenanceAgentComponent parseProvenanceProvenanceAgentComponent(XmlPullParser xpp, Provenance owner) throws XmlPullParserException, IOException, FHIRFormatError { 13695 Provenance.ProvenanceAgentComponent res = new Provenance.ProvenanceAgentComponent(); 13696 parseBackboneAttributes(xpp, res); 13697 next(xpp); 13698 int eventType = nextNoWhitespace(xpp); 13699 while (eventType != XmlPullParser.END_TAG) { 13700 if (!parseProvenanceProvenanceAgentComponentContent(eventType, xpp, owner, res)) 13701 unknownContent(xpp); 13702 eventType = nextNoWhitespace(xpp); 13703 } 13704 next(xpp); 13705 parseElementClose(res); 13706 return res; 13707 } 13708 13709 protected boolean parseProvenanceProvenanceAgentComponentContent(int eventType, XmlPullParser xpp, Provenance owner, Provenance.ProvenanceAgentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13710 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 13711 res.getRole().add(parseCodeableConcept(xpp)); 13712 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "who")) { 13713 res.setWho(parseType("who", xpp)); 13714 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "onBehalfOf")) { 13715 res.setOnBehalfOf(parseType("onBehalfOf", xpp)); 13716 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedAgentType")) { 13717 res.setRelatedAgentType(parseCodeableConcept(xpp)); 13718 } else if (!parseBackboneContent(eventType, xpp, res)) 13719 return false; 13720 return true; 13721 } 13722 13723 protected Provenance.ProvenanceEntityComponent parseProvenanceProvenanceEntityComponent(XmlPullParser xpp, Provenance owner) throws XmlPullParserException, IOException, FHIRFormatError { 13724 Provenance.ProvenanceEntityComponent res = new Provenance.ProvenanceEntityComponent(); 13725 parseBackboneAttributes(xpp, res); 13726 next(xpp); 13727 int eventType = nextNoWhitespace(xpp); 13728 while (eventType != XmlPullParser.END_TAG) { 13729 if (!parseProvenanceProvenanceEntityComponentContent(eventType, xpp, owner, res)) 13730 unknownContent(xpp); 13731 eventType = nextNoWhitespace(xpp); 13732 } 13733 next(xpp); 13734 parseElementClose(res); 13735 return res; 13736 } 13737 13738 protected boolean parseProvenanceProvenanceEntityComponentContent(int eventType, XmlPullParser xpp, Provenance owner, Provenance.ProvenanceEntityComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13739 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 13740 res.setRoleElement(parseEnumeration(xpp, Provenance.ProvenanceEntityRole.NULL, new Provenance.ProvenanceEntityRoleEnumFactory())); 13741 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "what")) { 13742 res.setWhat(parseType("what", xpp)); 13743 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { 13744 res.getAgent().add(parseProvenanceProvenanceAgentComponent(xpp, owner)); 13745 } else if (!parseBackboneContent(eventType, xpp, res)) 13746 return false; 13747 return true; 13748 } 13749 13750 protected Questionnaire parseQuestionnaire(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13751 Questionnaire res = new Questionnaire(); 13752 parseDomainResourceAttributes(xpp, res); 13753 next(xpp); 13754 int eventType = nextNoWhitespace(xpp); 13755 while (eventType != XmlPullParser.END_TAG) { 13756 if (!parseQuestionnaireContent(eventType, xpp, res)) 13757 unknownContent(xpp); 13758 eventType = nextNoWhitespace(xpp); 13759 } 13760 next(xpp); 13761 parseElementClose(res); 13762 return res; 13763 } 13764 13765 protected boolean parseQuestionnaireContent(int eventType, XmlPullParser xpp, Questionnaire res) throws XmlPullParserException, IOException, FHIRFormatError { 13766 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 13767 res.setUrlElement(parseUri(xpp)); 13768 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 13769 res.getIdentifier().add(parseIdentifier(xpp)); 13770 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 13771 res.setVersionElement(parseString(xpp)); 13772 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 13773 res.setNameElement(parseString(xpp)); 13774 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 13775 res.setTitleElement(parseString(xpp)); 13776 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 13777 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 13778 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 13779 res.setExperimentalElement(parseBoolean(xpp)); 13780 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 13781 res.setDateElement(parseDateTime(xpp)); 13782 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 13783 res.setPublisherElement(parseString(xpp)); 13784 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 13785 res.setDescriptionElement(parseMarkdown(xpp)); 13786 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 13787 res.setPurposeElement(parseMarkdown(xpp)); 13788 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("approvalDate")) { 13789 res.setApprovalDateElement(parseDate(xpp)); 13790 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastReviewDate")) { 13791 res.setLastReviewDateElement(parseDate(xpp)); 13792 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectivePeriod")) { 13793 res.setEffectivePeriod(parsePeriod(xpp)); 13794 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 13795 res.getUseContext().add(parseUsageContext(xpp)); 13796 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 13797 res.getJurisdiction().add(parseCodeableConcept(xpp)); 13798 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 13799 res.getContact().add(parseContactDetail(xpp)); 13800 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 13801 res.setCopyrightElement(parseMarkdown(xpp)); 13802 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 13803 res.getCode().add(parseCoding(xpp)); 13804 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subjectType")) { 13805 res.getSubjectType().add(parseCode(xpp)); 13806 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 13807 res.getItem().add(parseQuestionnaireQuestionnaireItemComponent(xpp, res)); 13808 } else if (!parseDomainResourceContent(eventType, xpp, res)) 13809 return false; 13810 return true; 13811 } 13812 13813 protected Questionnaire.QuestionnaireItemComponent parseQuestionnaireQuestionnaireItemComponent(XmlPullParser xpp, Questionnaire owner) throws XmlPullParserException, IOException, FHIRFormatError { 13814 Questionnaire.QuestionnaireItemComponent res = new Questionnaire.QuestionnaireItemComponent(); 13815 parseBackboneAttributes(xpp, res); 13816 next(xpp); 13817 int eventType = nextNoWhitespace(xpp); 13818 while (eventType != XmlPullParser.END_TAG) { 13819 if (!parseQuestionnaireQuestionnaireItemComponentContent(eventType, xpp, owner, res)) 13820 unknownContent(xpp); 13821 eventType = nextNoWhitespace(xpp); 13822 } 13823 next(xpp); 13824 parseElementClose(res); 13825 return res; 13826 } 13827 13828 protected boolean parseQuestionnaireQuestionnaireItemComponentContent(int eventType, XmlPullParser xpp, Questionnaire owner, Questionnaire.QuestionnaireItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13829 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("linkId")) { 13830 res.setLinkIdElement(parseString(xpp)); 13831 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 13832 res.setDefinitionElement(parseUri(xpp)); 13833 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 13834 res.getCode().add(parseCoding(xpp)); 13835 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prefix")) { 13836 res.setPrefixElement(parseString(xpp)); 13837 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 13838 res.setTextElement(parseString(xpp)); 13839 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 13840 res.setTypeElement(parseEnumeration(xpp, Questionnaire.QuestionnaireItemType.NULL, new Questionnaire.QuestionnaireItemTypeEnumFactory())); 13841 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("enableWhen")) { 13842 res.getEnableWhen().add(parseQuestionnaireQuestionnaireItemEnableWhenComponent(xpp, owner)); 13843 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("required")) { 13844 res.setRequiredElement(parseBoolean(xpp)); 13845 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("repeats")) { 13846 res.setRepeatsElement(parseBoolean(xpp)); 13847 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("readOnly")) { 13848 res.setReadOnlyElement(parseBoolean(xpp)); 13849 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxLength")) { 13850 res.setMaxLengthElement(parseInteger(xpp)); 13851 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("options")) { 13852 res.setOptions(parseReference(xpp)); 13853 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("option")) { 13854 res.getOption().add(parseQuestionnaireQuestionnaireItemOptionComponent(xpp, owner)); 13855 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "initial")) { 13856 res.setInitial(parseType("initial", xpp)); 13857 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 13858 res.getItem().add(parseQuestionnaireQuestionnaireItemComponent(xpp, owner)); 13859 } else if (!parseBackboneContent(eventType, xpp, res)) 13860 return false; 13861 return true; 13862 } 13863 13864 protected Questionnaire.QuestionnaireItemEnableWhenComponent parseQuestionnaireQuestionnaireItemEnableWhenComponent(XmlPullParser xpp, Questionnaire owner) throws XmlPullParserException, IOException, FHIRFormatError { 13865 Questionnaire.QuestionnaireItemEnableWhenComponent res = new Questionnaire.QuestionnaireItemEnableWhenComponent(); 13866 parseBackboneAttributes(xpp, res); 13867 next(xpp); 13868 int eventType = nextNoWhitespace(xpp); 13869 while (eventType != XmlPullParser.END_TAG) { 13870 if (!parseQuestionnaireQuestionnaireItemEnableWhenComponentContent(eventType, xpp, owner, res)) 13871 unknownContent(xpp); 13872 eventType = nextNoWhitespace(xpp); 13873 } 13874 next(xpp); 13875 parseElementClose(res); 13876 return res; 13877 } 13878 13879 protected boolean parseQuestionnaireQuestionnaireItemEnableWhenComponentContent(int eventType, XmlPullParser xpp, Questionnaire owner, Questionnaire.QuestionnaireItemEnableWhenComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13880 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("question")) { 13881 res.setQuestionElement(parseString(xpp)); 13882 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("hasAnswer")) { 13883 res.setHasAnswerElement(parseBoolean(xpp)); 13884 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "answer")) { 13885 res.setAnswer(parseType("answer", xpp)); 13886 } else if (!parseBackboneContent(eventType, xpp, res)) 13887 return false; 13888 return true; 13889 } 13890 13891 protected Questionnaire.QuestionnaireItemOptionComponent parseQuestionnaireQuestionnaireItemOptionComponent(XmlPullParser xpp, Questionnaire owner) throws XmlPullParserException, IOException, FHIRFormatError { 13892 Questionnaire.QuestionnaireItemOptionComponent res = new Questionnaire.QuestionnaireItemOptionComponent(); 13893 parseBackboneAttributes(xpp, res); 13894 next(xpp); 13895 int eventType = nextNoWhitespace(xpp); 13896 while (eventType != XmlPullParser.END_TAG) { 13897 if (!parseQuestionnaireQuestionnaireItemOptionComponentContent(eventType, xpp, owner, res)) 13898 unknownContent(xpp); 13899 eventType = nextNoWhitespace(xpp); 13900 } 13901 next(xpp); 13902 parseElementClose(res); 13903 return res; 13904 } 13905 13906 protected boolean parseQuestionnaireQuestionnaireItemOptionComponentContent(int eventType, XmlPullParser xpp, Questionnaire owner, Questionnaire.QuestionnaireItemOptionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13907 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 13908 res.setValue(parseType("value", xpp)); 13909 } else if (!parseBackboneContent(eventType, xpp, res)) 13910 return false; 13911 return true; 13912 } 13913 13914 protected QuestionnaireResponse parseQuestionnaireResponse(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13915 QuestionnaireResponse res = new QuestionnaireResponse(); 13916 parseDomainResourceAttributes(xpp, res); 13917 next(xpp); 13918 int eventType = nextNoWhitespace(xpp); 13919 while (eventType != XmlPullParser.END_TAG) { 13920 if (!parseQuestionnaireResponseContent(eventType, xpp, res)) 13921 unknownContent(xpp); 13922 eventType = nextNoWhitespace(xpp); 13923 } 13924 next(xpp); 13925 parseElementClose(res); 13926 return res; 13927 } 13928 13929 protected boolean parseQuestionnaireResponseContent(int eventType, XmlPullParser xpp, QuestionnaireResponse res) throws XmlPullParserException, IOException, FHIRFormatError { 13930 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 13931 res.setIdentifier(parseIdentifier(xpp)); 13932 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 13933 res.getBasedOn().add(parseReference(xpp)); 13934 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parent")) { 13935 res.getParent().add(parseReference(xpp)); 13936 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("questionnaire")) { 13937 res.setQuestionnaire(parseReference(xpp)); 13938 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 13939 res.setStatusElement(parseEnumeration(xpp, QuestionnaireResponse.QuestionnaireResponseStatus.NULL, new QuestionnaireResponse.QuestionnaireResponseStatusEnumFactory())); 13940 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 13941 res.setSubject(parseReference(xpp)); 13942 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 13943 res.setContext(parseReference(xpp)); 13944 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authored")) { 13945 res.setAuthoredElement(parseDateTime(xpp)); 13946 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 13947 res.setAuthor(parseReference(xpp)); 13948 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 13949 res.setSource(parseReference(xpp)); 13950 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 13951 res.getItem().add(parseQuestionnaireResponseQuestionnaireResponseItemComponent(xpp, res)); 13952 } else if (!parseDomainResourceContent(eventType, xpp, res)) 13953 return false; 13954 return true; 13955 } 13956 13957 protected QuestionnaireResponse.QuestionnaireResponseItemComponent parseQuestionnaireResponseQuestionnaireResponseItemComponent(XmlPullParser xpp, QuestionnaireResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 13958 QuestionnaireResponse.QuestionnaireResponseItemComponent res = new QuestionnaireResponse.QuestionnaireResponseItemComponent(); 13959 parseBackboneAttributes(xpp, res); 13960 next(xpp); 13961 int eventType = nextNoWhitespace(xpp); 13962 while (eventType != XmlPullParser.END_TAG) { 13963 if (!parseQuestionnaireResponseQuestionnaireResponseItemComponentContent(eventType, xpp, owner, res)) 13964 unknownContent(xpp); 13965 eventType = nextNoWhitespace(xpp); 13966 } 13967 next(xpp); 13968 parseElementClose(res); 13969 return res; 13970 } 13971 13972 protected boolean parseQuestionnaireResponseQuestionnaireResponseItemComponentContent(int eventType, XmlPullParser xpp, QuestionnaireResponse owner, QuestionnaireResponse.QuestionnaireResponseItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13973 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("linkId")) { 13974 res.setLinkIdElement(parseString(xpp)); 13975 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 13976 res.setDefinitionElement(parseUri(xpp)); 13977 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 13978 res.setTextElement(parseString(xpp)); 13979 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 13980 res.setSubject(parseReference(xpp)); 13981 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("answer")) { 13982 res.getAnswer().add(parseQuestionnaireResponseQuestionnaireResponseItemAnswerComponent(xpp, owner)); 13983 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 13984 res.getItem().add(parseQuestionnaireResponseQuestionnaireResponseItemComponent(xpp, owner)); 13985 } else if (!parseBackboneContent(eventType, xpp, res)) 13986 return false; 13987 return true; 13988 } 13989 13990 protected QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent parseQuestionnaireResponseQuestionnaireResponseItemAnswerComponent(XmlPullParser xpp, QuestionnaireResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 13991 QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent res = new QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent(); 13992 parseBackboneAttributes(xpp, res); 13993 next(xpp); 13994 int eventType = nextNoWhitespace(xpp); 13995 while (eventType != XmlPullParser.END_TAG) { 13996 if (!parseQuestionnaireResponseQuestionnaireResponseItemAnswerComponentContent(eventType, xpp, owner, res)) 13997 unknownContent(xpp); 13998 eventType = nextNoWhitespace(xpp); 13999 } 14000 next(xpp); 14001 parseElementClose(res); 14002 return res; 14003 } 14004 14005 protected boolean parseQuestionnaireResponseQuestionnaireResponseItemAnswerComponentContent(int eventType, XmlPullParser xpp, QuestionnaireResponse owner, QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14006 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 14007 res.setValue(parseType("value", xpp)); 14008 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 14009 res.getItem().add(parseQuestionnaireResponseQuestionnaireResponseItemComponent(xpp, owner)); 14010 } else if (!parseBackboneContent(eventType, xpp, res)) 14011 return false; 14012 return true; 14013 } 14014 14015 protected ReferralRequest parseReferralRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14016 ReferralRequest res = new ReferralRequest(); 14017 parseDomainResourceAttributes(xpp, res); 14018 next(xpp); 14019 int eventType = nextNoWhitespace(xpp); 14020 while (eventType != XmlPullParser.END_TAG) { 14021 if (!parseReferralRequestContent(eventType, xpp, res)) 14022 unknownContent(xpp); 14023 eventType = nextNoWhitespace(xpp); 14024 } 14025 next(xpp); 14026 parseElementClose(res); 14027 return res; 14028 } 14029 14030 protected boolean parseReferralRequestContent(int eventType, XmlPullParser xpp, ReferralRequest res) throws XmlPullParserException, IOException, FHIRFormatError { 14031 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 14032 res.getIdentifier().add(parseIdentifier(xpp)); 14033 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 14034 res.getDefinition().add(parseReference(xpp)); 14035 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 14036 res.getBasedOn().add(parseReference(xpp)); 14037 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("replaces")) { 14038 res.getReplaces().add(parseReference(xpp)); 14039 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("groupIdentifier")) { 14040 res.setGroupIdentifier(parseIdentifier(xpp)); 14041 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 14042 res.setStatusElement(parseEnumeration(xpp, ReferralRequest.ReferralRequestStatus.NULL, new ReferralRequest.ReferralRequestStatusEnumFactory())); 14043 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intent")) { 14044 res.setIntentElement(parseEnumeration(xpp, ReferralRequest.ReferralCategory.NULL, new ReferralRequest.ReferralCategoryEnumFactory())); 14045 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 14046 res.setType(parseCodeableConcept(xpp)); 14047 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 14048 res.setPriorityElement(parseEnumeration(xpp, ReferralRequest.ReferralPriority.NULL, new ReferralRequest.ReferralPriorityEnumFactory())); 14049 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceRequested")) { 14050 res.getServiceRequested().add(parseCodeableConcept(xpp)); 14051 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 14052 res.setSubject(parseReference(xpp)); 14053 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 14054 res.setContext(parseReference(xpp)); 14055 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "occurrence")) { 14056 res.setOccurrence(parseType("occurrence", xpp)); 14057 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authoredOn")) { 14058 res.setAuthoredOnElement(parseDateTime(xpp)); 14059 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requester")) { 14060 res.setRequester(parseReferralRequestReferralRequestRequesterComponent(xpp, res)); 14061 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialty")) { 14062 res.setSpecialty(parseCodeableConcept(xpp)); 14063 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recipient")) { 14064 res.getRecipient().add(parseReference(xpp)); 14065 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonCode")) { 14066 res.getReasonCode().add(parseCodeableConcept(xpp)); 14067 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonReference")) { 14068 res.getReasonReference().add(parseReference(xpp)); 14069 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 14070 res.setDescriptionElement(parseString(xpp)); 14071 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInfo")) { 14072 res.getSupportingInfo().add(parseReference(xpp)); 14073 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 14074 res.getNote().add(parseAnnotation(xpp)); 14075 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relevantHistory")) { 14076 res.getRelevantHistory().add(parseReference(xpp)); 14077 } else if (!parseDomainResourceContent(eventType, xpp, res)) 14078 return false; 14079 return true; 14080 } 14081 14082 protected ReferralRequest.ReferralRequestRequesterComponent parseReferralRequestReferralRequestRequesterComponent(XmlPullParser xpp, ReferralRequest owner) throws XmlPullParserException, IOException, FHIRFormatError { 14083 ReferralRequest.ReferralRequestRequesterComponent res = new ReferralRequest.ReferralRequestRequesterComponent(); 14084 parseBackboneAttributes(xpp, res); 14085 next(xpp); 14086 int eventType = nextNoWhitespace(xpp); 14087 while (eventType != XmlPullParser.END_TAG) { 14088 if (!parseReferralRequestReferralRequestRequesterComponentContent(eventType, xpp, owner, res)) 14089 unknownContent(xpp); 14090 eventType = nextNoWhitespace(xpp); 14091 } 14092 next(xpp); 14093 parseElementClose(res); 14094 return res; 14095 } 14096 14097 protected boolean parseReferralRequestReferralRequestRequesterComponentContent(int eventType, XmlPullParser xpp, ReferralRequest owner, ReferralRequest.ReferralRequestRequesterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14098 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { 14099 res.setAgent(parseReference(xpp)); 14100 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onBehalfOf")) { 14101 res.setOnBehalfOf(parseReference(xpp)); 14102 } else if (!parseBackboneContent(eventType, xpp, res)) 14103 return false; 14104 return true; 14105 } 14106 14107 protected RelatedPerson parseRelatedPerson(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14108 RelatedPerson res = new RelatedPerson(); 14109 parseDomainResourceAttributes(xpp, res); 14110 next(xpp); 14111 int eventType = nextNoWhitespace(xpp); 14112 while (eventType != XmlPullParser.END_TAG) { 14113 if (!parseRelatedPersonContent(eventType, xpp, res)) 14114 unknownContent(xpp); 14115 eventType = nextNoWhitespace(xpp); 14116 } 14117 next(xpp); 14118 parseElementClose(res); 14119 return res; 14120 } 14121 14122 protected boolean parseRelatedPersonContent(int eventType, XmlPullParser xpp, RelatedPerson res) throws XmlPullParserException, IOException, FHIRFormatError { 14123 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 14124 res.getIdentifier().add(parseIdentifier(xpp)); 14125 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 14126 res.setActiveElement(parseBoolean(xpp)); 14127 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 14128 res.setPatient(parseReference(xpp)); 14129 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 14130 res.setRelationship(parseCodeableConcept(xpp)); 14131 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 14132 res.getName().add(parseHumanName(xpp)); 14133 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 14134 res.getTelecom().add(parseContactPoint(xpp)); 14135 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gender")) { 14136 res.setGenderElement(parseEnumeration(xpp, Enumerations.AdministrativeGender.NULL, new Enumerations.AdministrativeGenderEnumFactory())); 14137 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("birthDate")) { 14138 res.setBirthDateElement(parseDate(xpp)); 14139 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 14140 res.getAddress().add(parseAddress(xpp)); 14141 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("photo")) { 14142 res.getPhoto().add(parseAttachment(xpp)); 14143 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 14144 res.setPeriod(parsePeriod(xpp)); 14145 } else if (!parseDomainResourceContent(eventType, xpp, res)) 14146 return false; 14147 return true; 14148 } 14149 14150 protected RequestGroup parseRequestGroup(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14151 RequestGroup res = new RequestGroup(); 14152 parseDomainResourceAttributes(xpp, res); 14153 next(xpp); 14154 int eventType = nextNoWhitespace(xpp); 14155 while (eventType != XmlPullParser.END_TAG) { 14156 if (!parseRequestGroupContent(eventType, xpp, res)) 14157 unknownContent(xpp); 14158 eventType = nextNoWhitespace(xpp); 14159 } 14160 next(xpp); 14161 parseElementClose(res); 14162 return res; 14163 } 14164 14165 protected boolean parseRequestGroupContent(int eventType, XmlPullParser xpp, RequestGroup res) throws XmlPullParserException, IOException, FHIRFormatError { 14166 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 14167 res.getIdentifier().add(parseIdentifier(xpp)); 14168 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 14169 res.getDefinition().add(parseReference(xpp)); 14170 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 14171 res.getBasedOn().add(parseReference(xpp)); 14172 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("replaces")) { 14173 res.getReplaces().add(parseReference(xpp)); 14174 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("groupIdentifier")) { 14175 res.setGroupIdentifier(parseIdentifier(xpp)); 14176 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 14177 res.setStatusElement(parseEnumeration(xpp, RequestGroup.RequestStatus.NULL, new RequestGroup.RequestStatusEnumFactory())); 14178 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intent")) { 14179 res.setIntentElement(parseEnumeration(xpp, RequestGroup.RequestIntent.NULL, new RequestGroup.RequestIntentEnumFactory())); 14180 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 14181 res.setPriorityElement(parseEnumeration(xpp, RequestGroup.RequestPriority.NULL, new RequestGroup.RequestPriorityEnumFactory())); 14182 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 14183 res.setSubject(parseReference(xpp)); 14184 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 14185 res.setContext(parseReference(xpp)); 14186 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authoredOn")) { 14187 res.setAuthoredOnElement(parseDateTime(xpp)); 14188 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 14189 res.setAuthor(parseReference(xpp)); 14190 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "reason")) { 14191 res.setReason(parseType("reason", xpp)); 14192 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 14193 res.getNote().add(parseAnnotation(xpp)); 14194 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 14195 res.getAction().add(parseRequestGroupRequestGroupActionComponent(xpp, res)); 14196 } else if (!parseDomainResourceContent(eventType, xpp, res)) 14197 return false; 14198 return true; 14199 } 14200 14201 protected RequestGroup.RequestGroupActionComponent parseRequestGroupRequestGroupActionComponent(XmlPullParser xpp, RequestGroup owner) throws XmlPullParserException, IOException, FHIRFormatError { 14202 RequestGroup.RequestGroupActionComponent res = new RequestGroup.RequestGroupActionComponent(); 14203 parseBackboneAttributes(xpp, res); 14204 next(xpp); 14205 int eventType = nextNoWhitespace(xpp); 14206 while (eventType != XmlPullParser.END_TAG) { 14207 if (!parseRequestGroupRequestGroupActionComponentContent(eventType, xpp, owner, res)) 14208 unknownContent(xpp); 14209 eventType = nextNoWhitespace(xpp); 14210 } 14211 next(xpp); 14212 parseElementClose(res); 14213 return res; 14214 } 14215 14216 protected boolean parseRequestGroupRequestGroupActionComponentContent(int eventType, XmlPullParser xpp, RequestGroup owner, RequestGroup.RequestGroupActionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14217 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("label")) { 14218 res.setLabelElement(parseString(xpp)); 14219 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 14220 res.setTitleElement(parseString(xpp)); 14221 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 14222 res.setDescriptionElement(parseString(xpp)); 14223 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("textEquivalent")) { 14224 res.setTextEquivalentElement(parseString(xpp)); 14225 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 14226 res.getCode().add(parseCodeableConcept(xpp)); 14227 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 14228 res.getDocumentation().add(parseRelatedArtifact(xpp)); 14229 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 14230 res.getCondition().add(parseRequestGroupRequestGroupActionConditionComponent(xpp, owner)); 14231 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedAction")) { 14232 res.getRelatedAction().add(parseRequestGroupRequestGroupActionRelatedActionComponent(xpp, owner)); 14233 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "timing")) { 14234 res.setTiming(parseType("timing", xpp)); 14235 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 14236 res.getParticipant().add(parseReference(xpp)); 14237 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 14238 res.setType(parseCoding(xpp)); 14239 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("groupingBehavior")) { 14240 res.setGroupingBehaviorElement(parseEnumeration(xpp, RequestGroup.ActionGroupingBehavior.NULL, new RequestGroup.ActionGroupingBehaviorEnumFactory())); 14241 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("selectionBehavior")) { 14242 res.setSelectionBehaviorElement(parseEnumeration(xpp, RequestGroup.ActionSelectionBehavior.NULL, new RequestGroup.ActionSelectionBehaviorEnumFactory())); 14243 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requiredBehavior")) { 14244 res.setRequiredBehaviorElement(parseEnumeration(xpp, RequestGroup.ActionRequiredBehavior.NULL, new RequestGroup.ActionRequiredBehaviorEnumFactory())); 14245 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("precheckBehavior")) { 14246 res.setPrecheckBehaviorElement(parseEnumeration(xpp, RequestGroup.ActionPrecheckBehavior.NULL, new RequestGroup.ActionPrecheckBehaviorEnumFactory())); 14247 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("cardinalityBehavior")) { 14248 res.setCardinalityBehaviorElement(parseEnumeration(xpp, RequestGroup.ActionCardinalityBehavior.NULL, new RequestGroup.ActionCardinalityBehaviorEnumFactory())); 14249 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 14250 res.setResource(parseReference(xpp)); 14251 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 14252 res.getAction().add(parseRequestGroupRequestGroupActionComponent(xpp, owner)); 14253 } else if (!parseBackboneContent(eventType, xpp, res)) 14254 return false; 14255 return true; 14256 } 14257 14258 protected RequestGroup.RequestGroupActionConditionComponent parseRequestGroupRequestGroupActionConditionComponent(XmlPullParser xpp, RequestGroup owner) throws XmlPullParserException, IOException, FHIRFormatError { 14259 RequestGroup.RequestGroupActionConditionComponent res = new RequestGroup.RequestGroupActionConditionComponent(); 14260 parseBackboneAttributes(xpp, res); 14261 next(xpp); 14262 int eventType = nextNoWhitespace(xpp); 14263 while (eventType != XmlPullParser.END_TAG) { 14264 if (!parseRequestGroupRequestGroupActionConditionComponentContent(eventType, xpp, owner, res)) 14265 unknownContent(xpp); 14266 eventType = nextNoWhitespace(xpp); 14267 } 14268 next(xpp); 14269 parseElementClose(res); 14270 return res; 14271 } 14272 14273 protected boolean parseRequestGroupRequestGroupActionConditionComponentContent(int eventType, XmlPullParser xpp, RequestGroup owner, RequestGroup.RequestGroupActionConditionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14274 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 14275 res.setKindElement(parseEnumeration(xpp, RequestGroup.ActionConditionKind.NULL, new RequestGroup.ActionConditionKindEnumFactory())); 14276 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 14277 res.setDescriptionElement(parseString(xpp)); 14278 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 14279 res.setLanguageElement(parseString(xpp)); 14280 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 14281 res.setExpressionElement(parseString(xpp)); 14282 } else if (!parseBackboneContent(eventType, xpp, res)) 14283 return false; 14284 return true; 14285 } 14286 14287 protected RequestGroup.RequestGroupActionRelatedActionComponent parseRequestGroupRequestGroupActionRelatedActionComponent(XmlPullParser xpp, RequestGroup owner) throws XmlPullParserException, IOException, FHIRFormatError { 14288 RequestGroup.RequestGroupActionRelatedActionComponent res = new RequestGroup.RequestGroupActionRelatedActionComponent(); 14289 parseBackboneAttributes(xpp, res); 14290 next(xpp); 14291 int eventType = nextNoWhitespace(xpp); 14292 while (eventType != XmlPullParser.END_TAG) { 14293 if (!parseRequestGroupRequestGroupActionRelatedActionComponentContent(eventType, xpp, owner, res)) 14294 unknownContent(xpp); 14295 eventType = nextNoWhitespace(xpp); 14296 } 14297 next(xpp); 14298 parseElementClose(res); 14299 return res; 14300 } 14301 14302 protected boolean parseRequestGroupRequestGroupActionRelatedActionComponentContent(int eventType, XmlPullParser xpp, RequestGroup owner, RequestGroup.RequestGroupActionRelatedActionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14303 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actionId")) { 14304 res.setActionIdElement(parseId(xpp)); 14305 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 14306 res.setRelationshipElement(parseEnumeration(xpp, RequestGroup.ActionRelationshipType.NULL, new RequestGroup.ActionRelationshipTypeEnumFactory())); 14307 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "offset")) { 14308 res.setOffset(parseType("offset", xpp)); 14309 } else if (!parseBackboneContent(eventType, xpp, res)) 14310 return false; 14311 return true; 14312 } 14313 14314 protected ResearchStudy parseResearchStudy(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14315 ResearchStudy res = new ResearchStudy(); 14316 parseDomainResourceAttributes(xpp, res); 14317 next(xpp); 14318 int eventType = nextNoWhitespace(xpp); 14319 while (eventType != XmlPullParser.END_TAG) { 14320 if (!parseResearchStudyContent(eventType, xpp, res)) 14321 unknownContent(xpp); 14322 eventType = nextNoWhitespace(xpp); 14323 } 14324 next(xpp); 14325 parseElementClose(res); 14326 return res; 14327 } 14328 14329 protected boolean parseResearchStudyContent(int eventType, XmlPullParser xpp, ResearchStudy res) throws XmlPullParserException, IOException, FHIRFormatError { 14330 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 14331 res.getIdentifier().add(parseIdentifier(xpp)); 14332 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 14333 res.setTitleElement(parseString(xpp)); 14334 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("protocol")) { 14335 res.getProtocol().add(parseReference(xpp)); 14336 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 14337 res.getPartOf().add(parseReference(xpp)); 14338 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 14339 res.setStatusElement(parseEnumeration(xpp, ResearchStudy.ResearchStudyStatus.NULL, new ResearchStudy.ResearchStudyStatusEnumFactory())); 14340 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 14341 res.getCategory().add(parseCodeableConcept(xpp)); 14342 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focus")) { 14343 res.getFocus().add(parseCodeableConcept(xpp)); 14344 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 14345 res.getContact().add(parseContactDetail(xpp)); 14346 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedArtifact")) { 14347 res.getRelatedArtifact().add(parseRelatedArtifact(xpp)); 14348 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("keyword")) { 14349 res.getKeyword().add(parseCodeableConcept(xpp)); 14350 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 14351 res.getJurisdiction().add(parseCodeableConcept(xpp)); 14352 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 14353 res.setDescriptionElement(parseMarkdown(xpp)); 14354 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("enrollment")) { 14355 res.getEnrollment().add(parseReference(xpp)); 14356 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 14357 res.setPeriod(parsePeriod(xpp)); 14358 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sponsor")) { 14359 res.setSponsor(parseReference(xpp)); 14360 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("principalInvestigator")) { 14361 res.setPrincipalInvestigator(parseReference(xpp)); 14362 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("site")) { 14363 res.getSite().add(parseReference(xpp)); 14364 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonStopped")) { 14365 res.setReasonStopped(parseCodeableConcept(xpp)); 14366 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 14367 res.getNote().add(parseAnnotation(xpp)); 14368 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("arm")) { 14369 res.getArm().add(parseResearchStudyResearchStudyArmComponent(xpp, res)); 14370 } else if (!parseDomainResourceContent(eventType, xpp, res)) 14371 return false; 14372 return true; 14373 } 14374 14375 protected ResearchStudy.ResearchStudyArmComponent parseResearchStudyResearchStudyArmComponent(XmlPullParser xpp, ResearchStudy owner) throws XmlPullParserException, IOException, FHIRFormatError { 14376 ResearchStudy.ResearchStudyArmComponent res = new ResearchStudy.ResearchStudyArmComponent(); 14377 parseBackboneAttributes(xpp, res); 14378 next(xpp); 14379 int eventType = nextNoWhitespace(xpp); 14380 while (eventType != XmlPullParser.END_TAG) { 14381 if (!parseResearchStudyResearchStudyArmComponentContent(eventType, xpp, owner, res)) 14382 unknownContent(xpp); 14383 eventType = nextNoWhitespace(xpp); 14384 } 14385 next(xpp); 14386 parseElementClose(res); 14387 return res; 14388 } 14389 14390 protected boolean parseResearchStudyResearchStudyArmComponentContent(int eventType, XmlPullParser xpp, ResearchStudy owner, ResearchStudy.ResearchStudyArmComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14391 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 14392 res.setNameElement(parseString(xpp)); 14393 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 14394 res.setCode(parseCodeableConcept(xpp)); 14395 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 14396 res.setDescriptionElement(parseString(xpp)); 14397 } else if (!parseBackboneContent(eventType, xpp, res)) 14398 return false; 14399 return true; 14400 } 14401 14402 protected ResearchSubject parseResearchSubject(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14403 ResearchSubject res = new ResearchSubject(); 14404 parseDomainResourceAttributes(xpp, res); 14405 next(xpp); 14406 int eventType = nextNoWhitespace(xpp); 14407 while (eventType != XmlPullParser.END_TAG) { 14408 if (!parseResearchSubjectContent(eventType, xpp, res)) 14409 unknownContent(xpp); 14410 eventType = nextNoWhitespace(xpp); 14411 } 14412 next(xpp); 14413 parseElementClose(res); 14414 return res; 14415 } 14416 14417 protected boolean parseResearchSubjectContent(int eventType, XmlPullParser xpp, ResearchSubject res) throws XmlPullParserException, IOException, FHIRFormatError { 14418 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 14419 res.setIdentifier(parseIdentifier(xpp)); 14420 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 14421 res.setStatusElement(parseEnumeration(xpp, ResearchSubject.ResearchSubjectStatus.NULL, new ResearchSubject.ResearchSubjectStatusEnumFactory())); 14422 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 14423 res.setPeriod(parsePeriod(xpp)); 14424 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("study")) { 14425 res.setStudy(parseReference(xpp)); 14426 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("individual")) { 14427 res.setIndividual(parseReference(xpp)); 14428 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assignedArm")) { 14429 res.setAssignedArmElement(parseString(xpp)); 14430 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actualArm")) { 14431 res.setActualArmElement(parseString(xpp)); 14432 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("consent")) { 14433 res.setConsent(parseReference(xpp)); 14434 } else if (!parseDomainResourceContent(eventType, xpp, res)) 14435 return false; 14436 return true; 14437 } 14438 14439 protected RiskAssessment parseRiskAssessment(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14440 RiskAssessment res = new RiskAssessment(); 14441 parseDomainResourceAttributes(xpp, res); 14442 next(xpp); 14443 int eventType = nextNoWhitespace(xpp); 14444 while (eventType != XmlPullParser.END_TAG) { 14445 if (!parseRiskAssessmentContent(eventType, xpp, res)) 14446 unknownContent(xpp); 14447 eventType = nextNoWhitespace(xpp); 14448 } 14449 next(xpp); 14450 parseElementClose(res); 14451 return res; 14452 } 14453 14454 protected boolean parseRiskAssessmentContent(int eventType, XmlPullParser xpp, RiskAssessment res) throws XmlPullParserException, IOException, FHIRFormatError { 14455 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 14456 res.setIdentifier(parseIdentifier(xpp)); 14457 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 14458 res.setBasedOn(parseReference(xpp)); 14459 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parent")) { 14460 res.setParent(parseReference(xpp)); 14461 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 14462 res.setStatusElement(parseEnumeration(xpp, RiskAssessment.RiskAssessmentStatus.NULL, new RiskAssessment.RiskAssessmentStatusEnumFactory())); 14463 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 14464 res.setMethod(parseCodeableConcept(xpp)); 14465 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 14466 res.setCode(parseCodeableConcept(xpp)); 14467 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 14468 res.setSubject(parseReference(xpp)); 14469 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 14470 res.setContext(parseReference(xpp)); 14471 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "occurrence")) { 14472 res.setOccurrence(parseType("occurrence", xpp)); 14473 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 14474 res.setCondition(parseReference(xpp)); 14475 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 14476 res.setPerformer(parseReference(xpp)); 14477 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "reason")) { 14478 res.setReason(parseType("reason", xpp)); 14479 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basis")) { 14480 res.getBasis().add(parseReference(xpp)); 14481 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prediction")) { 14482 res.getPrediction().add(parseRiskAssessmentRiskAssessmentPredictionComponent(xpp, res)); 14483 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mitigation")) { 14484 res.setMitigationElement(parseString(xpp)); 14485 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 14486 res.setCommentElement(parseString(xpp)); 14487 } else if (!parseDomainResourceContent(eventType, xpp, res)) 14488 return false; 14489 return true; 14490 } 14491 14492 protected RiskAssessment.RiskAssessmentPredictionComponent parseRiskAssessmentRiskAssessmentPredictionComponent(XmlPullParser xpp, RiskAssessment owner) throws XmlPullParserException, IOException, FHIRFormatError { 14493 RiskAssessment.RiskAssessmentPredictionComponent res = new RiskAssessment.RiskAssessmentPredictionComponent(); 14494 parseBackboneAttributes(xpp, res); 14495 next(xpp); 14496 int eventType = nextNoWhitespace(xpp); 14497 while (eventType != XmlPullParser.END_TAG) { 14498 if (!parseRiskAssessmentRiskAssessmentPredictionComponentContent(eventType, xpp, owner, res)) 14499 unknownContent(xpp); 14500 eventType = nextNoWhitespace(xpp); 14501 } 14502 next(xpp); 14503 parseElementClose(res); 14504 return res; 14505 } 14506 14507 protected boolean parseRiskAssessmentRiskAssessmentPredictionComponentContent(int eventType, XmlPullParser xpp, RiskAssessment owner, RiskAssessment.RiskAssessmentPredictionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14508 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 14509 res.setOutcome(parseCodeableConcept(xpp)); 14510 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "probability")) { 14511 res.setProbability(parseType("probability", xpp)); 14512 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("qualitativeRisk")) { 14513 res.setQualitativeRisk(parseCodeableConcept(xpp)); 14514 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relativeRisk")) { 14515 res.setRelativeRiskElement(parseDecimal(xpp)); 14516 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "when")) { 14517 res.setWhen(parseType("when", xpp)); 14518 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rationale")) { 14519 res.setRationaleElement(parseString(xpp)); 14520 } else if (!parseBackboneContent(eventType, xpp, res)) 14521 return false; 14522 return true; 14523 } 14524 14525 protected Schedule parseSchedule(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14526 Schedule res = new Schedule(); 14527 parseDomainResourceAttributes(xpp, res); 14528 next(xpp); 14529 int eventType = nextNoWhitespace(xpp); 14530 while (eventType != XmlPullParser.END_TAG) { 14531 if (!parseScheduleContent(eventType, xpp, res)) 14532 unknownContent(xpp); 14533 eventType = nextNoWhitespace(xpp); 14534 } 14535 next(xpp); 14536 parseElementClose(res); 14537 return res; 14538 } 14539 14540 protected boolean parseScheduleContent(int eventType, XmlPullParser xpp, Schedule res) throws XmlPullParserException, IOException, FHIRFormatError { 14541 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 14542 res.getIdentifier().add(parseIdentifier(xpp)); 14543 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 14544 res.setActiveElement(parseBoolean(xpp)); 14545 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceCategory")) { 14546 res.setServiceCategory(parseCodeableConcept(xpp)); 14547 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceType")) { 14548 res.getServiceType().add(parseCodeableConcept(xpp)); 14549 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialty")) { 14550 res.getSpecialty().add(parseCodeableConcept(xpp)); 14551 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 14552 res.getActor().add(parseReference(xpp)); 14553 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("planningHorizon")) { 14554 res.setPlanningHorizon(parsePeriod(xpp)); 14555 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 14556 res.setCommentElement(parseString(xpp)); 14557 } else if (!parseDomainResourceContent(eventType, xpp, res)) 14558 return false; 14559 return true; 14560 } 14561 14562 protected SearchParameter parseSearchParameter(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14563 SearchParameter res = new SearchParameter(); 14564 parseDomainResourceAttributes(xpp, res); 14565 next(xpp); 14566 int eventType = nextNoWhitespace(xpp); 14567 while (eventType != XmlPullParser.END_TAG) { 14568 if (!parseSearchParameterContent(eventType, xpp, res)) 14569 unknownContent(xpp); 14570 eventType = nextNoWhitespace(xpp); 14571 } 14572 next(xpp); 14573 parseElementClose(res); 14574 return res; 14575 } 14576 14577 protected boolean parseSearchParameterContent(int eventType, XmlPullParser xpp, SearchParameter res) throws XmlPullParserException, IOException, FHIRFormatError { 14578 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 14579 res.setUrlElement(parseUri(xpp)); 14580 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 14581 res.setVersionElement(parseString(xpp)); 14582 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 14583 res.setNameElement(parseString(xpp)); 14584 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 14585 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 14586 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 14587 res.setExperimentalElement(parseBoolean(xpp)); 14588 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 14589 res.setDateElement(parseDateTime(xpp)); 14590 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 14591 res.setPublisherElement(parseString(xpp)); 14592 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 14593 res.getContact().add(parseContactDetail(xpp)); 14594 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 14595 res.getUseContext().add(parseUsageContext(xpp)); 14596 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 14597 res.getJurisdiction().add(parseCodeableConcept(xpp)); 14598 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 14599 res.setPurposeElement(parseMarkdown(xpp)); 14600 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 14601 res.setCodeElement(parseCode(xpp)); 14602 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("base")) { 14603 res.getBase().add(parseCode(xpp)); 14604 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 14605 res.setTypeElement(parseEnumeration(xpp, Enumerations.SearchParamType.NULL, new Enumerations.SearchParamTypeEnumFactory())); 14606 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("derivedFrom")) { 14607 res.setDerivedFromElement(parseUri(xpp)); 14608 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 14609 res.setDescriptionElement(parseMarkdown(xpp)); 14610 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 14611 res.setExpressionElement(parseString(xpp)); 14612 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("xpath")) { 14613 res.setXpathElement(parseString(xpp)); 14614 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("xpathUsage")) { 14615 res.setXpathUsageElement(parseEnumeration(xpp, SearchParameter.XPathUsageType.NULL, new SearchParameter.XPathUsageTypeEnumFactory())); 14616 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 14617 res.getTarget().add(parseCode(xpp)); 14618 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comparator")) { 14619 res.getComparator().add(parseEnumeration(xpp, SearchParameter.SearchComparator.NULL, new SearchParameter.SearchComparatorEnumFactory())); 14620 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 14621 res.getModifier().add(parseEnumeration(xpp, SearchParameter.SearchModifierCode.NULL, new SearchParameter.SearchModifierCodeEnumFactory())); 14622 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("chain")) { 14623 res.getChain().add(parseString(xpp)); 14624 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("component")) { 14625 res.getComponent().add(parseSearchParameterSearchParameterComponentComponent(xpp, res)); 14626 } else if (!parseDomainResourceContent(eventType, xpp, res)) 14627 return false; 14628 return true; 14629 } 14630 14631 protected SearchParameter.SearchParameterComponentComponent parseSearchParameterSearchParameterComponentComponent(XmlPullParser xpp, SearchParameter owner) throws XmlPullParserException, IOException, FHIRFormatError { 14632 SearchParameter.SearchParameterComponentComponent res = new SearchParameter.SearchParameterComponentComponent(); 14633 parseBackboneAttributes(xpp, res); 14634 next(xpp); 14635 int eventType = nextNoWhitespace(xpp); 14636 while (eventType != XmlPullParser.END_TAG) { 14637 if (!parseSearchParameterSearchParameterComponentComponentContent(eventType, xpp, owner, res)) 14638 unknownContent(xpp); 14639 eventType = nextNoWhitespace(xpp); 14640 } 14641 next(xpp); 14642 parseElementClose(res); 14643 return res; 14644 } 14645 14646 protected boolean parseSearchParameterSearchParameterComponentComponentContent(int eventType, XmlPullParser xpp, SearchParameter owner, SearchParameter.SearchParameterComponentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14647 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 14648 res.setDefinition(parseReference(xpp)); 14649 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 14650 res.setExpressionElement(parseString(xpp)); 14651 } else if (!parseBackboneContent(eventType, xpp, res)) 14652 return false; 14653 return true; 14654 } 14655 14656 protected Sequence parseSequence(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14657 Sequence res = new Sequence(); 14658 parseDomainResourceAttributes(xpp, res); 14659 next(xpp); 14660 int eventType = nextNoWhitespace(xpp); 14661 while (eventType != XmlPullParser.END_TAG) { 14662 if (!parseSequenceContent(eventType, xpp, res)) 14663 unknownContent(xpp); 14664 eventType = nextNoWhitespace(xpp); 14665 } 14666 next(xpp); 14667 parseElementClose(res); 14668 return res; 14669 } 14670 14671 protected boolean parseSequenceContent(int eventType, XmlPullParser xpp, Sequence res) throws XmlPullParserException, IOException, FHIRFormatError { 14672 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 14673 res.getIdentifier().add(parseIdentifier(xpp)); 14674 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 14675 res.setTypeElement(parseEnumeration(xpp, Sequence.SequenceType.NULL, new Sequence.SequenceTypeEnumFactory())); 14676 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coordinateSystem")) { 14677 res.setCoordinateSystemElement(parseInteger(xpp)); 14678 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 14679 res.setPatient(parseReference(xpp)); 14680 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specimen")) { 14681 res.setSpecimen(parseReference(xpp)); 14682 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 14683 res.setDevice(parseReference(xpp)); 14684 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 14685 res.setPerformer(parseReference(xpp)); 14686 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 14687 res.setQuantity(parseQuantity(xpp)); 14688 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referenceSeq")) { 14689 res.setReferenceSeq(parseSequenceSequenceReferenceSeqComponent(xpp, res)); 14690 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("variant")) { 14691 res.getVariant().add(parseSequenceSequenceVariantComponent(xpp, res)); 14692 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("observedSeq")) { 14693 res.setObservedSeqElement(parseString(xpp)); 14694 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quality")) { 14695 res.getQuality().add(parseSequenceSequenceQualityComponent(xpp, res)); 14696 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("readCoverage")) { 14697 res.setReadCoverageElement(parseInteger(xpp)); 14698 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("repository")) { 14699 res.getRepository().add(parseSequenceSequenceRepositoryComponent(xpp, res)); 14700 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("pointer")) { 14701 res.getPointer().add(parseReference(xpp)); 14702 } else if (!parseDomainResourceContent(eventType, xpp, res)) 14703 return false; 14704 return true; 14705 } 14706 14707 protected Sequence.SequenceReferenceSeqComponent parseSequenceSequenceReferenceSeqComponent(XmlPullParser xpp, Sequence owner) throws XmlPullParserException, IOException, FHIRFormatError { 14708 Sequence.SequenceReferenceSeqComponent res = new Sequence.SequenceReferenceSeqComponent(); 14709 parseBackboneAttributes(xpp, res); 14710 next(xpp); 14711 int eventType = nextNoWhitespace(xpp); 14712 while (eventType != XmlPullParser.END_TAG) { 14713 if (!parseSequenceSequenceReferenceSeqComponentContent(eventType, xpp, owner, res)) 14714 unknownContent(xpp); 14715 eventType = nextNoWhitespace(xpp); 14716 } 14717 next(xpp); 14718 parseElementClose(res); 14719 return res; 14720 } 14721 14722 protected boolean parseSequenceSequenceReferenceSeqComponentContent(int eventType, XmlPullParser xpp, Sequence owner, Sequence.SequenceReferenceSeqComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14723 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("chromosome")) { 14724 res.setChromosome(parseCodeableConcept(xpp)); 14725 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("genomeBuild")) { 14726 res.setGenomeBuildElement(parseString(xpp)); 14727 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referenceSeqId")) { 14728 res.setReferenceSeqId(parseCodeableConcept(xpp)); 14729 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referenceSeqPointer")) { 14730 res.setReferenceSeqPointer(parseReference(xpp)); 14731 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referenceSeqString")) { 14732 res.setReferenceSeqStringElement(parseString(xpp)); 14733 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("strand")) { 14734 res.setStrandElement(parseInteger(xpp)); 14735 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("windowStart")) { 14736 res.setWindowStartElement(parseInteger(xpp)); 14737 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("windowEnd")) { 14738 res.setWindowEndElement(parseInteger(xpp)); 14739 } else if (!parseBackboneContent(eventType, xpp, res)) 14740 return false; 14741 return true; 14742 } 14743 14744 protected Sequence.SequenceVariantComponent parseSequenceSequenceVariantComponent(XmlPullParser xpp, Sequence owner) throws XmlPullParserException, IOException, FHIRFormatError { 14745 Sequence.SequenceVariantComponent res = new Sequence.SequenceVariantComponent(); 14746 parseBackboneAttributes(xpp, res); 14747 next(xpp); 14748 int eventType = nextNoWhitespace(xpp); 14749 while (eventType != XmlPullParser.END_TAG) { 14750 if (!parseSequenceSequenceVariantComponentContent(eventType, xpp, owner, res)) 14751 unknownContent(xpp); 14752 eventType = nextNoWhitespace(xpp); 14753 } 14754 next(xpp); 14755 parseElementClose(res); 14756 return res; 14757 } 14758 14759 protected boolean parseSequenceSequenceVariantComponentContent(int eventType, XmlPullParser xpp, Sequence owner, Sequence.SequenceVariantComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14760 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("start")) { 14761 res.setStartElement(parseInteger(xpp)); 14762 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("end")) { 14763 res.setEndElement(parseInteger(xpp)); 14764 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("observedAllele")) { 14765 res.setObservedAlleleElement(parseString(xpp)); 14766 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referenceAllele")) { 14767 res.setReferenceAlleleElement(parseString(xpp)); 14768 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("cigar")) { 14769 res.setCigarElement(parseString(xpp)); 14770 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("variantPointer")) { 14771 res.setVariantPointer(parseReference(xpp)); 14772 } else if (!parseBackboneContent(eventType, xpp, res)) 14773 return false; 14774 return true; 14775 } 14776 14777 protected Sequence.SequenceQualityComponent parseSequenceSequenceQualityComponent(XmlPullParser xpp, Sequence owner) throws XmlPullParserException, IOException, FHIRFormatError { 14778 Sequence.SequenceQualityComponent res = new Sequence.SequenceQualityComponent(); 14779 parseBackboneAttributes(xpp, res); 14780 next(xpp); 14781 int eventType = nextNoWhitespace(xpp); 14782 while (eventType != XmlPullParser.END_TAG) { 14783 if (!parseSequenceSequenceQualityComponentContent(eventType, xpp, owner, res)) 14784 unknownContent(xpp); 14785 eventType = nextNoWhitespace(xpp); 14786 } 14787 next(xpp); 14788 parseElementClose(res); 14789 return res; 14790 } 14791 14792 protected boolean parseSequenceSequenceQualityComponentContent(int eventType, XmlPullParser xpp, Sequence owner, Sequence.SequenceQualityComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14793 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 14794 res.setTypeElement(parseEnumeration(xpp, Sequence.QualityType.NULL, new Sequence.QualityTypeEnumFactory())); 14795 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("standardSequence")) { 14796 res.setStandardSequence(parseCodeableConcept(xpp)); 14797 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("start")) { 14798 res.setStartElement(parseInteger(xpp)); 14799 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("end")) { 14800 res.setEndElement(parseInteger(xpp)); 14801 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("score")) { 14802 res.setScore(parseQuantity(xpp)); 14803 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 14804 res.setMethod(parseCodeableConcept(xpp)); 14805 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("truthTP")) { 14806 res.setTruthTPElement(parseDecimal(xpp)); 14807 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("queryTP")) { 14808 res.setQueryTPElement(parseDecimal(xpp)); 14809 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("truthFN")) { 14810 res.setTruthFNElement(parseDecimal(xpp)); 14811 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("queryFP")) { 14812 res.setQueryFPElement(parseDecimal(xpp)); 14813 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gtFP")) { 14814 res.setGtFPElement(parseDecimal(xpp)); 14815 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("precision")) { 14816 res.setPrecisionElement(parseDecimal(xpp)); 14817 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recall")) { 14818 res.setRecallElement(parseDecimal(xpp)); 14819 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fScore")) { 14820 res.setFScoreElement(parseDecimal(xpp)); 14821 } else if (!parseBackboneContent(eventType, xpp, res)) 14822 return false; 14823 return true; 14824 } 14825 14826 protected Sequence.SequenceRepositoryComponent parseSequenceSequenceRepositoryComponent(XmlPullParser xpp, Sequence owner) throws XmlPullParserException, IOException, FHIRFormatError { 14827 Sequence.SequenceRepositoryComponent res = new Sequence.SequenceRepositoryComponent(); 14828 parseBackboneAttributes(xpp, res); 14829 next(xpp); 14830 int eventType = nextNoWhitespace(xpp); 14831 while (eventType != XmlPullParser.END_TAG) { 14832 if (!parseSequenceSequenceRepositoryComponentContent(eventType, xpp, owner, res)) 14833 unknownContent(xpp); 14834 eventType = nextNoWhitespace(xpp); 14835 } 14836 next(xpp); 14837 parseElementClose(res); 14838 return res; 14839 } 14840 14841 protected boolean parseSequenceSequenceRepositoryComponentContent(int eventType, XmlPullParser xpp, Sequence owner, Sequence.SequenceRepositoryComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14842 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 14843 res.setTypeElement(parseEnumeration(xpp, Sequence.RepositoryType.NULL, new Sequence.RepositoryTypeEnumFactory())); 14844 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 14845 res.setUrlElement(parseUri(xpp)); 14846 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 14847 res.setNameElement(parseString(xpp)); 14848 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("datasetId")) { 14849 res.setDatasetIdElement(parseString(xpp)); 14850 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("variantsetId")) { 14851 res.setVariantsetIdElement(parseString(xpp)); 14852 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("readsetId")) { 14853 res.setReadsetIdElement(parseString(xpp)); 14854 } else if (!parseBackboneContent(eventType, xpp, res)) 14855 return false; 14856 return true; 14857 } 14858 14859 protected ServiceDefinition parseServiceDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14860 ServiceDefinition res = new ServiceDefinition(); 14861 parseDomainResourceAttributes(xpp, res); 14862 next(xpp); 14863 int eventType = nextNoWhitespace(xpp); 14864 while (eventType != XmlPullParser.END_TAG) { 14865 if (!parseServiceDefinitionContent(eventType, xpp, res)) 14866 unknownContent(xpp); 14867 eventType = nextNoWhitespace(xpp); 14868 } 14869 next(xpp); 14870 parseElementClose(res); 14871 return res; 14872 } 14873 14874 protected boolean parseServiceDefinitionContent(int eventType, XmlPullParser xpp, ServiceDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 14875 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 14876 res.setUrlElement(parseUri(xpp)); 14877 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 14878 res.getIdentifier().add(parseIdentifier(xpp)); 14879 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 14880 res.setVersionElement(parseString(xpp)); 14881 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 14882 res.setNameElement(parseString(xpp)); 14883 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 14884 res.setTitleElement(parseString(xpp)); 14885 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 14886 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 14887 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 14888 res.setExperimentalElement(parseBoolean(xpp)); 14889 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 14890 res.setDateElement(parseDateTime(xpp)); 14891 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 14892 res.setPublisherElement(parseString(xpp)); 14893 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 14894 res.setDescriptionElement(parseMarkdown(xpp)); 14895 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 14896 res.setPurposeElement(parseMarkdown(xpp)); 14897 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usage")) { 14898 res.setUsageElement(parseString(xpp)); 14899 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("approvalDate")) { 14900 res.setApprovalDateElement(parseDate(xpp)); 14901 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastReviewDate")) { 14902 res.setLastReviewDateElement(parseDate(xpp)); 14903 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectivePeriod")) { 14904 res.setEffectivePeriod(parsePeriod(xpp)); 14905 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 14906 res.getUseContext().add(parseUsageContext(xpp)); 14907 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 14908 res.getJurisdiction().add(parseCodeableConcept(xpp)); 14909 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { 14910 res.getTopic().add(parseCodeableConcept(xpp)); 14911 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contributor")) { 14912 res.getContributor().add(parseContributor(xpp)); 14913 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 14914 res.getContact().add(parseContactDetail(xpp)); 14915 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 14916 res.setCopyrightElement(parseMarkdown(xpp)); 14917 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedArtifact")) { 14918 res.getRelatedArtifact().add(parseRelatedArtifact(xpp)); 14919 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("trigger")) { 14920 res.getTrigger().add(parseTriggerDefinition(xpp)); 14921 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dataRequirement")) { 14922 res.getDataRequirement().add(parseDataRequirement(xpp)); 14923 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operationDefinition")) { 14924 res.setOperationDefinition(parseReference(xpp)); 14925 } else if (!parseDomainResourceContent(eventType, xpp, res)) 14926 return false; 14927 return true; 14928 } 14929 14930 protected Slot parseSlot(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14931 Slot res = new Slot(); 14932 parseDomainResourceAttributes(xpp, res); 14933 next(xpp); 14934 int eventType = nextNoWhitespace(xpp); 14935 while (eventType != XmlPullParser.END_TAG) { 14936 if (!parseSlotContent(eventType, xpp, res)) 14937 unknownContent(xpp); 14938 eventType = nextNoWhitespace(xpp); 14939 } 14940 next(xpp); 14941 parseElementClose(res); 14942 return res; 14943 } 14944 14945 protected boolean parseSlotContent(int eventType, XmlPullParser xpp, Slot res) throws XmlPullParserException, IOException, FHIRFormatError { 14946 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 14947 res.getIdentifier().add(parseIdentifier(xpp)); 14948 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceCategory")) { 14949 res.setServiceCategory(parseCodeableConcept(xpp)); 14950 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceType")) { 14951 res.getServiceType().add(parseCodeableConcept(xpp)); 14952 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialty")) { 14953 res.getSpecialty().add(parseCodeableConcept(xpp)); 14954 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("appointmentType")) { 14955 res.setAppointmentType(parseCodeableConcept(xpp)); 14956 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("schedule")) { 14957 res.setSchedule(parseReference(xpp)); 14958 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 14959 res.setStatusElement(parseEnumeration(xpp, Slot.SlotStatus.NULL, new Slot.SlotStatusEnumFactory())); 14960 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("start")) { 14961 res.setStartElement(parseInstant(xpp)); 14962 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("end")) { 14963 res.setEndElement(parseInstant(xpp)); 14964 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("overbooked")) { 14965 res.setOverbookedElement(parseBoolean(xpp)); 14966 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 14967 res.setCommentElement(parseString(xpp)); 14968 } else if (!parseDomainResourceContent(eventType, xpp, res)) 14969 return false; 14970 return true; 14971 } 14972 14973 protected Specimen parseSpecimen(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14974 Specimen res = new Specimen(); 14975 parseDomainResourceAttributes(xpp, res); 14976 next(xpp); 14977 int eventType = nextNoWhitespace(xpp); 14978 while (eventType != XmlPullParser.END_TAG) { 14979 if (!parseSpecimenContent(eventType, xpp, res)) 14980 unknownContent(xpp); 14981 eventType = nextNoWhitespace(xpp); 14982 } 14983 next(xpp); 14984 parseElementClose(res); 14985 return res; 14986 } 14987 14988 protected boolean parseSpecimenContent(int eventType, XmlPullParser xpp, Specimen res) throws XmlPullParserException, IOException, FHIRFormatError { 14989 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 14990 res.getIdentifier().add(parseIdentifier(xpp)); 14991 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("accessionIdentifier")) { 14992 res.setAccessionIdentifier(parseIdentifier(xpp)); 14993 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 14994 res.setStatusElement(parseEnumeration(xpp, Specimen.SpecimenStatus.NULL, new Specimen.SpecimenStatusEnumFactory())); 14995 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 14996 res.setType(parseCodeableConcept(xpp)); 14997 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 14998 res.setSubject(parseReference(xpp)); 14999 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("receivedTime")) { 15000 res.setReceivedTimeElement(parseDateTime(xpp)); 15001 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parent")) { 15002 res.getParent().add(parseReference(xpp)); 15003 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 15004 res.getRequest().add(parseReference(xpp)); 15005 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("collection")) { 15006 res.setCollection(parseSpecimenSpecimenCollectionComponent(xpp, res)); 15007 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("processing")) { 15008 res.getProcessing().add(parseSpecimenSpecimenProcessingComponent(xpp, res)); 15009 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("container")) { 15010 res.getContainer().add(parseSpecimenSpecimenContainerComponent(xpp, res)); 15011 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 15012 res.getNote().add(parseAnnotation(xpp)); 15013 } else if (!parseDomainResourceContent(eventType, xpp, res)) 15014 return false; 15015 return true; 15016 } 15017 15018 protected Specimen.SpecimenCollectionComponent parseSpecimenSpecimenCollectionComponent(XmlPullParser xpp, Specimen owner) throws XmlPullParserException, IOException, FHIRFormatError { 15019 Specimen.SpecimenCollectionComponent res = new Specimen.SpecimenCollectionComponent(); 15020 parseBackboneAttributes(xpp, res); 15021 next(xpp); 15022 int eventType = nextNoWhitespace(xpp); 15023 while (eventType != XmlPullParser.END_TAG) { 15024 if (!parseSpecimenSpecimenCollectionComponentContent(eventType, xpp, owner, res)) 15025 unknownContent(xpp); 15026 eventType = nextNoWhitespace(xpp); 15027 } 15028 next(xpp); 15029 parseElementClose(res); 15030 return res; 15031 } 15032 15033 protected boolean parseSpecimenSpecimenCollectionComponentContent(int eventType, XmlPullParser xpp, Specimen owner, Specimen.SpecimenCollectionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15034 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("collector")) { 15035 res.setCollector(parseReference(xpp)); 15036 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "collected")) { 15037 res.setCollected(parseType("collected", xpp)); 15038 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 15039 res.setQuantity(parseSimpleQuantity(xpp)); 15040 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 15041 res.setMethod(parseCodeableConcept(xpp)); 15042 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 15043 res.setBodySite(parseCodeableConcept(xpp)); 15044 } else if (!parseBackboneContent(eventType, xpp, res)) 15045 return false; 15046 return true; 15047 } 15048 15049 protected Specimen.SpecimenProcessingComponent parseSpecimenSpecimenProcessingComponent(XmlPullParser xpp, Specimen owner) throws XmlPullParserException, IOException, FHIRFormatError { 15050 Specimen.SpecimenProcessingComponent res = new Specimen.SpecimenProcessingComponent(); 15051 parseBackboneAttributes(xpp, res); 15052 next(xpp); 15053 int eventType = nextNoWhitespace(xpp); 15054 while (eventType != XmlPullParser.END_TAG) { 15055 if (!parseSpecimenSpecimenProcessingComponentContent(eventType, xpp, owner, res)) 15056 unknownContent(xpp); 15057 eventType = nextNoWhitespace(xpp); 15058 } 15059 next(xpp); 15060 parseElementClose(res); 15061 return res; 15062 } 15063 15064 protected boolean parseSpecimenSpecimenProcessingComponentContent(int eventType, XmlPullParser xpp, Specimen owner, Specimen.SpecimenProcessingComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15065 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 15066 res.setDescriptionElement(parseString(xpp)); 15067 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("procedure")) { 15068 res.setProcedure(parseCodeableConcept(xpp)); 15069 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("additive")) { 15070 res.getAdditive().add(parseReference(xpp)); 15071 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "time")) { 15072 res.setTime(parseType("time", xpp)); 15073 } else if (!parseBackboneContent(eventType, xpp, res)) 15074 return false; 15075 return true; 15076 } 15077 15078 protected Specimen.SpecimenContainerComponent parseSpecimenSpecimenContainerComponent(XmlPullParser xpp, Specimen owner) throws XmlPullParserException, IOException, FHIRFormatError { 15079 Specimen.SpecimenContainerComponent res = new Specimen.SpecimenContainerComponent(); 15080 parseBackboneAttributes(xpp, res); 15081 next(xpp); 15082 int eventType = nextNoWhitespace(xpp); 15083 while (eventType != XmlPullParser.END_TAG) { 15084 if (!parseSpecimenSpecimenContainerComponentContent(eventType, xpp, owner, res)) 15085 unknownContent(xpp); 15086 eventType = nextNoWhitespace(xpp); 15087 } 15088 next(xpp); 15089 parseElementClose(res); 15090 return res; 15091 } 15092 15093 protected boolean parseSpecimenSpecimenContainerComponentContent(int eventType, XmlPullParser xpp, Specimen owner, Specimen.SpecimenContainerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15094 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 15095 res.getIdentifier().add(parseIdentifier(xpp)); 15096 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 15097 res.setDescriptionElement(parseString(xpp)); 15098 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 15099 res.setType(parseCodeableConcept(xpp)); 15100 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("capacity")) { 15101 res.setCapacity(parseSimpleQuantity(xpp)); 15102 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specimenQuantity")) { 15103 res.setSpecimenQuantity(parseSimpleQuantity(xpp)); 15104 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "additive")) { 15105 res.setAdditive(parseType("additive", xpp)); 15106 } else if (!parseBackboneContent(eventType, xpp, res)) 15107 return false; 15108 return true; 15109 } 15110 15111 protected StructureDefinition parseStructureDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15112 StructureDefinition res = new StructureDefinition(); 15113 parseDomainResourceAttributes(xpp, res); 15114 next(xpp); 15115 int eventType = nextNoWhitespace(xpp); 15116 while (eventType != XmlPullParser.END_TAG) { 15117 if (!parseStructureDefinitionContent(eventType, xpp, res)) 15118 unknownContent(xpp); 15119 eventType = nextNoWhitespace(xpp); 15120 } 15121 next(xpp); 15122 parseElementClose(res); 15123 return res; 15124 } 15125 15126 protected boolean parseStructureDefinitionContent(int eventType, XmlPullParser xpp, StructureDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 15127 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 15128 res.setUrlElement(parseUri(xpp)); 15129 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 15130 res.getIdentifier().add(parseIdentifier(xpp)); 15131 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 15132 res.setVersionElement(parseString(xpp)); 15133 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 15134 res.setNameElement(parseString(xpp)); 15135 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 15136 res.setTitleElement(parseString(xpp)); 15137 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 15138 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 15139 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 15140 res.setExperimentalElement(parseBoolean(xpp)); 15141 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 15142 res.setDateElement(parseDateTime(xpp)); 15143 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 15144 res.setPublisherElement(parseString(xpp)); 15145 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 15146 res.getContact().add(parseContactDetail(xpp)); 15147 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 15148 res.setDescriptionElement(parseMarkdown(xpp)); 15149 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 15150 res.getUseContext().add(parseUsageContext(xpp)); 15151 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 15152 res.getJurisdiction().add(parseCodeableConcept(xpp)); 15153 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 15154 res.setPurposeElement(parseMarkdown(xpp)); 15155 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 15156 res.setCopyrightElement(parseMarkdown(xpp)); 15157 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("keyword")) { 15158 res.getKeyword().add(parseCoding(xpp)); 15159 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fhirVersion")) { 15160 res.setFhirVersionElement(parseId(xpp)); 15161 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mapping")) { 15162 res.getMapping().add(parseStructureDefinitionStructureDefinitionMappingComponent(xpp, res)); 15163 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 15164 res.setKindElement(parseEnumeration(xpp, StructureDefinition.StructureDefinitionKind.NULL, new StructureDefinition.StructureDefinitionKindEnumFactory())); 15165 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("abstract")) { 15166 res.setAbstractElement(parseBoolean(xpp)); 15167 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contextType")) { 15168 res.setContextTypeElement(parseEnumeration(xpp, StructureDefinition.ExtensionContext.NULL, new StructureDefinition.ExtensionContextEnumFactory())); 15169 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 15170 res.getContext().add(parseString(xpp)); 15171 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contextInvariant")) { 15172 res.getContextInvariant().add(parseString(xpp)); 15173 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 15174 res.setTypeElement(parseCode(xpp)); 15175 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("baseDefinition")) { 15176 res.setBaseDefinitionElement(parseUri(xpp)); 15177 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("derivation")) { 15178 res.setDerivationElement(parseEnumeration(xpp, StructureDefinition.TypeDerivationRule.NULL, new StructureDefinition.TypeDerivationRuleEnumFactory())); 15179 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("snapshot")) { 15180 res.setSnapshot(parseStructureDefinitionStructureDefinitionSnapshotComponent(xpp, res)); 15181 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("differential")) { 15182 res.setDifferential(parseStructureDefinitionStructureDefinitionDifferentialComponent(xpp, res)); 15183 } else if (!parseDomainResourceContent(eventType, xpp, res)) 15184 return false; 15185 return true; 15186 } 15187 15188 protected StructureDefinition.StructureDefinitionMappingComponent parseStructureDefinitionStructureDefinitionMappingComponent(XmlPullParser xpp, StructureDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 15189 StructureDefinition.StructureDefinitionMappingComponent res = new StructureDefinition.StructureDefinitionMappingComponent(); 15190 parseBackboneAttributes(xpp, res); 15191 next(xpp); 15192 int eventType = nextNoWhitespace(xpp); 15193 while (eventType != XmlPullParser.END_TAG) { 15194 if (!parseStructureDefinitionStructureDefinitionMappingComponentContent(eventType, xpp, owner, res)) 15195 unknownContent(xpp); 15196 eventType = nextNoWhitespace(xpp); 15197 } 15198 next(xpp); 15199 parseElementClose(res); 15200 return res; 15201 } 15202 15203 protected boolean parseStructureDefinitionStructureDefinitionMappingComponentContent(int eventType, XmlPullParser xpp, StructureDefinition owner, StructureDefinition.StructureDefinitionMappingComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15204 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identity")) { 15205 res.setIdentityElement(parseId(xpp)); 15206 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uri")) { 15207 res.setUriElement(parseUri(xpp)); 15208 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 15209 res.setNameElement(parseString(xpp)); 15210 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 15211 res.setCommentElement(parseString(xpp)); 15212 } else if (!parseBackboneContent(eventType, xpp, res)) 15213 return false; 15214 return true; 15215 } 15216 15217 protected StructureDefinition.StructureDefinitionSnapshotComponent parseStructureDefinitionStructureDefinitionSnapshotComponent(XmlPullParser xpp, StructureDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 15218 StructureDefinition.StructureDefinitionSnapshotComponent res = new StructureDefinition.StructureDefinitionSnapshotComponent(); 15219 parseBackboneAttributes(xpp, res); 15220 next(xpp); 15221 int eventType = nextNoWhitespace(xpp); 15222 while (eventType != XmlPullParser.END_TAG) { 15223 if (!parseStructureDefinitionStructureDefinitionSnapshotComponentContent(eventType, xpp, owner, res)) 15224 unknownContent(xpp); 15225 eventType = nextNoWhitespace(xpp); 15226 } 15227 next(xpp); 15228 parseElementClose(res); 15229 return res; 15230 } 15231 15232 protected boolean parseStructureDefinitionStructureDefinitionSnapshotComponentContent(int eventType, XmlPullParser xpp, StructureDefinition owner, StructureDefinition.StructureDefinitionSnapshotComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15233 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("element")) { 15234 res.getElement().add(parseElementDefinition(xpp)); 15235 } else if (!parseBackboneContent(eventType, xpp, res)) 15236 return false; 15237 return true; 15238 } 15239 15240 protected StructureDefinition.StructureDefinitionDifferentialComponent parseStructureDefinitionStructureDefinitionDifferentialComponent(XmlPullParser xpp, StructureDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 15241 StructureDefinition.StructureDefinitionDifferentialComponent res = new StructureDefinition.StructureDefinitionDifferentialComponent(); 15242 parseBackboneAttributes(xpp, res); 15243 next(xpp); 15244 int eventType = nextNoWhitespace(xpp); 15245 while (eventType != XmlPullParser.END_TAG) { 15246 if (!parseStructureDefinitionStructureDefinitionDifferentialComponentContent(eventType, xpp, owner, res)) 15247 unknownContent(xpp); 15248 eventType = nextNoWhitespace(xpp); 15249 } 15250 next(xpp); 15251 parseElementClose(res); 15252 return res; 15253 } 15254 15255 protected boolean parseStructureDefinitionStructureDefinitionDifferentialComponentContent(int eventType, XmlPullParser xpp, StructureDefinition owner, StructureDefinition.StructureDefinitionDifferentialComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15256 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("element")) { 15257 res.getElement().add(parseElementDefinition(xpp)); 15258 } else if (!parseBackboneContent(eventType, xpp, res)) 15259 return false; 15260 return true; 15261 } 15262 15263 protected StructureMap parseStructureMap(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15264 StructureMap res = new StructureMap(); 15265 parseDomainResourceAttributes(xpp, res); 15266 next(xpp); 15267 int eventType = nextNoWhitespace(xpp); 15268 while (eventType != XmlPullParser.END_TAG) { 15269 if (!parseStructureMapContent(eventType, xpp, res)) 15270 unknownContent(xpp); 15271 eventType = nextNoWhitespace(xpp); 15272 } 15273 next(xpp); 15274 parseElementClose(res); 15275 return res; 15276 } 15277 15278 protected boolean parseStructureMapContent(int eventType, XmlPullParser xpp, StructureMap res) throws XmlPullParserException, IOException, FHIRFormatError { 15279 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 15280 res.setUrlElement(parseUri(xpp)); 15281 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 15282 res.getIdentifier().add(parseIdentifier(xpp)); 15283 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 15284 res.setVersionElement(parseString(xpp)); 15285 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 15286 res.setNameElement(parseString(xpp)); 15287 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 15288 res.setTitleElement(parseString(xpp)); 15289 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 15290 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 15291 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 15292 res.setExperimentalElement(parseBoolean(xpp)); 15293 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 15294 res.setDateElement(parseDateTime(xpp)); 15295 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 15296 res.setPublisherElement(parseString(xpp)); 15297 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 15298 res.getContact().add(parseContactDetail(xpp)); 15299 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 15300 res.setDescriptionElement(parseMarkdown(xpp)); 15301 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 15302 res.getUseContext().add(parseUsageContext(xpp)); 15303 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 15304 res.getJurisdiction().add(parseCodeableConcept(xpp)); 15305 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 15306 res.setPurposeElement(parseMarkdown(xpp)); 15307 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 15308 res.setCopyrightElement(parseMarkdown(xpp)); 15309 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("structure")) { 15310 res.getStructure().add(parseStructureMapStructureMapStructureComponent(xpp, res)); 15311 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("import")) { 15312 res.getImport().add(parseUri(xpp)); 15313 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("group")) { 15314 res.getGroup().add(parseStructureMapStructureMapGroupComponent(xpp, res)); 15315 } else if (!parseDomainResourceContent(eventType, xpp, res)) 15316 return false; 15317 return true; 15318 } 15319 15320 protected StructureMap.StructureMapStructureComponent parseStructureMapStructureMapStructureComponent(XmlPullParser xpp, StructureMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 15321 StructureMap.StructureMapStructureComponent res = new StructureMap.StructureMapStructureComponent(); 15322 parseBackboneAttributes(xpp, res); 15323 next(xpp); 15324 int eventType = nextNoWhitespace(xpp); 15325 while (eventType != XmlPullParser.END_TAG) { 15326 if (!parseStructureMapStructureMapStructureComponentContent(eventType, xpp, owner, res)) 15327 unknownContent(xpp); 15328 eventType = nextNoWhitespace(xpp); 15329 } 15330 next(xpp); 15331 parseElementClose(res); 15332 return res; 15333 } 15334 15335 protected boolean parseStructureMapStructureMapStructureComponentContent(int eventType, XmlPullParser xpp, StructureMap owner, StructureMap.StructureMapStructureComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15336 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 15337 res.setUrlElement(parseUri(xpp)); 15338 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 15339 res.setModeElement(parseEnumeration(xpp, StructureMap.StructureMapModelMode.NULL, new StructureMap.StructureMapModelModeEnumFactory())); 15340 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("alias")) { 15341 res.setAliasElement(parseString(xpp)); 15342 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 15343 res.setDocumentationElement(parseString(xpp)); 15344 } else if (!parseBackboneContent(eventType, xpp, res)) 15345 return false; 15346 return true; 15347 } 15348 15349 protected StructureMap.StructureMapGroupComponent parseStructureMapStructureMapGroupComponent(XmlPullParser xpp, StructureMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 15350 StructureMap.StructureMapGroupComponent res = new StructureMap.StructureMapGroupComponent(); 15351 parseBackboneAttributes(xpp, res); 15352 next(xpp); 15353 int eventType = nextNoWhitespace(xpp); 15354 while (eventType != XmlPullParser.END_TAG) { 15355 if (!parseStructureMapStructureMapGroupComponentContent(eventType, xpp, owner, res)) 15356 unknownContent(xpp); 15357 eventType = nextNoWhitespace(xpp); 15358 } 15359 next(xpp); 15360 parseElementClose(res); 15361 return res; 15362 } 15363 15364 protected boolean parseStructureMapStructureMapGroupComponentContent(int eventType, XmlPullParser xpp, StructureMap owner, StructureMap.StructureMapGroupComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15365 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 15366 res.setNameElement(parseId(xpp)); 15367 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("extends")) { 15368 res.setExtendsElement(parseId(xpp)); 15369 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("typeMode")) { 15370 res.setTypeModeElement(parseEnumeration(xpp, StructureMap.StructureMapGroupTypeMode.NULL, new StructureMap.StructureMapGroupTypeModeEnumFactory())); 15371 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 15372 res.setDocumentationElement(parseString(xpp)); 15373 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("input")) { 15374 res.getInput().add(parseStructureMapStructureMapGroupInputComponent(xpp, owner)); 15375 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rule")) { 15376 res.getRule().add(parseStructureMapStructureMapGroupRuleComponent(xpp, owner)); 15377 } else if (!parseBackboneContent(eventType, xpp, res)) 15378 return false; 15379 return true; 15380 } 15381 15382 protected StructureMap.StructureMapGroupInputComponent parseStructureMapStructureMapGroupInputComponent(XmlPullParser xpp, StructureMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 15383 StructureMap.StructureMapGroupInputComponent res = new StructureMap.StructureMapGroupInputComponent(); 15384 parseBackboneAttributes(xpp, res); 15385 next(xpp); 15386 int eventType = nextNoWhitespace(xpp); 15387 while (eventType != XmlPullParser.END_TAG) { 15388 if (!parseStructureMapStructureMapGroupInputComponentContent(eventType, xpp, owner, res)) 15389 unknownContent(xpp); 15390 eventType = nextNoWhitespace(xpp); 15391 } 15392 next(xpp); 15393 parseElementClose(res); 15394 return res; 15395 } 15396 15397 protected boolean parseStructureMapStructureMapGroupInputComponentContent(int eventType, XmlPullParser xpp, StructureMap owner, StructureMap.StructureMapGroupInputComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15398 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 15399 res.setNameElement(parseId(xpp)); 15400 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 15401 res.setTypeElement(parseString(xpp)); 15402 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 15403 res.setModeElement(parseEnumeration(xpp, StructureMap.StructureMapInputMode.NULL, new StructureMap.StructureMapInputModeEnumFactory())); 15404 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 15405 res.setDocumentationElement(parseString(xpp)); 15406 } else if (!parseBackboneContent(eventType, xpp, res)) 15407 return false; 15408 return true; 15409 } 15410 15411 protected StructureMap.StructureMapGroupRuleComponent parseStructureMapStructureMapGroupRuleComponent(XmlPullParser xpp, StructureMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 15412 StructureMap.StructureMapGroupRuleComponent res = new StructureMap.StructureMapGroupRuleComponent(); 15413 parseBackboneAttributes(xpp, res); 15414 next(xpp); 15415 int eventType = nextNoWhitespace(xpp); 15416 while (eventType != XmlPullParser.END_TAG) { 15417 if (!parseStructureMapStructureMapGroupRuleComponentContent(eventType, xpp, owner, res)) 15418 unknownContent(xpp); 15419 eventType = nextNoWhitespace(xpp); 15420 } 15421 next(xpp); 15422 parseElementClose(res); 15423 return res; 15424 } 15425 15426 protected boolean parseStructureMapStructureMapGroupRuleComponentContent(int eventType, XmlPullParser xpp, StructureMap owner, StructureMap.StructureMapGroupRuleComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15427 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 15428 res.setNameElement(parseId(xpp)); 15429 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 15430 res.getSource().add(parseStructureMapStructureMapGroupRuleSourceComponent(xpp, owner)); 15431 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 15432 res.getTarget().add(parseStructureMapStructureMapGroupRuleTargetComponent(xpp, owner)); 15433 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rule")) { 15434 res.getRule().add(parseStructureMapStructureMapGroupRuleComponent(xpp, owner)); 15435 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dependent")) { 15436 res.getDependent().add(parseStructureMapStructureMapGroupRuleDependentComponent(xpp, owner)); 15437 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 15438 res.setDocumentationElement(parseString(xpp)); 15439 } else if (!parseBackboneContent(eventType, xpp, res)) 15440 return false; 15441 return true; 15442 } 15443 15444 protected StructureMap.StructureMapGroupRuleSourceComponent parseStructureMapStructureMapGroupRuleSourceComponent(XmlPullParser xpp, StructureMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 15445 StructureMap.StructureMapGroupRuleSourceComponent res = new StructureMap.StructureMapGroupRuleSourceComponent(); 15446 parseBackboneAttributes(xpp, res); 15447 next(xpp); 15448 int eventType = nextNoWhitespace(xpp); 15449 while (eventType != XmlPullParser.END_TAG) { 15450 if (!parseStructureMapStructureMapGroupRuleSourceComponentContent(eventType, xpp, owner, res)) 15451 unknownContent(xpp); 15452 eventType = nextNoWhitespace(xpp); 15453 } 15454 next(xpp); 15455 parseElementClose(res); 15456 return res; 15457 } 15458 15459 protected boolean parseStructureMapStructureMapGroupRuleSourceComponentContent(int eventType, XmlPullParser xpp, StructureMap owner, StructureMap.StructureMapGroupRuleSourceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15460 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 15461 res.setContextElement(parseId(xpp)); 15462 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("min")) { 15463 res.setMinElement(parseInteger(xpp)); 15464 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("max")) { 15465 res.setMaxElement(parseString(xpp)); 15466 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 15467 res.setTypeElement(parseString(xpp)); 15468 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "defaultValue")) { 15469 res.setDefaultValue(parseType("defaultValue", xpp)); 15470 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("element")) { 15471 res.setElementElement(parseString(xpp)); 15472 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("listMode")) { 15473 res.setListModeElement(parseEnumeration(xpp, StructureMap.StructureMapSourceListMode.NULL, new StructureMap.StructureMapSourceListModeEnumFactory())); 15474 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("variable")) { 15475 res.setVariableElement(parseId(xpp)); 15476 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 15477 res.setConditionElement(parseString(xpp)); 15478 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("check")) { 15479 res.setCheckElement(parseString(xpp)); 15480 } else if (!parseBackboneContent(eventType, xpp, res)) 15481 return false; 15482 return true; 15483 } 15484 15485 protected StructureMap.StructureMapGroupRuleTargetComponent parseStructureMapStructureMapGroupRuleTargetComponent(XmlPullParser xpp, StructureMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 15486 StructureMap.StructureMapGroupRuleTargetComponent res = new StructureMap.StructureMapGroupRuleTargetComponent(); 15487 parseBackboneAttributes(xpp, res); 15488 next(xpp); 15489 int eventType = nextNoWhitespace(xpp); 15490 while (eventType != XmlPullParser.END_TAG) { 15491 if (!parseStructureMapStructureMapGroupRuleTargetComponentContent(eventType, xpp, owner, res)) 15492 unknownContent(xpp); 15493 eventType = nextNoWhitespace(xpp); 15494 } 15495 next(xpp); 15496 parseElementClose(res); 15497 return res; 15498 } 15499 15500 protected boolean parseStructureMapStructureMapGroupRuleTargetComponentContent(int eventType, XmlPullParser xpp, StructureMap owner, StructureMap.StructureMapGroupRuleTargetComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15501 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 15502 res.setContextElement(parseId(xpp)); 15503 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contextType")) { 15504 res.setContextTypeElement(parseEnumeration(xpp, StructureMap.StructureMapContextType.NULL, new StructureMap.StructureMapContextTypeEnumFactory())); 15505 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("element")) { 15506 res.setElementElement(parseString(xpp)); 15507 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("variable")) { 15508 res.setVariableElement(parseId(xpp)); 15509 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("listMode")) { 15510 res.getListMode().add(parseEnumeration(xpp, StructureMap.StructureMapTargetListMode.NULL, new StructureMap.StructureMapTargetListModeEnumFactory())); 15511 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("listRuleId")) { 15512 res.setListRuleIdElement(parseId(xpp)); 15513 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("transform")) { 15514 res.setTransformElement(parseEnumeration(xpp, StructureMap.StructureMapTransform.NULL, new StructureMap.StructureMapTransformEnumFactory())); 15515 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameter")) { 15516 res.getParameter().add(parseStructureMapStructureMapGroupRuleTargetParameterComponent(xpp, owner)); 15517 } else if (!parseBackboneContent(eventType, xpp, res)) 15518 return false; 15519 return true; 15520 } 15521 15522 protected StructureMap.StructureMapGroupRuleTargetParameterComponent parseStructureMapStructureMapGroupRuleTargetParameterComponent(XmlPullParser xpp, StructureMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 15523 StructureMap.StructureMapGroupRuleTargetParameterComponent res = new StructureMap.StructureMapGroupRuleTargetParameterComponent(); 15524 parseBackboneAttributes(xpp, res); 15525 next(xpp); 15526 int eventType = nextNoWhitespace(xpp); 15527 while (eventType != XmlPullParser.END_TAG) { 15528 if (!parseStructureMapStructureMapGroupRuleTargetParameterComponentContent(eventType, xpp, owner, res)) 15529 unknownContent(xpp); 15530 eventType = nextNoWhitespace(xpp); 15531 } 15532 next(xpp); 15533 parseElementClose(res); 15534 return res; 15535 } 15536 15537 protected boolean parseStructureMapStructureMapGroupRuleTargetParameterComponentContent(int eventType, XmlPullParser xpp, StructureMap owner, StructureMap.StructureMapGroupRuleTargetParameterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15538 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 15539 res.setValue(parseType("value", xpp)); 15540 } else if (!parseBackboneContent(eventType, xpp, res)) 15541 return false; 15542 return true; 15543 } 15544 15545 protected StructureMap.StructureMapGroupRuleDependentComponent parseStructureMapStructureMapGroupRuleDependentComponent(XmlPullParser xpp, StructureMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 15546 StructureMap.StructureMapGroupRuleDependentComponent res = new StructureMap.StructureMapGroupRuleDependentComponent(); 15547 parseBackboneAttributes(xpp, res); 15548 next(xpp); 15549 int eventType = nextNoWhitespace(xpp); 15550 while (eventType != XmlPullParser.END_TAG) { 15551 if (!parseStructureMapStructureMapGroupRuleDependentComponentContent(eventType, xpp, owner, res)) 15552 unknownContent(xpp); 15553 eventType = nextNoWhitespace(xpp); 15554 } 15555 next(xpp); 15556 parseElementClose(res); 15557 return res; 15558 } 15559 15560 protected boolean parseStructureMapStructureMapGroupRuleDependentComponentContent(int eventType, XmlPullParser xpp, StructureMap owner, StructureMap.StructureMapGroupRuleDependentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15561 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 15562 res.setNameElement(parseId(xpp)); 15563 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("variable")) { 15564 res.getVariable().add(parseString(xpp)); 15565 } else if (!parseBackboneContent(eventType, xpp, res)) 15566 return false; 15567 return true; 15568 } 15569 15570 protected Subscription parseSubscription(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15571 Subscription res = new Subscription(); 15572 parseDomainResourceAttributes(xpp, res); 15573 next(xpp); 15574 int eventType = nextNoWhitespace(xpp); 15575 while (eventType != XmlPullParser.END_TAG) { 15576 if (!parseSubscriptionContent(eventType, xpp, res)) 15577 unknownContent(xpp); 15578 eventType = nextNoWhitespace(xpp); 15579 } 15580 next(xpp); 15581 parseElementClose(res); 15582 return res; 15583 } 15584 15585 protected boolean parseSubscriptionContent(int eventType, XmlPullParser xpp, Subscription res) throws XmlPullParserException, IOException, FHIRFormatError { 15586 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 15587 res.setStatusElement(parseEnumeration(xpp, Subscription.SubscriptionStatus.NULL, new Subscription.SubscriptionStatusEnumFactory())); 15588 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 15589 res.getContact().add(parseContactPoint(xpp)); 15590 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("end")) { 15591 res.setEndElement(parseInstant(xpp)); 15592 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 15593 res.setReasonElement(parseString(xpp)); 15594 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("criteria")) { 15595 res.setCriteriaElement(parseString(xpp)); 15596 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("error")) { 15597 res.setErrorElement(parseString(xpp)); 15598 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("channel")) { 15599 res.setChannel(parseSubscriptionSubscriptionChannelComponent(xpp, res)); 15600 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("tag")) { 15601 res.getTag().add(parseCoding(xpp)); 15602 } else if (!parseDomainResourceContent(eventType, xpp, res)) 15603 return false; 15604 return true; 15605 } 15606 15607 protected Subscription.SubscriptionChannelComponent parseSubscriptionSubscriptionChannelComponent(XmlPullParser xpp, Subscription owner) throws XmlPullParserException, IOException, FHIRFormatError { 15608 Subscription.SubscriptionChannelComponent res = new Subscription.SubscriptionChannelComponent(); 15609 parseBackboneAttributes(xpp, res); 15610 next(xpp); 15611 int eventType = nextNoWhitespace(xpp); 15612 while (eventType != XmlPullParser.END_TAG) { 15613 if (!parseSubscriptionSubscriptionChannelComponentContent(eventType, xpp, owner, res)) 15614 unknownContent(xpp); 15615 eventType = nextNoWhitespace(xpp); 15616 } 15617 next(xpp); 15618 parseElementClose(res); 15619 return res; 15620 } 15621 15622 protected boolean parseSubscriptionSubscriptionChannelComponentContent(int eventType, XmlPullParser xpp, Subscription owner, Subscription.SubscriptionChannelComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15623 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 15624 res.setTypeElement(parseEnumeration(xpp, Subscription.SubscriptionChannelType.NULL, new Subscription.SubscriptionChannelTypeEnumFactory())); 15625 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 15626 res.setEndpointElement(parseUri(xpp)); 15627 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payload")) { 15628 res.setPayloadElement(parseString(xpp)); 15629 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("header")) { 15630 res.getHeader().add(parseString(xpp)); 15631 } else if (!parseBackboneContent(eventType, xpp, res)) 15632 return false; 15633 return true; 15634 } 15635 15636 protected Substance parseSubstance(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15637 Substance res = new Substance(); 15638 parseDomainResourceAttributes(xpp, res); 15639 next(xpp); 15640 int eventType = nextNoWhitespace(xpp); 15641 while (eventType != XmlPullParser.END_TAG) { 15642 if (!parseSubstanceContent(eventType, xpp, res)) 15643 unknownContent(xpp); 15644 eventType = nextNoWhitespace(xpp); 15645 } 15646 next(xpp); 15647 parseElementClose(res); 15648 return res; 15649 } 15650 15651 protected boolean parseSubstanceContent(int eventType, XmlPullParser xpp, Substance res) throws XmlPullParserException, IOException, FHIRFormatError { 15652 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 15653 res.getIdentifier().add(parseIdentifier(xpp)); 15654 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 15655 res.setStatusElement(parseEnumeration(xpp, Substance.FHIRSubstanceStatus.NULL, new Substance.FHIRSubstanceStatusEnumFactory())); 15656 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 15657 res.getCategory().add(parseCodeableConcept(xpp)); 15658 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 15659 res.setCode(parseCodeableConcept(xpp)); 15660 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 15661 res.setDescriptionElement(parseString(xpp)); 15662 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instance")) { 15663 res.getInstance().add(parseSubstanceSubstanceInstanceComponent(xpp, res)); 15664 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ingredient")) { 15665 res.getIngredient().add(parseSubstanceSubstanceIngredientComponent(xpp, res)); 15666 } else if (!parseDomainResourceContent(eventType, xpp, res)) 15667 return false; 15668 return true; 15669 } 15670 15671 protected Substance.SubstanceInstanceComponent parseSubstanceSubstanceInstanceComponent(XmlPullParser xpp, Substance owner) throws XmlPullParserException, IOException, FHIRFormatError { 15672 Substance.SubstanceInstanceComponent res = new Substance.SubstanceInstanceComponent(); 15673 parseBackboneAttributes(xpp, res); 15674 next(xpp); 15675 int eventType = nextNoWhitespace(xpp); 15676 while (eventType != XmlPullParser.END_TAG) { 15677 if (!parseSubstanceSubstanceInstanceComponentContent(eventType, xpp, owner, res)) 15678 unknownContent(xpp); 15679 eventType = nextNoWhitespace(xpp); 15680 } 15681 next(xpp); 15682 parseElementClose(res); 15683 return res; 15684 } 15685 15686 protected boolean parseSubstanceSubstanceInstanceComponentContent(int eventType, XmlPullParser xpp, Substance owner, Substance.SubstanceInstanceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15687 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 15688 res.setIdentifier(parseIdentifier(xpp)); 15689 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expiry")) { 15690 res.setExpiryElement(parseDateTime(xpp)); 15691 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 15692 res.setQuantity(parseSimpleQuantity(xpp)); 15693 } else if (!parseBackboneContent(eventType, xpp, res)) 15694 return false; 15695 return true; 15696 } 15697 15698 protected Substance.SubstanceIngredientComponent parseSubstanceSubstanceIngredientComponent(XmlPullParser xpp, Substance owner) throws XmlPullParserException, IOException, FHIRFormatError { 15699 Substance.SubstanceIngredientComponent res = new Substance.SubstanceIngredientComponent(); 15700 parseBackboneAttributes(xpp, res); 15701 next(xpp); 15702 int eventType = nextNoWhitespace(xpp); 15703 while (eventType != XmlPullParser.END_TAG) { 15704 if (!parseSubstanceSubstanceIngredientComponentContent(eventType, xpp, owner, res)) 15705 unknownContent(xpp); 15706 eventType = nextNoWhitespace(xpp); 15707 } 15708 next(xpp); 15709 parseElementClose(res); 15710 return res; 15711 } 15712 15713 protected boolean parseSubstanceSubstanceIngredientComponentContent(int eventType, XmlPullParser xpp, Substance owner, Substance.SubstanceIngredientComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15714 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 15715 res.setQuantity(parseRatio(xpp)); 15716 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "substance")) { 15717 res.setSubstance(parseType("substance", xpp)); 15718 } else if (!parseBackboneContent(eventType, xpp, res)) 15719 return false; 15720 return true; 15721 } 15722 15723 protected SupplyDelivery parseSupplyDelivery(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15724 SupplyDelivery res = new SupplyDelivery(); 15725 parseDomainResourceAttributes(xpp, res); 15726 next(xpp); 15727 int eventType = nextNoWhitespace(xpp); 15728 while (eventType != XmlPullParser.END_TAG) { 15729 if (!parseSupplyDeliveryContent(eventType, xpp, res)) 15730 unknownContent(xpp); 15731 eventType = nextNoWhitespace(xpp); 15732 } 15733 next(xpp); 15734 parseElementClose(res); 15735 return res; 15736 } 15737 15738 protected boolean parseSupplyDeliveryContent(int eventType, XmlPullParser xpp, SupplyDelivery res) throws XmlPullParserException, IOException, FHIRFormatError { 15739 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 15740 res.setIdentifier(parseIdentifier(xpp)); 15741 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 15742 res.getBasedOn().add(parseReference(xpp)); 15743 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 15744 res.getPartOf().add(parseReference(xpp)); 15745 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 15746 res.setStatusElement(parseEnumeration(xpp, SupplyDelivery.SupplyDeliveryStatus.NULL, new SupplyDelivery.SupplyDeliveryStatusEnumFactory())); 15747 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 15748 res.setPatient(parseReference(xpp)); 15749 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 15750 res.setType(parseCodeableConcept(xpp)); 15751 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("suppliedItem")) { 15752 res.setSuppliedItem(parseSupplyDeliverySupplyDeliverySuppliedItemComponent(xpp, res)); 15753 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "occurrence")) { 15754 res.setOccurrence(parseType("occurrence", xpp)); 15755 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supplier")) { 15756 res.setSupplier(parseReference(xpp)); 15757 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 15758 res.setDestination(parseReference(xpp)); 15759 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("receiver")) { 15760 res.getReceiver().add(parseReference(xpp)); 15761 } else if (!parseDomainResourceContent(eventType, xpp, res)) 15762 return false; 15763 return true; 15764 } 15765 15766 protected SupplyDelivery.SupplyDeliverySuppliedItemComponent parseSupplyDeliverySupplyDeliverySuppliedItemComponent(XmlPullParser xpp, SupplyDelivery owner) throws XmlPullParserException, IOException, FHIRFormatError { 15767 SupplyDelivery.SupplyDeliverySuppliedItemComponent res = new SupplyDelivery.SupplyDeliverySuppliedItemComponent(); 15768 parseBackboneAttributes(xpp, res); 15769 next(xpp); 15770 int eventType = nextNoWhitespace(xpp); 15771 while (eventType != XmlPullParser.END_TAG) { 15772 if (!parseSupplyDeliverySupplyDeliverySuppliedItemComponentContent(eventType, xpp, owner, res)) 15773 unknownContent(xpp); 15774 eventType = nextNoWhitespace(xpp); 15775 } 15776 next(xpp); 15777 parseElementClose(res); 15778 return res; 15779 } 15780 15781 protected boolean parseSupplyDeliverySupplyDeliverySuppliedItemComponentContent(int eventType, XmlPullParser xpp, SupplyDelivery owner, SupplyDelivery.SupplyDeliverySuppliedItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15782 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 15783 res.setQuantity(parseSimpleQuantity(xpp)); 15784 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "item")) { 15785 res.setItem(parseType("item", xpp)); 15786 } else if (!parseBackboneContent(eventType, xpp, res)) 15787 return false; 15788 return true; 15789 } 15790 15791 protected SupplyRequest parseSupplyRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15792 SupplyRequest res = new SupplyRequest(); 15793 parseDomainResourceAttributes(xpp, res); 15794 next(xpp); 15795 int eventType = nextNoWhitespace(xpp); 15796 while (eventType != XmlPullParser.END_TAG) { 15797 if (!parseSupplyRequestContent(eventType, xpp, res)) 15798 unknownContent(xpp); 15799 eventType = nextNoWhitespace(xpp); 15800 } 15801 next(xpp); 15802 parseElementClose(res); 15803 return res; 15804 } 15805 15806 protected boolean parseSupplyRequestContent(int eventType, XmlPullParser xpp, SupplyRequest res) throws XmlPullParserException, IOException, FHIRFormatError { 15807 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 15808 res.setIdentifier(parseIdentifier(xpp)); 15809 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 15810 res.setStatusElement(parseEnumeration(xpp, SupplyRequest.SupplyRequestStatus.NULL, new SupplyRequest.SupplyRequestStatusEnumFactory())); 15811 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 15812 res.setCategory(parseCodeableConcept(xpp)); 15813 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 15814 res.setPriorityElement(parseEnumeration(xpp, SupplyRequest.RequestPriority.NULL, new SupplyRequest.RequestPriorityEnumFactory())); 15815 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orderedItem")) { 15816 res.setOrderedItem(parseSupplyRequestSupplyRequestOrderedItemComponent(xpp, res)); 15817 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "occurrence")) { 15818 res.setOccurrence(parseType("occurrence", xpp)); 15819 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authoredOn")) { 15820 res.setAuthoredOnElement(parseDateTime(xpp)); 15821 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requester")) { 15822 res.setRequester(parseSupplyRequestSupplyRequestRequesterComponent(xpp, res)); 15823 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supplier")) { 15824 res.getSupplier().add(parseReference(xpp)); 15825 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "reason")) { 15826 res.setReason(parseType("reason", xpp)); 15827 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("deliverFrom")) { 15828 res.setDeliverFrom(parseReference(xpp)); 15829 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("deliverTo")) { 15830 res.setDeliverTo(parseReference(xpp)); 15831 } else if (!parseDomainResourceContent(eventType, xpp, res)) 15832 return false; 15833 return true; 15834 } 15835 15836 protected SupplyRequest.SupplyRequestOrderedItemComponent parseSupplyRequestSupplyRequestOrderedItemComponent(XmlPullParser xpp, SupplyRequest owner) throws XmlPullParserException, IOException, FHIRFormatError { 15837 SupplyRequest.SupplyRequestOrderedItemComponent res = new SupplyRequest.SupplyRequestOrderedItemComponent(); 15838 parseBackboneAttributes(xpp, res); 15839 next(xpp); 15840 int eventType = nextNoWhitespace(xpp); 15841 while (eventType != XmlPullParser.END_TAG) { 15842 if (!parseSupplyRequestSupplyRequestOrderedItemComponentContent(eventType, xpp, owner, res)) 15843 unknownContent(xpp); 15844 eventType = nextNoWhitespace(xpp); 15845 } 15846 next(xpp); 15847 parseElementClose(res); 15848 return res; 15849 } 15850 15851 protected boolean parseSupplyRequestSupplyRequestOrderedItemComponentContent(int eventType, XmlPullParser xpp, SupplyRequest owner, SupplyRequest.SupplyRequestOrderedItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15852 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 15853 res.setQuantity(parseQuantity(xpp)); 15854 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "item")) { 15855 res.setItem(parseType("item", xpp)); 15856 } else if (!parseBackboneContent(eventType, xpp, res)) 15857 return false; 15858 return true; 15859 } 15860 15861 protected SupplyRequest.SupplyRequestRequesterComponent parseSupplyRequestSupplyRequestRequesterComponent(XmlPullParser xpp, SupplyRequest owner) throws XmlPullParserException, IOException, FHIRFormatError { 15862 SupplyRequest.SupplyRequestRequesterComponent res = new SupplyRequest.SupplyRequestRequesterComponent(); 15863 parseBackboneAttributes(xpp, res); 15864 next(xpp); 15865 int eventType = nextNoWhitespace(xpp); 15866 while (eventType != XmlPullParser.END_TAG) { 15867 if (!parseSupplyRequestSupplyRequestRequesterComponentContent(eventType, xpp, owner, res)) 15868 unknownContent(xpp); 15869 eventType = nextNoWhitespace(xpp); 15870 } 15871 next(xpp); 15872 parseElementClose(res); 15873 return res; 15874 } 15875 15876 protected boolean parseSupplyRequestSupplyRequestRequesterComponentContent(int eventType, XmlPullParser xpp, SupplyRequest owner, SupplyRequest.SupplyRequestRequesterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15877 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { 15878 res.setAgent(parseReference(xpp)); 15879 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onBehalfOf")) { 15880 res.setOnBehalfOf(parseReference(xpp)); 15881 } else if (!parseBackboneContent(eventType, xpp, res)) 15882 return false; 15883 return true; 15884 } 15885 15886 protected Task parseTask(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15887 Task res = new Task(); 15888 parseDomainResourceAttributes(xpp, res); 15889 next(xpp); 15890 int eventType = nextNoWhitespace(xpp); 15891 while (eventType != XmlPullParser.END_TAG) { 15892 if (!parseTaskContent(eventType, xpp, res)) 15893 unknownContent(xpp); 15894 eventType = nextNoWhitespace(xpp); 15895 } 15896 next(xpp); 15897 parseElementClose(res); 15898 return res; 15899 } 15900 15901 protected boolean parseTaskContent(int eventType, XmlPullParser xpp, Task res) throws XmlPullParserException, IOException, FHIRFormatError { 15902 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 15903 res.getIdentifier().add(parseIdentifier(xpp)); 15904 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "definition")) { 15905 res.setDefinition(parseType("definition", xpp)); 15906 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 15907 res.getBasedOn().add(parseReference(xpp)); 15908 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("groupIdentifier")) { 15909 res.setGroupIdentifier(parseIdentifier(xpp)); 15910 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 15911 res.getPartOf().add(parseReference(xpp)); 15912 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 15913 res.setStatusElement(parseEnumeration(xpp, Task.TaskStatus.NULL, new Task.TaskStatusEnumFactory())); 15914 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusReason")) { 15915 res.setStatusReason(parseCodeableConcept(xpp)); 15916 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("businessStatus")) { 15917 res.setBusinessStatus(parseCodeableConcept(xpp)); 15918 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intent")) { 15919 res.setIntentElement(parseEnumeration(xpp, Task.TaskIntent.NULL, new Task.TaskIntentEnumFactory())); 15920 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 15921 res.setPriorityElement(parseEnumeration(xpp, Task.TaskPriority.NULL, new Task.TaskPriorityEnumFactory())); 15922 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 15923 res.setCode(parseCodeableConcept(xpp)); 15924 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 15925 res.setDescriptionElement(parseString(xpp)); 15926 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focus")) { 15927 res.setFocus(parseReference(xpp)); 15928 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("for")) { 15929 res.setFor(parseReference(xpp)); 15930 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 15931 res.setContext(parseReference(xpp)); 15932 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("executionPeriod")) { 15933 res.setExecutionPeriod(parsePeriod(xpp)); 15934 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authoredOn")) { 15935 res.setAuthoredOnElement(parseDateTime(xpp)); 15936 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastModified")) { 15937 res.setLastModifiedElement(parseDateTime(xpp)); 15938 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requester")) { 15939 res.setRequester(parseTaskTaskRequesterComponent(xpp, res)); 15940 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performerType")) { 15941 res.getPerformerType().add(parseCodeableConcept(xpp)); 15942 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("owner")) { 15943 res.setOwner(parseReference(xpp)); 15944 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 15945 res.setReason(parseCodeableConcept(xpp)); 15946 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 15947 res.getNote().add(parseAnnotation(xpp)); 15948 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relevantHistory")) { 15949 res.getRelevantHistory().add(parseReference(xpp)); 15950 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("restriction")) { 15951 res.setRestriction(parseTaskTaskRestrictionComponent(xpp, res)); 15952 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("input")) { 15953 res.getInput().add(parseTaskParameterComponent(xpp, res)); 15954 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("output")) { 15955 res.getOutput().add(parseTaskTaskOutputComponent(xpp, res)); 15956 } else if (!parseDomainResourceContent(eventType, xpp, res)) 15957 return false; 15958 return true; 15959 } 15960 15961 protected Task.TaskRequesterComponent parseTaskTaskRequesterComponent(XmlPullParser xpp, Task owner) throws XmlPullParserException, IOException, FHIRFormatError { 15962 Task.TaskRequesterComponent res = new Task.TaskRequesterComponent(); 15963 parseBackboneAttributes(xpp, res); 15964 next(xpp); 15965 int eventType = nextNoWhitespace(xpp); 15966 while (eventType != XmlPullParser.END_TAG) { 15967 if (!parseTaskTaskRequesterComponentContent(eventType, xpp, owner, res)) 15968 unknownContent(xpp); 15969 eventType = nextNoWhitespace(xpp); 15970 } 15971 next(xpp); 15972 parseElementClose(res); 15973 return res; 15974 } 15975 15976 protected boolean parseTaskTaskRequesterComponentContent(int eventType, XmlPullParser xpp, Task owner, Task.TaskRequesterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15977 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { 15978 res.setAgent(parseReference(xpp)); 15979 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onBehalfOf")) { 15980 res.setOnBehalfOf(parseReference(xpp)); 15981 } else if (!parseBackboneContent(eventType, xpp, res)) 15982 return false; 15983 return true; 15984 } 15985 15986 protected Task.TaskRestrictionComponent parseTaskTaskRestrictionComponent(XmlPullParser xpp, Task owner) throws XmlPullParserException, IOException, FHIRFormatError { 15987 Task.TaskRestrictionComponent res = new Task.TaskRestrictionComponent(); 15988 parseBackboneAttributes(xpp, res); 15989 next(xpp); 15990 int eventType = nextNoWhitespace(xpp); 15991 while (eventType != XmlPullParser.END_TAG) { 15992 if (!parseTaskTaskRestrictionComponentContent(eventType, xpp, owner, res)) 15993 unknownContent(xpp); 15994 eventType = nextNoWhitespace(xpp); 15995 } 15996 next(xpp); 15997 parseElementClose(res); 15998 return res; 15999 } 16000 16001 protected boolean parseTaskTaskRestrictionComponentContent(int eventType, XmlPullParser xpp, Task owner, Task.TaskRestrictionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16002 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("repetitions")) { 16003 res.setRepetitionsElement(parsePositiveInt(xpp)); 16004 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 16005 res.setPeriod(parsePeriod(xpp)); 16006 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recipient")) { 16007 res.getRecipient().add(parseReference(xpp)); 16008 } else if (!parseBackboneContent(eventType, xpp, res)) 16009 return false; 16010 return true; 16011 } 16012 16013 protected Task.ParameterComponent parseTaskParameterComponent(XmlPullParser xpp, Task owner) throws XmlPullParserException, IOException, FHIRFormatError { 16014 Task.ParameterComponent res = new Task.ParameterComponent(); 16015 parseBackboneAttributes(xpp, res); 16016 next(xpp); 16017 int eventType = nextNoWhitespace(xpp); 16018 while (eventType != XmlPullParser.END_TAG) { 16019 if (!parseTaskParameterComponentContent(eventType, xpp, owner, res)) 16020 unknownContent(xpp); 16021 eventType = nextNoWhitespace(xpp); 16022 } 16023 next(xpp); 16024 parseElementClose(res); 16025 return res; 16026 } 16027 16028 protected boolean parseTaskParameterComponentContent(int eventType, XmlPullParser xpp, Task owner, Task.ParameterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16029 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 16030 res.setType(parseCodeableConcept(xpp)); 16031 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 16032 res.setValue(parseType("value", xpp)); 16033 } else if (!parseBackboneContent(eventType, xpp, res)) 16034 return false; 16035 return true; 16036 } 16037 16038 protected Task.TaskOutputComponent parseTaskTaskOutputComponent(XmlPullParser xpp, Task owner) throws XmlPullParserException, IOException, FHIRFormatError { 16039 Task.TaskOutputComponent res = new Task.TaskOutputComponent(); 16040 parseBackboneAttributes(xpp, res); 16041 next(xpp); 16042 int eventType = nextNoWhitespace(xpp); 16043 while (eventType != XmlPullParser.END_TAG) { 16044 if (!parseTaskTaskOutputComponentContent(eventType, xpp, owner, res)) 16045 unknownContent(xpp); 16046 eventType = nextNoWhitespace(xpp); 16047 } 16048 next(xpp); 16049 parseElementClose(res); 16050 return res; 16051 } 16052 16053 protected boolean parseTaskTaskOutputComponentContent(int eventType, XmlPullParser xpp, Task owner, Task.TaskOutputComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16054 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 16055 res.setType(parseCodeableConcept(xpp)); 16056 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 16057 res.setValue(parseType("value", xpp)); 16058 } else if (!parseBackboneContent(eventType, xpp, res)) 16059 return false; 16060 return true; 16061 } 16062 16063 protected TestReport parseTestReport(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 16064 TestReport res = new TestReport(); 16065 parseDomainResourceAttributes(xpp, res); 16066 next(xpp); 16067 int eventType = nextNoWhitespace(xpp); 16068 while (eventType != XmlPullParser.END_TAG) { 16069 if (!parseTestReportContent(eventType, xpp, res)) 16070 unknownContent(xpp); 16071 eventType = nextNoWhitespace(xpp); 16072 } 16073 next(xpp); 16074 parseElementClose(res); 16075 return res; 16076 } 16077 16078 protected boolean parseTestReportContent(int eventType, XmlPullParser xpp, TestReport res) throws XmlPullParserException, IOException, FHIRFormatError { 16079 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 16080 res.setIdentifier(parseIdentifier(xpp)); 16081 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 16082 res.setNameElement(parseString(xpp)); 16083 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 16084 res.setStatusElement(parseEnumeration(xpp, TestReport.TestReportStatus.NULL, new TestReport.TestReportStatusEnumFactory())); 16085 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("testScript")) { 16086 res.setTestScript(parseReference(xpp)); 16087 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("result")) { 16088 res.setResultElement(parseEnumeration(xpp, TestReport.TestReportResult.NULL, new TestReport.TestReportResultEnumFactory())); 16089 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("score")) { 16090 res.setScoreElement(parseDecimal(xpp)); 16091 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("tester")) { 16092 res.setTesterElement(parseString(xpp)); 16093 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issued")) { 16094 res.setIssuedElement(parseDateTime(xpp)); 16095 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 16096 res.getParticipant().add(parseTestReportTestReportParticipantComponent(xpp, res)); 16097 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("setup")) { 16098 res.setSetup(parseTestReportTestReportSetupComponent(xpp, res)); 16099 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("test")) { 16100 res.getTest().add(parseTestReportTestReportTestComponent(xpp, res)); 16101 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("teardown")) { 16102 res.setTeardown(parseTestReportTestReportTeardownComponent(xpp, res)); 16103 } else if (!parseDomainResourceContent(eventType, xpp, res)) 16104 return false; 16105 return true; 16106 } 16107 16108 protected TestReport.TestReportParticipantComponent parseTestReportTestReportParticipantComponent(XmlPullParser xpp, TestReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 16109 TestReport.TestReportParticipantComponent res = new TestReport.TestReportParticipantComponent(); 16110 parseBackboneAttributes(xpp, res); 16111 next(xpp); 16112 int eventType = nextNoWhitespace(xpp); 16113 while (eventType != XmlPullParser.END_TAG) { 16114 if (!parseTestReportTestReportParticipantComponentContent(eventType, xpp, owner, res)) 16115 unknownContent(xpp); 16116 eventType = nextNoWhitespace(xpp); 16117 } 16118 next(xpp); 16119 parseElementClose(res); 16120 return res; 16121 } 16122 16123 protected boolean parseTestReportTestReportParticipantComponentContent(int eventType, XmlPullParser xpp, TestReport owner, TestReport.TestReportParticipantComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16124 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 16125 res.setTypeElement(parseEnumeration(xpp, TestReport.TestReportParticipantType.NULL, new TestReport.TestReportParticipantTypeEnumFactory())); 16126 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uri")) { 16127 res.setUriElement(parseUri(xpp)); 16128 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 16129 res.setDisplayElement(parseString(xpp)); 16130 } else if (!parseBackboneContent(eventType, xpp, res)) 16131 return false; 16132 return true; 16133 } 16134 16135 protected TestReport.TestReportSetupComponent parseTestReportTestReportSetupComponent(XmlPullParser xpp, TestReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 16136 TestReport.TestReportSetupComponent res = new TestReport.TestReportSetupComponent(); 16137 parseBackboneAttributes(xpp, res); 16138 next(xpp); 16139 int eventType = nextNoWhitespace(xpp); 16140 while (eventType != XmlPullParser.END_TAG) { 16141 if (!parseTestReportTestReportSetupComponentContent(eventType, xpp, owner, res)) 16142 unknownContent(xpp); 16143 eventType = nextNoWhitespace(xpp); 16144 } 16145 next(xpp); 16146 parseElementClose(res); 16147 return res; 16148 } 16149 16150 protected boolean parseTestReportTestReportSetupComponentContent(int eventType, XmlPullParser xpp, TestReport owner, TestReport.TestReportSetupComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16151 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 16152 res.getAction().add(parseTestReportSetupActionComponent(xpp, owner)); 16153 } else if (!parseBackboneContent(eventType, xpp, res)) 16154 return false; 16155 return true; 16156 } 16157 16158 protected TestReport.SetupActionComponent parseTestReportSetupActionComponent(XmlPullParser xpp, TestReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 16159 TestReport.SetupActionComponent res = new TestReport.SetupActionComponent(); 16160 parseBackboneAttributes(xpp, res); 16161 next(xpp); 16162 int eventType = nextNoWhitespace(xpp); 16163 while (eventType != XmlPullParser.END_TAG) { 16164 if (!parseTestReportSetupActionComponentContent(eventType, xpp, owner, res)) 16165 unknownContent(xpp); 16166 eventType = nextNoWhitespace(xpp); 16167 } 16168 next(xpp); 16169 parseElementClose(res); 16170 return res; 16171 } 16172 16173 protected boolean parseTestReportSetupActionComponentContent(int eventType, XmlPullParser xpp, TestReport owner, TestReport.SetupActionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16174 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operation")) { 16175 res.setOperation(parseTestReportSetupActionOperationComponent(xpp, owner)); 16176 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assert")) { 16177 res.setAssert(parseTestReportSetupActionAssertComponent(xpp, owner)); 16178 } else if (!parseBackboneContent(eventType, xpp, res)) 16179 return false; 16180 return true; 16181 } 16182 16183 protected TestReport.SetupActionOperationComponent parseTestReportSetupActionOperationComponent(XmlPullParser xpp, TestReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 16184 TestReport.SetupActionOperationComponent res = new TestReport.SetupActionOperationComponent(); 16185 parseBackboneAttributes(xpp, res); 16186 next(xpp); 16187 int eventType = nextNoWhitespace(xpp); 16188 while (eventType != XmlPullParser.END_TAG) { 16189 if (!parseTestReportSetupActionOperationComponentContent(eventType, xpp, owner, res)) 16190 unknownContent(xpp); 16191 eventType = nextNoWhitespace(xpp); 16192 } 16193 next(xpp); 16194 parseElementClose(res); 16195 return res; 16196 } 16197 16198 protected boolean parseTestReportSetupActionOperationComponentContent(int eventType, XmlPullParser xpp, TestReport owner, TestReport.SetupActionOperationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16199 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("result")) { 16200 res.setResultElement(parseEnumeration(xpp, TestReport.TestReportActionResult.NULL, new TestReport.TestReportActionResultEnumFactory())); 16201 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("message")) { 16202 res.setMessageElement(parseMarkdown(xpp)); 16203 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 16204 res.setDetailElement(parseUri(xpp)); 16205 } else if (!parseBackboneContent(eventType, xpp, res)) 16206 return false; 16207 return true; 16208 } 16209 16210 protected TestReport.SetupActionAssertComponent parseTestReportSetupActionAssertComponent(XmlPullParser xpp, TestReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 16211 TestReport.SetupActionAssertComponent res = new TestReport.SetupActionAssertComponent(); 16212 parseBackboneAttributes(xpp, res); 16213 next(xpp); 16214 int eventType = nextNoWhitespace(xpp); 16215 while (eventType != XmlPullParser.END_TAG) { 16216 if (!parseTestReportSetupActionAssertComponentContent(eventType, xpp, owner, res)) 16217 unknownContent(xpp); 16218 eventType = nextNoWhitespace(xpp); 16219 } 16220 next(xpp); 16221 parseElementClose(res); 16222 return res; 16223 } 16224 16225 protected boolean parseTestReportSetupActionAssertComponentContent(int eventType, XmlPullParser xpp, TestReport owner, TestReport.SetupActionAssertComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16226 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("result")) { 16227 res.setResultElement(parseEnumeration(xpp, TestReport.TestReportActionResult.NULL, new TestReport.TestReportActionResultEnumFactory())); 16228 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("message")) { 16229 res.setMessageElement(parseMarkdown(xpp)); 16230 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 16231 res.setDetailElement(parseString(xpp)); 16232 } else if (!parseBackboneContent(eventType, xpp, res)) 16233 return false; 16234 return true; 16235 } 16236 16237 protected TestReport.TestReportTestComponent parseTestReportTestReportTestComponent(XmlPullParser xpp, TestReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 16238 TestReport.TestReportTestComponent res = new TestReport.TestReportTestComponent(); 16239 parseBackboneAttributes(xpp, res); 16240 next(xpp); 16241 int eventType = nextNoWhitespace(xpp); 16242 while (eventType != XmlPullParser.END_TAG) { 16243 if (!parseTestReportTestReportTestComponentContent(eventType, xpp, owner, res)) 16244 unknownContent(xpp); 16245 eventType = nextNoWhitespace(xpp); 16246 } 16247 next(xpp); 16248 parseElementClose(res); 16249 return res; 16250 } 16251 16252 protected boolean parseTestReportTestReportTestComponentContent(int eventType, XmlPullParser xpp, TestReport owner, TestReport.TestReportTestComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16253 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 16254 res.setNameElement(parseString(xpp)); 16255 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 16256 res.setDescriptionElement(parseString(xpp)); 16257 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 16258 res.getAction().add(parseTestReportTestActionComponent(xpp, owner)); 16259 } else if (!parseBackboneContent(eventType, xpp, res)) 16260 return false; 16261 return true; 16262 } 16263 16264 protected TestReport.TestActionComponent parseTestReportTestActionComponent(XmlPullParser xpp, TestReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 16265 TestReport.TestActionComponent res = new TestReport.TestActionComponent(); 16266 parseBackboneAttributes(xpp, res); 16267 next(xpp); 16268 int eventType = nextNoWhitespace(xpp); 16269 while (eventType != XmlPullParser.END_TAG) { 16270 if (!parseTestReportTestActionComponentContent(eventType, xpp, owner, res)) 16271 unknownContent(xpp); 16272 eventType = nextNoWhitespace(xpp); 16273 } 16274 next(xpp); 16275 parseElementClose(res); 16276 return res; 16277 } 16278 16279 protected boolean parseTestReportTestActionComponentContent(int eventType, XmlPullParser xpp, TestReport owner, TestReport.TestActionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16280 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operation")) { 16281 res.setOperation(parseTestReportSetupActionOperationComponent(xpp, owner)); 16282 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assert")) { 16283 res.setAssert(parseTestReportSetupActionAssertComponent(xpp, owner)); 16284 } else if (!parseBackboneContent(eventType, xpp, res)) 16285 return false; 16286 return true; 16287 } 16288 16289 protected TestReport.TestReportTeardownComponent parseTestReportTestReportTeardownComponent(XmlPullParser xpp, TestReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 16290 TestReport.TestReportTeardownComponent res = new TestReport.TestReportTeardownComponent(); 16291 parseBackboneAttributes(xpp, res); 16292 next(xpp); 16293 int eventType = nextNoWhitespace(xpp); 16294 while (eventType != XmlPullParser.END_TAG) { 16295 if (!parseTestReportTestReportTeardownComponentContent(eventType, xpp, owner, res)) 16296 unknownContent(xpp); 16297 eventType = nextNoWhitespace(xpp); 16298 } 16299 next(xpp); 16300 parseElementClose(res); 16301 return res; 16302 } 16303 16304 protected boolean parseTestReportTestReportTeardownComponentContent(int eventType, XmlPullParser xpp, TestReport owner, TestReport.TestReportTeardownComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16305 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 16306 res.getAction().add(parseTestReportTeardownActionComponent(xpp, owner)); 16307 } else if (!parseBackboneContent(eventType, xpp, res)) 16308 return false; 16309 return true; 16310 } 16311 16312 protected TestReport.TeardownActionComponent parseTestReportTeardownActionComponent(XmlPullParser xpp, TestReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 16313 TestReport.TeardownActionComponent res = new TestReport.TeardownActionComponent(); 16314 parseBackboneAttributes(xpp, res); 16315 next(xpp); 16316 int eventType = nextNoWhitespace(xpp); 16317 while (eventType != XmlPullParser.END_TAG) { 16318 if (!parseTestReportTeardownActionComponentContent(eventType, xpp, owner, res)) 16319 unknownContent(xpp); 16320 eventType = nextNoWhitespace(xpp); 16321 } 16322 next(xpp); 16323 parseElementClose(res); 16324 return res; 16325 } 16326 16327 protected boolean parseTestReportTeardownActionComponentContent(int eventType, XmlPullParser xpp, TestReport owner, TestReport.TeardownActionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16328 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operation")) { 16329 res.setOperation(parseTestReportSetupActionOperationComponent(xpp, owner)); 16330 } else if (!parseBackboneContent(eventType, xpp, res)) 16331 return false; 16332 return true; 16333 } 16334 16335 protected TestScript parseTestScript(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 16336 TestScript res = new TestScript(); 16337 parseDomainResourceAttributes(xpp, res); 16338 next(xpp); 16339 int eventType = nextNoWhitespace(xpp); 16340 while (eventType != XmlPullParser.END_TAG) { 16341 if (!parseTestScriptContent(eventType, xpp, res)) 16342 unknownContent(xpp); 16343 eventType = nextNoWhitespace(xpp); 16344 } 16345 next(xpp); 16346 parseElementClose(res); 16347 return res; 16348 } 16349 16350 protected boolean parseTestScriptContent(int eventType, XmlPullParser xpp, TestScript res) throws XmlPullParserException, IOException, FHIRFormatError { 16351 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 16352 res.setUrlElement(parseUri(xpp)); 16353 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 16354 res.setIdentifier(parseIdentifier(xpp)); 16355 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 16356 res.setVersionElement(parseString(xpp)); 16357 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 16358 res.setNameElement(parseString(xpp)); 16359 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 16360 res.setTitleElement(parseString(xpp)); 16361 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 16362 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 16363 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 16364 res.setExperimentalElement(parseBoolean(xpp)); 16365 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 16366 res.setDateElement(parseDateTime(xpp)); 16367 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 16368 res.setPublisherElement(parseString(xpp)); 16369 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 16370 res.getContact().add(parseContactDetail(xpp)); 16371 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 16372 res.setDescriptionElement(parseMarkdown(xpp)); 16373 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 16374 res.getUseContext().add(parseUsageContext(xpp)); 16375 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 16376 res.getJurisdiction().add(parseCodeableConcept(xpp)); 16377 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 16378 res.setPurposeElement(parseMarkdown(xpp)); 16379 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 16380 res.setCopyrightElement(parseMarkdown(xpp)); 16381 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("origin")) { 16382 res.getOrigin().add(parseTestScriptTestScriptOriginComponent(xpp, res)); 16383 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 16384 res.getDestination().add(parseTestScriptTestScriptDestinationComponent(xpp, res)); 16385 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("metadata")) { 16386 res.setMetadata(parseTestScriptTestScriptMetadataComponent(xpp, res)); 16387 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fixture")) { 16388 res.getFixture().add(parseTestScriptTestScriptFixtureComponent(xpp, res)); 16389 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 16390 res.getProfile().add(parseReference(xpp)); 16391 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("variable")) { 16392 res.getVariable().add(parseTestScriptTestScriptVariableComponent(xpp, res)); 16393 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rule")) { 16394 res.getRule().add(parseTestScriptTestScriptRuleComponent(xpp, res)); 16395 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleset")) { 16396 res.getRuleset().add(parseTestScriptTestScriptRulesetComponent(xpp, res)); 16397 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("setup")) { 16398 res.setSetup(parseTestScriptTestScriptSetupComponent(xpp, res)); 16399 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("test")) { 16400 res.getTest().add(parseTestScriptTestScriptTestComponent(xpp, res)); 16401 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("teardown")) { 16402 res.setTeardown(parseTestScriptTestScriptTeardownComponent(xpp, res)); 16403 } else if (!parseDomainResourceContent(eventType, xpp, res)) 16404 return false; 16405 return true; 16406 } 16407 16408 protected TestScript.TestScriptOriginComponent parseTestScriptTestScriptOriginComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16409 TestScript.TestScriptOriginComponent res = new TestScript.TestScriptOriginComponent(); 16410 parseBackboneAttributes(xpp, res); 16411 next(xpp); 16412 int eventType = nextNoWhitespace(xpp); 16413 while (eventType != XmlPullParser.END_TAG) { 16414 if (!parseTestScriptTestScriptOriginComponentContent(eventType, xpp, owner, res)) 16415 unknownContent(xpp); 16416 eventType = nextNoWhitespace(xpp); 16417 } 16418 next(xpp); 16419 parseElementClose(res); 16420 return res; 16421 } 16422 16423 protected boolean parseTestScriptTestScriptOriginComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.TestScriptOriginComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16424 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("index")) { 16425 res.setIndexElement(parseInteger(xpp)); 16426 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 16427 res.setProfile(parseCoding(xpp)); 16428 } else if (!parseBackboneContent(eventType, xpp, res)) 16429 return false; 16430 return true; 16431 } 16432 16433 protected TestScript.TestScriptDestinationComponent parseTestScriptTestScriptDestinationComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16434 TestScript.TestScriptDestinationComponent res = new TestScript.TestScriptDestinationComponent(); 16435 parseBackboneAttributes(xpp, res); 16436 next(xpp); 16437 int eventType = nextNoWhitespace(xpp); 16438 while (eventType != XmlPullParser.END_TAG) { 16439 if (!parseTestScriptTestScriptDestinationComponentContent(eventType, xpp, owner, res)) 16440 unknownContent(xpp); 16441 eventType = nextNoWhitespace(xpp); 16442 } 16443 next(xpp); 16444 parseElementClose(res); 16445 return res; 16446 } 16447 16448 protected boolean parseTestScriptTestScriptDestinationComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.TestScriptDestinationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16449 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("index")) { 16450 res.setIndexElement(parseInteger(xpp)); 16451 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 16452 res.setProfile(parseCoding(xpp)); 16453 } else if (!parseBackboneContent(eventType, xpp, res)) 16454 return false; 16455 return true; 16456 } 16457 16458 protected TestScript.TestScriptMetadataComponent parseTestScriptTestScriptMetadataComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16459 TestScript.TestScriptMetadataComponent res = new TestScript.TestScriptMetadataComponent(); 16460 parseBackboneAttributes(xpp, res); 16461 next(xpp); 16462 int eventType = nextNoWhitespace(xpp); 16463 while (eventType != XmlPullParser.END_TAG) { 16464 if (!parseTestScriptTestScriptMetadataComponentContent(eventType, xpp, owner, res)) 16465 unknownContent(xpp); 16466 eventType = nextNoWhitespace(xpp); 16467 } 16468 next(xpp); 16469 parseElementClose(res); 16470 return res; 16471 } 16472 16473 protected boolean parseTestScriptTestScriptMetadataComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.TestScriptMetadataComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16474 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 16475 res.getLink().add(parseTestScriptTestScriptMetadataLinkComponent(xpp, owner)); 16476 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("capability")) { 16477 res.getCapability().add(parseTestScriptTestScriptMetadataCapabilityComponent(xpp, owner)); 16478 } else if (!parseBackboneContent(eventType, xpp, res)) 16479 return false; 16480 return true; 16481 } 16482 16483 protected TestScript.TestScriptMetadataLinkComponent parseTestScriptTestScriptMetadataLinkComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16484 TestScript.TestScriptMetadataLinkComponent res = new TestScript.TestScriptMetadataLinkComponent(); 16485 parseBackboneAttributes(xpp, res); 16486 next(xpp); 16487 int eventType = nextNoWhitespace(xpp); 16488 while (eventType != XmlPullParser.END_TAG) { 16489 if (!parseTestScriptTestScriptMetadataLinkComponentContent(eventType, xpp, owner, res)) 16490 unknownContent(xpp); 16491 eventType = nextNoWhitespace(xpp); 16492 } 16493 next(xpp); 16494 parseElementClose(res); 16495 return res; 16496 } 16497 16498 protected boolean parseTestScriptTestScriptMetadataLinkComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.TestScriptMetadataLinkComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16499 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 16500 res.setUrlElement(parseUri(xpp)); 16501 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 16502 res.setDescriptionElement(parseString(xpp)); 16503 } else if (!parseBackboneContent(eventType, xpp, res)) 16504 return false; 16505 return true; 16506 } 16507 16508 protected TestScript.TestScriptMetadataCapabilityComponent parseTestScriptTestScriptMetadataCapabilityComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16509 TestScript.TestScriptMetadataCapabilityComponent res = new TestScript.TestScriptMetadataCapabilityComponent(); 16510 parseBackboneAttributes(xpp, res); 16511 next(xpp); 16512 int eventType = nextNoWhitespace(xpp); 16513 while (eventType != XmlPullParser.END_TAG) { 16514 if (!parseTestScriptTestScriptMetadataCapabilityComponentContent(eventType, xpp, owner, res)) 16515 unknownContent(xpp); 16516 eventType = nextNoWhitespace(xpp); 16517 } 16518 next(xpp); 16519 parseElementClose(res); 16520 return res; 16521 } 16522 16523 protected boolean parseTestScriptTestScriptMetadataCapabilityComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.TestScriptMetadataCapabilityComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16524 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("required")) { 16525 res.setRequiredElement(parseBoolean(xpp)); 16526 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("validated")) { 16527 res.setValidatedElement(parseBoolean(xpp)); 16528 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 16529 res.setDescriptionElement(parseString(xpp)); 16530 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("origin")) { 16531 res.getOrigin().add(parseInteger(xpp)); 16532 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 16533 res.setDestinationElement(parseInteger(xpp)); 16534 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 16535 res.getLink().add(parseUri(xpp)); 16536 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("capabilities")) { 16537 res.setCapabilities(parseReference(xpp)); 16538 } else if (!parseBackboneContent(eventType, xpp, res)) 16539 return false; 16540 return true; 16541 } 16542 16543 protected TestScript.TestScriptFixtureComponent parseTestScriptTestScriptFixtureComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16544 TestScript.TestScriptFixtureComponent res = new TestScript.TestScriptFixtureComponent(); 16545 parseBackboneAttributes(xpp, res); 16546 next(xpp); 16547 int eventType = nextNoWhitespace(xpp); 16548 while (eventType != XmlPullParser.END_TAG) { 16549 if (!parseTestScriptTestScriptFixtureComponentContent(eventType, xpp, owner, res)) 16550 unknownContent(xpp); 16551 eventType = nextNoWhitespace(xpp); 16552 } 16553 next(xpp); 16554 parseElementClose(res); 16555 return res; 16556 } 16557 16558 protected boolean parseTestScriptTestScriptFixtureComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.TestScriptFixtureComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16559 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("autocreate")) { 16560 res.setAutocreateElement(parseBoolean(xpp)); 16561 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("autodelete")) { 16562 res.setAutodeleteElement(parseBoolean(xpp)); 16563 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 16564 res.setResource(parseReference(xpp)); 16565 } else if (!parseBackboneContent(eventType, xpp, res)) 16566 return false; 16567 return true; 16568 } 16569 16570 protected TestScript.TestScriptVariableComponent parseTestScriptTestScriptVariableComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16571 TestScript.TestScriptVariableComponent res = new TestScript.TestScriptVariableComponent(); 16572 parseBackboneAttributes(xpp, res); 16573 next(xpp); 16574 int eventType = nextNoWhitespace(xpp); 16575 while (eventType != XmlPullParser.END_TAG) { 16576 if (!parseTestScriptTestScriptVariableComponentContent(eventType, xpp, owner, res)) 16577 unknownContent(xpp); 16578 eventType = nextNoWhitespace(xpp); 16579 } 16580 next(xpp); 16581 parseElementClose(res); 16582 return res; 16583 } 16584 16585 protected boolean parseTestScriptTestScriptVariableComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.TestScriptVariableComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16586 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 16587 res.setNameElement(parseString(xpp)); 16588 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("defaultValue")) { 16589 res.setDefaultValueElement(parseString(xpp)); 16590 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 16591 res.setDescriptionElement(parseString(xpp)); 16592 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 16593 res.setExpressionElement(parseString(xpp)); 16594 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("headerField")) { 16595 res.setHeaderFieldElement(parseString(xpp)); 16596 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("hint")) { 16597 res.setHintElement(parseString(xpp)); 16598 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 16599 res.setPathElement(parseString(xpp)); 16600 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sourceId")) { 16601 res.setSourceIdElement(parseId(xpp)); 16602 } else if (!parseBackboneContent(eventType, xpp, res)) 16603 return false; 16604 return true; 16605 } 16606 16607 protected TestScript.TestScriptRuleComponent parseTestScriptTestScriptRuleComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16608 TestScript.TestScriptRuleComponent res = new TestScript.TestScriptRuleComponent(); 16609 parseBackboneAttributes(xpp, res); 16610 next(xpp); 16611 int eventType = nextNoWhitespace(xpp); 16612 while (eventType != XmlPullParser.END_TAG) { 16613 if (!parseTestScriptTestScriptRuleComponentContent(eventType, xpp, owner, res)) 16614 unknownContent(xpp); 16615 eventType = nextNoWhitespace(xpp); 16616 } 16617 next(xpp); 16618 parseElementClose(res); 16619 return res; 16620 } 16621 16622 protected boolean parseTestScriptTestScriptRuleComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.TestScriptRuleComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16623 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 16624 res.setResource(parseReference(xpp)); 16625 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("param")) { 16626 res.getParam().add(parseTestScriptRuleParamComponent(xpp, owner)); 16627 } else if (!parseBackboneContent(eventType, xpp, res)) 16628 return false; 16629 return true; 16630 } 16631 16632 protected TestScript.RuleParamComponent parseTestScriptRuleParamComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16633 TestScript.RuleParamComponent res = new TestScript.RuleParamComponent(); 16634 parseBackboneAttributes(xpp, res); 16635 next(xpp); 16636 int eventType = nextNoWhitespace(xpp); 16637 while (eventType != XmlPullParser.END_TAG) { 16638 if (!parseTestScriptRuleParamComponentContent(eventType, xpp, owner, res)) 16639 unknownContent(xpp); 16640 eventType = nextNoWhitespace(xpp); 16641 } 16642 next(xpp); 16643 parseElementClose(res); 16644 return res; 16645 } 16646 16647 protected boolean parseTestScriptRuleParamComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.RuleParamComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16648 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 16649 res.setNameElement(parseString(xpp)); 16650 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 16651 res.setValueElement(parseString(xpp)); 16652 } else if (!parseBackboneContent(eventType, xpp, res)) 16653 return false; 16654 return true; 16655 } 16656 16657 protected TestScript.TestScriptRulesetComponent parseTestScriptTestScriptRulesetComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16658 TestScript.TestScriptRulesetComponent res = new TestScript.TestScriptRulesetComponent(); 16659 parseBackboneAttributes(xpp, res); 16660 next(xpp); 16661 int eventType = nextNoWhitespace(xpp); 16662 while (eventType != XmlPullParser.END_TAG) { 16663 if (!parseTestScriptTestScriptRulesetComponentContent(eventType, xpp, owner, res)) 16664 unknownContent(xpp); 16665 eventType = nextNoWhitespace(xpp); 16666 } 16667 next(xpp); 16668 parseElementClose(res); 16669 return res; 16670 } 16671 16672 protected boolean parseTestScriptTestScriptRulesetComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.TestScriptRulesetComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16673 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 16674 res.setResource(parseReference(xpp)); 16675 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rule")) { 16676 res.getRule().add(parseTestScriptRulesetRuleComponent(xpp, owner)); 16677 } else if (!parseBackboneContent(eventType, xpp, res)) 16678 return false; 16679 return true; 16680 } 16681 16682 protected TestScript.RulesetRuleComponent parseTestScriptRulesetRuleComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16683 TestScript.RulesetRuleComponent res = new TestScript.RulesetRuleComponent(); 16684 parseBackboneAttributes(xpp, res); 16685 next(xpp); 16686 int eventType = nextNoWhitespace(xpp); 16687 while (eventType != XmlPullParser.END_TAG) { 16688 if (!parseTestScriptRulesetRuleComponentContent(eventType, xpp, owner, res)) 16689 unknownContent(xpp); 16690 eventType = nextNoWhitespace(xpp); 16691 } 16692 next(xpp); 16693 parseElementClose(res); 16694 return res; 16695 } 16696 16697 protected boolean parseTestScriptRulesetRuleComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.RulesetRuleComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16698 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleId")) { 16699 res.setRuleIdElement(parseId(xpp)); 16700 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("param")) { 16701 res.getParam().add(parseTestScriptRulesetRuleParamComponent(xpp, owner)); 16702 } else if (!parseBackboneContent(eventType, xpp, res)) 16703 return false; 16704 return true; 16705 } 16706 16707 protected TestScript.RulesetRuleParamComponent parseTestScriptRulesetRuleParamComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16708 TestScript.RulesetRuleParamComponent res = new TestScript.RulesetRuleParamComponent(); 16709 parseBackboneAttributes(xpp, res); 16710 next(xpp); 16711 int eventType = nextNoWhitespace(xpp); 16712 while (eventType != XmlPullParser.END_TAG) { 16713 if (!parseTestScriptRulesetRuleParamComponentContent(eventType, xpp, owner, res)) 16714 unknownContent(xpp); 16715 eventType = nextNoWhitespace(xpp); 16716 } 16717 next(xpp); 16718 parseElementClose(res); 16719 return res; 16720 } 16721 16722 protected boolean parseTestScriptRulesetRuleParamComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.RulesetRuleParamComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16723 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 16724 res.setNameElement(parseString(xpp)); 16725 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 16726 res.setValueElement(parseString(xpp)); 16727 } else if (!parseBackboneContent(eventType, xpp, res)) 16728 return false; 16729 return true; 16730 } 16731 16732 protected TestScript.TestScriptSetupComponent parseTestScriptTestScriptSetupComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16733 TestScript.TestScriptSetupComponent res = new TestScript.TestScriptSetupComponent(); 16734 parseBackboneAttributes(xpp, res); 16735 next(xpp); 16736 int eventType = nextNoWhitespace(xpp); 16737 while (eventType != XmlPullParser.END_TAG) { 16738 if (!parseTestScriptTestScriptSetupComponentContent(eventType, xpp, owner, res)) 16739 unknownContent(xpp); 16740 eventType = nextNoWhitespace(xpp); 16741 } 16742 next(xpp); 16743 parseElementClose(res); 16744 return res; 16745 } 16746 16747 protected boolean parseTestScriptTestScriptSetupComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.TestScriptSetupComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16748 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 16749 res.getAction().add(parseTestScriptSetupActionComponent(xpp, owner)); 16750 } else if (!parseBackboneContent(eventType, xpp, res)) 16751 return false; 16752 return true; 16753 } 16754 16755 protected TestScript.SetupActionComponent parseTestScriptSetupActionComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16756 TestScript.SetupActionComponent res = new TestScript.SetupActionComponent(); 16757 parseBackboneAttributes(xpp, res); 16758 next(xpp); 16759 int eventType = nextNoWhitespace(xpp); 16760 while (eventType != XmlPullParser.END_TAG) { 16761 if (!parseTestScriptSetupActionComponentContent(eventType, xpp, owner, res)) 16762 unknownContent(xpp); 16763 eventType = nextNoWhitespace(xpp); 16764 } 16765 next(xpp); 16766 parseElementClose(res); 16767 return res; 16768 } 16769 16770 protected boolean parseTestScriptSetupActionComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.SetupActionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16771 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operation")) { 16772 res.setOperation(parseTestScriptSetupActionOperationComponent(xpp, owner)); 16773 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assert")) { 16774 res.setAssert(parseTestScriptSetupActionAssertComponent(xpp, owner)); 16775 } else if (!parseBackboneContent(eventType, xpp, res)) 16776 return false; 16777 return true; 16778 } 16779 16780 protected TestScript.SetupActionOperationComponent parseTestScriptSetupActionOperationComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16781 TestScript.SetupActionOperationComponent res = new TestScript.SetupActionOperationComponent(); 16782 parseBackboneAttributes(xpp, res); 16783 next(xpp); 16784 int eventType = nextNoWhitespace(xpp); 16785 while (eventType != XmlPullParser.END_TAG) { 16786 if (!parseTestScriptSetupActionOperationComponentContent(eventType, xpp, owner, res)) 16787 unknownContent(xpp); 16788 eventType = nextNoWhitespace(xpp); 16789 } 16790 next(xpp); 16791 parseElementClose(res); 16792 return res; 16793 } 16794 16795 protected boolean parseTestScriptSetupActionOperationComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.SetupActionOperationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16796 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 16797 res.setType(parseCoding(xpp)); 16798 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 16799 res.setResourceElement(parseCode(xpp)); 16800 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("label")) { 16801 res.setLabelElement(parseString(xpp)); 16802 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 16803 res.setDescriptionElement(parseString(xpp)); 16804 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("accept")) { 16805 res.setAcceptElement(parseEnumeration(xpp, TestScript.ContentType.NULL, new TestScript.ContentTypeEnumFactory())); 16806 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentType")) { 16807 res.setContentTypeElement(parseEnumeration(xpp, TestScript.ContentType.NULL, new TestScript.ContentTypeEnumFactory())); 16808 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 16809 res.setDestinationElement(parseInteger(xpp)); 16810 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encodeRequestUrl")) { 16811 res.setEncodeRequestUrlElement(parseBoolean(xpp)); 16812 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("origin")) { 16813 res.setOriginElement(parseInteger(xpp)); 16814 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("params")) { 16815 res.setParamsElement(parseString(xpp)); 16816 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestHeader")) { 16817 res.getRequestHeader().add(parseTestScriptSetupActionOperationRequestHeaderComponent(xpp, owner)); 16818 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestId")) { 16819 res.setRequestIdElement(parseId(xpp)); 16820 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responseId")) { 16821 res.setResponseIdElement(parseId(xpp)); 16822 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sourceId")) { 16823 res.setSourceIdElement(parseId(xpp)); 16824 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("targetId")) { 16825 res.setTargetIdElement(parseId(xpp)); 16826 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 16827 res.setUrlElement(parseString(xpp)); 16828 } else if (!parseBackboneContent(eventType, xpp, res)) 16829 return false; 16830 return true; 16831 } 16832 16833 protected TestScript.SetupActionOperationRequestHeaderComponent parseTestScriptSetupActionOperationRequestHeaderComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16834 TestScript.SetupActionOperationRequestHeaderComponent res = new TestScript.SetupActionOperationRequestHeaderComponent(); 16835 parseBackboneAttributes(xpp, res); 16836 next(xpp); 16837 int eventType = nextNoWhitespace(xpp); 16838 while (eventType != XmlPullParser.END_TAG) { 16839 if (!parseTestScriptSetupActionOperationRequestHeaderComponentContent(eventType, xpp, owner, res)) 16840 unknownContent(xpp); 16841 eventType = nextNoWhitespace(xpp); 16842 } 16843 next(xpp); 16844 parseElementClose(res); 16845 return res; 16846 } 16847 16848 protected boolean parseTestScriptSetupActionOperationRequestHeaderComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.SetupActionOperationRequestHeaderComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16849 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("field")) { 16850 res.setFieldElement(parseString(xpp)); 16851 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 16852 res.setValueElement(parseString(xpp)); 16853 } else if (!parseBackboneContent(eventType, xpp, res)) 16854 return false; 16855 return true; 16856 } 16857 16858 protected TestScript.SetupActionAssertComponent parseTestScriptSetupActionAssertComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16859 TestScript.SetupActionAssertComponent res = new TestScript.SetupActionAssertComponent(); 16860 parseBackboneAttributes(xpp, res); 16861 next(xpp); 16862 int eventType = nextNoWhitespace(xpp); 16863 while (eventType != XmlPullParser.END_TAG) { 16864 if (!parseTestScriptSetupActionAssertComponentContent(eventType, xpp, owner, res)) 16865 unknownContent(xpp); 16866 eventType = nextNoWhitespace(xpp); 16867 } 16868 next(xpp); 16869 parseElementClose(res); 16870 return res; 16871 } 16872 16873 protected boolean parseTestScriptSetupActionAssertComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.SetupActionAssertComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16874 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("label")) { 16875 res.setLabelElement(parseString(xpp)); 16876 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 16877 res.setDescriptionElement(parseString(xpp)); 16878 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("direction")) { 16879 res.setDirectionElement(parseEnumeration(xpp, TestScript.AssertionDirectionType.NULL, new TestScript.AssertionDirectionTypeEnumFactory())); 16880 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("compareToSourceId")) { 16881 res.setCompareToSourceIdElement(parseString(xpp)); 16882 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("compareToSourceExpression")) { 16883 res.setCompareToSourceExpressionElement(parseString(xpp)); 16884 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("compareToSourcePath")) { 16885 res.setCompareToSourcePathElement(parseString(xpp)); 16886 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentType")) { 16887 res.setContentTypeElement(parseEnumeration(xpp, TestScript.ContentType.NULL, new TestScript.ContentTypeEnumFactory())); 16888 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 16889 res.setExpressionElement(parseString(xpp)); 16890 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("headerField")) { 16891 res.setHeaderFieldElement(parseString(xpp)); 16892 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("minimumId")) { 16893 res.setMinimumIdElement(parseString(xpp)); 16894 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("navigationLinks")) { 16895 res.setNavigationLinksElement(parseBoolean(xpp)); 16896 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operator")) { 16897 res.setOperatorElement(parseEnumeration(xpp, TestScript.AssertionOperatorType.NULL, new TestScript.AssertionOperatorTypeEnumFactory())); 16898 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 16899 res.setPathElement(parseString(xpp)); 16900 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestMethod")) { 16901 res.setRequestMethodElement(parseEnumeration(xpp, TestScript.TestScriptRequestMethodCode.NULL, new TestScript.TestScriptRequestMethodCodeEnumFactory())); 16902 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestURL")) { 16903 res.setRequestURLElement(parseString(xpp)); 16904 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 16905 res.setResourceElement(parseCode(xpp)); 16906 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("response")) { 16907 res.setResponseElement(parseEnumeration(xpp, TestScript.AssertionResponseTypes.NULL, new TestScript.AssertionResponseTypesEnumFactory())); 16908 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responseCode")) { 16909 res.setResponseCodeElement(parseString(xpp)); 16910 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rule")) { 16911 res.setRule(parseTestScriptActionAssertRuleComponent(xpp, owner)); 16912 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleset")) { 16913 res.setRuleset(parseTestScriptActionAssertRulesetComponent(xpp, owner)); 16914 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sourceId")) { 16915 res.setSourceIdElement(parseId(xpp)); 16916 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("validateProfileId")) { 16917 res.setValidateProfileIdElement(parseId(xpp)); 16918 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 16919 res.setValueElement(parseString(xpp)); 16920 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("warningOnly")) { 16921 res.setWarningOnlyElement(parseBoolean(xpp)); 16922 } else if (!parseBackboneContent(eventType, xpp, res)) 16923 return false; 16924 return true; 16925 } 16926 16927 protected TestScript.ActionAssertRuleComponent parseTestScriptActionAssertRuleComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16928 TestScript.ActionAssertRuleComponent res = new TestScript.ActionAssertRuleComponent(); 16929 parseBackboneAttributes(xpp, res); 16930 next(xpp); 16931 int eventType = nextNoWhitespace(xpp); 16932 while (eventType != XmlPullParser.END_TAG) { 16933 if (!parseTestScriptActionAssertRuleComponentContent(eventType, xpp, owner, res)) 16934 unknownContent(xpp); 16935 eventType = nextNoWhitespace(xpp); 16936 } 16937 next(xpp); 16938 parseElementClose(res); 16939 return res; 16940 } 16941 16942 protected boolean parseTestScriptActionAssertRuleComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.ActionAssertRuleComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16943 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleId")) { 16944 res.setRuleIdElement(parseId(xpp)); 16945 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("param")) { 16946 res.getParam().add(parseTestScriptActionAssertRuleParamComponent(xpp, owner)); 16947 } else if (!parseBackboneContent(eventType, xpp, res)) 16948 return false; 16949 return true; 16950 } 16951 16952 protected TestScript.ActionAssertRuleParamComponent parseTestScriptActionAssertRuleParamComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16953 TestScript.ActionAssertRuleParamComponent res = new TestScript.ActionAssertRuleParamComponent(); 16954 parseBackboneAttributes(xpp, res); 16955 next(xpp); 16956 int eventType = nextNoWhitespace(xpp); 16957 while (eventType != XmlPullParser.END_TAG) { 16958 if (!parseTestScriptActionAssertRuleParamComponentContent(eventType, xpp, owner, res)) 16959 unknownContent(xpp); 16960 eventType = nextNoWhitespace(xpp); 16961 } 16962 next(xpp); 16963 parseElementClose(res); 16964 return res; 16965 } 16966 16967 protected boolean parseTestScriptActionAssertRuleParamComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.ActionAssertRuleParamComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16968 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 16969 res.setNameElement(parseString(xpp)); 16970 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 16971 res.setValueElement(parseString(xpp)); 16972 } else if (!parseBackboneContent(eventType, xpp, res)) 16973 return false; 16974 return true; 16975 } 16976 16977 protected TestScript.ActionAssertRulesetComponent parseTestScriptActionAssertRulesetComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16978 TestScript.ActionAssertRulesetComponent res = new TestScript.ActionAssertRulesetComponent(); 16979 parseBackboneAttributes(xpp, res); 16980 next(xpp); 16981 int eventType = nextNoWhitespace(xpp); 16982 while (eventType != XmlPullParser.END_TAG) { 16983 if (!parseTestScriptActionAssertRulesetComponentContent(eventType, xpp, owner, res)) 16984 unknownContent(xpp); 16985 eventType = nextNoWhitespace(xpp); 16986 } 16987 next(xpp); 16988 parseElementClose(res); 16989 return res; 16990 } 16991 16992 protected boolean parseTestScriptActionAssertRulesetComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.ActionAssertRulesetComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16993 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rulesetId")) { 16994 res.setRulesetIdElement(parseId(xpp)); 16995 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rule")) { 16996 res.getRule().add(parseTestScriptActionAssertRulesetRuleComponent(xpp, owner)); 16997 } else if (!parseBackboneContent(eventType, xpp, res)) 16998 return false; 16999 return true; 17000 } 17001 17002 protected TestScript.ActionAssertRulesetRuleComponent parseTestScriptActionAssertRulesetRuleComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 17003 TestScript.ActionAssertRulesetRuleComponent res = new TestScript.ActionAssertRulesetRuleComponent(); 17004 parseBackboneAttributes(xpp, res); 17005 next(xpp); 17006 int eventType = nextNoWhitespace(xpp); 17007 while (eventType != XmlPullParser.END_TAG) { 17008 if (!parseTestScriptActionAssertRulesetRuleComponentContent(eventType, xpp, owner, res)) 17009 unknownContent(xpp); 17010 eventType = nextNoWhitespace(xpp); 17011 } 17012 next(xpp); 17013 parseElementClose(res); 17014 return res; 17015 } 17016 17017 protected boolean parseTestScriptActionAssertRulesetRuleComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.ActionAssertRulesetRuleComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17018 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleId")) { 17019 res.setRuleIdElement(parseId(xpp)); 17020 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("param")) { 17021 res.getParam().add(parseTestScriptActionAssertRulesetRuleParamComponent(xpp, owner)); 17022 } else if (!parseBackboneContent(eventType, xpp, res)) 17023 return false; 17024 return true; 17025 } 17026 17027 protected TestScript.ActionAssertRulesetRuleParamComponent parseTestScriptActionAssertRulesetRuleParamComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 17028 TestScript.ActionAssertRulesetRuleParamComponent res = new TestScript.ActionAssertRulesetRuleParamComponent(); 17029 parseBackboneAttributes(xpp, res); 17030 next(xpp); 17031 int eventType = nextNoWhitespace(xpp); 17032 while (eventType != XmlPullParser.END_TAG) { 17033 if (!parseTestScriptActionAssertRulesetRuleParamComponentContent(eventType, xpp, owner, res)) 17034 unknownContent(xpp); 17035 eventType = nextNoWhitespace(xpp); 17036 } 17037 next(xpp); 17038 parseElementClose(res); 17039 return res; 17040 } 17041 17042 protected boolean parseTestScriptActionAssertRulesetRuleParamComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.ActionAssertRulesetRuleParamComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17043 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 17044 res.setNameElement(parseString(xpp)); 17045 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 17046 res.setValueElement(parseString(xpp)); 17047 } else if (!parseBackboneContent(eventType, xpp, res)) 17048 return false; 17049 return true; 17050 } 17051 17052 protected TestScript.TestScriptTestComponent parseTestScriptTestScriptTestComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 17053 TestScript.TestScriptTestComponent res = new TestScript.TestScriptTestComponent(); 17054 parseBackboneAttributes(xpp, res); 17055 next(xpp); 17056 int eventType = nextNoWhitespace(xpp); 17057 while (eventType != XmlPullParser.END_TAG) { 17058 if (!parseTestScriptTestScriptTestComponentContent(eventType, xpp, owner, res)) 17059 unknownContent(xpp); 17060 eventType = nextNoWhitespace(xpp); 17061 } 17062 next(xpp); 17063 parseElementClose(res); 17064 return res; 17065 } 17066 17067 protected boolean parseTestScriptTestScriptTestComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.TestScriptTestComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17068 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 17069 res.setNameElement(parseString(xpp)); 17070 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 17071 res.setDescriptionElement(parseString(xpp)); 17072 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 17073 res.getAction().add(parseTestScriptTestActionComponent(xpp, owner)); 17074 } else if (!parseBackboneContent(eventType, xpp, res)) 17075 return false; 17076 return true; 17077 } 17078 17079 protected TestScript.TestActionComponent parseTestScriptTestActionComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 17080 TestScript.TestActionComponent res = new TestScript.TestActionComponent(); 17081 parseBackboneAttributes(xpp, res); 17082 next(xpp); 17083 int eventType = nextNoWhitespace(xpp); 17084 while (eventType != XmlPullParser.END_TAG) { 17085 if (!parseTestScriptTestActionComponentContent(eventType, xpp, owner, res)) 17086 unknownContent(xpp); 17087 eventType = nextNoWhitespace(xpp); 17088 } 17089 next(xpp); 17090 parseElementClose(res); 17091 return res; 17092 } 17093 17094 protected boolean parseTestScriptTestActionComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.TestActionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17095 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operation")) { 17096 res.setOperation(parseTestScriptSetupActionOperationComponent(xpp, owner)); 17097 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assert")) { 17098 res.setAssert(parseTestScriptSetupActionAssertComponent(xpp, owner)); 17099 } else if (!parseBackboneContent(eventType, xpp, res)) 17100 return false; 17101 return true; 17102 } 17103 17104 protected TestScript.TestScriptTeardownComponent parseTestScriptTestScriptTeardownComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 17105 TestScript.TestScriptTeardownComponent res = new TestScript.TestScriptTeardownComponent(); 17106 parseBackboneAttributes(xpp, res); 17107 next(xpp); 17108 int eventType = nextNoWhitespace(xpp); 17109 while (eventType != XmlPullParser.END_TAG) { 17110 if (!parseTestScriptTestScriptTeardownComponentContent(eventType, xpp, owner, res)) 17111 unknownContent(xpp); 17112 eventType = nextNoWhitespace(xpp); 17113 } 17114 next(xpp); 17115 parseElementClose(res); 17116 return res; 17117 } 17118 17119 protected boolean parseTestScriptTestScriptTeardownComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.TestScriptTeardownComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17120 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 17121 res.getAction().add(parseTestScriptTeardownActionComponent(xpp, owner)); 17122 } else if (!parseBackboneContent(eventType, xpp, res)) 17123 return false; 17124 return true; 17125 } 17126 17127 protected TestScript.TeardownActionComponent parseTestScriptTeardownActionComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 17128 TestScript.TeardownActionComponent res = new TestScript.TeardownActionComponent(); 17129 parseBackboneAttributes(xpp, res); 17130 next(xpp); 17131 int eventType = nextNoWhitespace(xpp); 17132 while (eventType != XmlPullParser.END_TAG) { 17133 if (!parseTestScriptTeardownActionComponentContent(eventType, xpp, owner, res)) 17134 unknownContent(xpp); 17135 eventType = nextNoWhitespace(xpp); 17136 } 17137 next(xpp); 17138 parseElementClose(res); 17139 return res; 17140 } 17141 17142 protected boolean parseTestScriptTeardownActionComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.TeardownActionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17143 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operation")) { 17144 res.setOperation(parseTestScriptSetupActionOperationComponent(xpp, owner)); 17145 } else if (!parseBackboneContent(eventType, xpp, res)) 17146 return false; 17147 return true; 17148 } 17149 17150 protected ValueSet parseValueSet(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 17151 ValueSet res = new ValueSet(); 17152 parseDomainResourceAttributes(xpp, res); 17153 next(xpp); 17154 int eventType = nextNoWhitespace(xpp); 17155 while (eventType != XmlPullParser.END_TAG) { 17156 if (!parseValueSetContent(eventType, xpp, res)) 17157 unknownContent(xpp); 17158 eventType = nextNoWhitespace(xpp); 17159 } 17160 next(xpp); 17161 parseElementClose(res); 17162 return res; 17163 } 17164 17165 protected boolean parseValueSetContent(int eventType, XmlPullParser xpp, ValueSet res) throws XmlPullParserException, IOException, FHIRFormatError { 17166 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 17167 res.setUrlElement(parseUri(xpp)); 17168 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 17169 res.getIdentifier().add(parseIdentifier(xpp)); 17170 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 17171 res.setVersionElement(parseString(xpp)); 17172 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 17173 res.setNameElement(parseString(xpp)); 17174 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 17175 res.setTitleElement(parseString(xpp)); 17176 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 17177 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 17178 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 17179 res.setExperimentalElement(parseBoolean(xpp)); 17180 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 17181 res.setDateElement(parseDateTime(xpp)); 17182 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 17183 res.setPublisherElement(parseString(xpp)); 17184 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 17185 res.getContact().add(parseContactDetail(xpp)); 17186 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 17187 res.setDescriptionElement(parseMarkdown(xpp)); 17188 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 17189 res.getUseContext().add(parseUsageContext(xpp)); 17190 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 17191 res.getJurisdiction().add(parseCodeableConcept(xpp)); 17192 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("immutable")) { 17193 res.setImmutableElement(parseBoolean(xpp)); 17194 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 17195 res.setPurposeElement(parseMarkdown(xpp)); 17196 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 17197 res.setCopyrightElement(parseMarkdown(xpp)); 17198 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("extensible")) { 17199 res.setExtensibleElement(parseBoolean(xpp)); 17200 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("compose")) { 17201 res.setCompose(parseValueSetValueSetComposeComponent(xpp, res)); 17202 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expansion")) { 17203 res.setExpansion(parseValueSetValueSetExpansionComponent(xpp, res)); 17204 } else if (!parseDomainResourceContent(eventType, xpp, res)) 17205 return false; 17206 return true; 17207 } 17208 17209 protected ValueSet.ValueSetComposeComponent parseValueSetValueSetComposeComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 17210 ValueSet.ValueSetComposeComponent res = new ValueSet.ValueSetComposeComponent(); 17211 parseBackboneAttributes(xpp, res); 17212 next(xpp); 17213 int eventType = nextNoWhitespace(xpp); 17214 while (eventType != XmlPullParser.END_TAG) { 17215 if (!parseValueSetValueSetComposeComponentContent(eventType, xpp, owner, res)) 17216 unknownContent(xpp); 17217 eventType = nextNoWhitespace(xpp); 17218 } 17219 next(xpp); 17220 parseElementClose(res); 17221 return res; 17222 } 17223 17224 protected boolean parseValueSetValueSetComposeComponentContent(int eventType, XmlPullParser xpp, ValueSet owner, ValueSet.ValueSetComposeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17225 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lockedDate")) { 17226 res.setLockedDateElement(parseDate(xpp)); 17227 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("inactive")) { 17228 res.setInactiveElement(parseBoolean(xpp)); 17229 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("include")) { 17230 res.getInclude().add(parseValueSetConceptSetComponent(xpp, owner)); 17231 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exclude")) { 17232 res.getExclude().add(parseValueSetConceptSetComponent(xpp, owner)); 17233 } else if (!parseBackboneContent(eventType, xpp, res)) 17234 return false; 17235 return true; 17236 } 17237 17238 protected ValueSet.ConceptSetComponent parseValueSetConceptSetComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 17239 ValueSet.ConceptSetComponent res = new ValueSet.ConceptSetComponent(); 17240 parseBackboneAttributes(xpp, res); 17241 next(xpp); 17242 int eventType = nextNoWhitespace(xpp); 17243 while (eventType != XmlPullParser.END_TAG) { 17244 if (!parseValueSetConceptSetComponentContent(eventType, xpp, owner, res)) 17245 unknownContent(xpp); 17246 eventType = nextNoWhitespace(xpp); 17247 } 17248 next(xpp); 17249 parseElementClose(res); 17250 return res; 17251 } 17252 17253 protected boolean parseValueSetConceptSetComponentContent(int eventType, XmlPullParser xpp, ValueSet owner, ValueSet.ConceptSetComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17254 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 17255 res.setSystemElement(parseUri(xpp)); 17256 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 17257 res.setVersionElement(parseString(xpp)); 17258 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("concept")) { 17259 res.getConcept().add(parseValueSetConceptReferenceComponent(xpp, owner)); 17260 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("filter")) { 17261 res.getFilter().add(parseValueSetConceptSetFilterComponent(xpp, owner)); 17262 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valueSet")) { 17263 res.getValueSet().add(parseUri(xpp)); 17264 } else if (!parseBackboneContent(eventType, xpp, res)) 17265 return false; 17266 return true; 17267 } 17268 17269 protected ValueSet.ConceptReferenceComponent parseValueSetConceptReferenceComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 17270 ValueSet.ConceptReferenceComponent res = new ValueSet.ConceptReferenceComponent(); 17271 parseBackboneAttributes(xpp, res); 17272 next(xpp); 17273 int eventType = nextNoWhitespace(xpp); 17274 while (eventType != XmlPullParser.END_TAG) { 17275 if (!parseValueSetConceptReferenceComponentContent(eventType, xpp, owner, res)) 17276 unknownContent(xpp); 17277 eventType = nextNoWhitespace(xpp); 17278 } 17279 next(xpp); 17280 parseElementClose(res); 17281 return res; 17282 } 17283 17284 protected boolean parseValueSetConceptReferenceComponentContent(int eventType, XmlPullParser xpp, ValueSet owner, ValueSet.ConceptReferenceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17285 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 17286 res.setCodeElement(parseCode(xpp)); 17287 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 17288 res.setDisplayElement(parseString(xpp)); 17289 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("designation")) { 17290 res.getDesignation().add(parseValueSetConceptReferenceDesignationComponent(xpp, owner)); 17291 } else if (!parseBackboneContent(eventType, xpp, res)) 17292 return false; 17293 return true; 17294 } 17295 17296 protected ValueSet.ConceptReferenceDesignationComponent parseValueSetConceptReferenceDesignationComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 17297 ValueSet.ConceptReferenceDesignationComponent res = new ValueSet.ConceptReferenceDesignationComponent(); 17298 parseBackboneAttributes(xpp, res); 17299 next(xpp); 17300 int eventType = nextNoWhitespace(xpp); 17301 while (eventType != XmlPullParser.END_TAG) { 17302 if (!parseValueSetConceptReferenceDesignationComponentContent(eventType, xpp, owner, res)) 17303 unknownContent(xpp); 17304 eventType = nextNoWhitespace(xpp); 17305 } 17306 next(xpp); 17307 parseElementClose(res); 17308 return res; 17309 } 17310 17311 protected boolean parseValueSetConceptReferenceDesignationComponentContent(int eventType, XmlPullParser xpp, ValueSet owner, ValueSet.ConceptReferenceDesignationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17312 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 17313 res.setLanguageElement(parseCode(xpp)); 17314 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 17315 res.setUse(parseCoding(xpp)); 17316 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 17317 res.setValueElement(parseString(xpp)); 17318 } else if (!parseBackboneContent(eventType, xpp, res)) 17319 return false; 17320 return true; 17321 } 17322 17323 protected ValueSet.ConceptSetFilterComponent parseValueSetConceptSetFilterComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 17324 ValueSet.ConceptSetFilterComponent res = new ValueSet.ConceptSetFilterComponent(); 17325 parseBackboneAttributes(xpp, res); 17326 next(xpp); 17327 int eventType = nextNoWhitespace(xpp); 17328 while (eventType != XmlPullParser.END_TAG) { 17329 if (!parseValueSetConceptSetFilterComponentContent(eventType, xpp, owner, res)) 17330 unknownContent(xpp); 17331 eventType = nextNoWhitespace(xpp); 17332 } 17333 next(xpp); 17334 parseElementClose(res); 17335 return res; 17336 } 17337 17338 protected boolean parseValueSetConceptSetFilterComponentContent(int eventType, XmlPullParser xpp, ValueSet owner, ValueSet.ConceptSetFilterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17339 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("property")) { 17340 res.setPropertyElement(parseCode(xpp)); 17341 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("op")) { 17342 res.setOpElement(parseEnumeration(xpp, ValueSet.FilterOperator.NULL, new ValueSet.FilterOperatorEnumFactory())); 17343 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 17344 res.setValueElement(parseCode(xpp)); 17345 } else if (!parseBackboneContent(eventType, xpp, res)) 17346 return false; 17347 return true; 17348 } 17349 17350 protected ValueSet.ValueSetExpansionComponent parseValueSetValueSetExpansionComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 17351 ValueSet.ValueSetExpansionComponent res = new ValueSet.ValueSetExpansionComponent(); 17352 parseBackboneAttributes(xpp, res); 17353 next(xpp); 17354 int eventType = nextNoWhitespace(xpp); 17355 while (eventType != XmlPullParser.END_TAG) { 17356 if (!parseValueSetValueSetExpansionComponentContent(eventType, xpp, owner, res)) 17357 unknownContent(xpp); 17358 eventType = nextNoWhitespace(xpp); 17359 } 17360 next(xpp); 17361 parseElementClose(res); 17362 return res; 17363 } 17364 17365 protected boolean parseValueSetValueSetExpansionComponentContent(int eventType, XmlPullParser xpp, ValueSet owner, ValueSet.ValueSetExpansionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17366 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 17367 res.setIdentifierElement(parseUri(xpp)); 17368 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("timestamp")) { 17369 res.setTimestampElement(parseDateTime(xpp)); 17370 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("total")) { 17371 res.setTotalElement(parseInteger(xpp)); 17372 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("offset")) { 17373 res.setOffsetElement(parseInteger(xpp)); 17374 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameter")) { 17375 res.getParameter().add(parseValueSetValueSetExpansionParameterComponent(xpp, owner)); 17376 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contains")) { 17377 res.getContains().add(parseValueSetValueSetExpansionContainsComponent(xpp, owner)); 17378 } else if (!parseBackboneContent(eventType, xpp, res)) 17379 return false; 17380 return true; 17381 } 17382 17383 protected ValueSet.ValueSetExpansionParameterComponent parseValueSetValueSetExpansionParameterComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 17384 ValueSet.ValueSetExpansionParameterComponent res = new ValueSet.ValueSetExpansionParameterComponent(); 17385 parseBackboneAttributes(xpp, res); 17386 next(xpp); 17387 int eventType = nextNoWhitespace(xpp); 17388 while (eventType != XmlPullParser.END_TAG) { 17389 if (!parseValueSetValueSetExpansionParameterComponentContent(eventType, xpp, owner, res)) 17390 unknownContent(xpp); 17391 eventType = nextNoWhitespace(xpp); 17392 } 17393 next(xpp); 17394 parseElementClose(res); 17395 return res; 17396 } 17397 17398 protected boolean parseValueSetValueSetExpansionParameterComponentContent(int eventType, XmlPullParser xpp, ValueSet owner, ValueSet.ValueSetExpansionParameterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17399 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 17400 res.setNameElement(parseString(xpp)); 17401 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 17402 res.setValue(parseType("value", xpp)); 17403 } else if (!parseBackboneContent(eventType, xpp, res)) 17404 return false; 17405 return true; 17406 } 17407 17408 protected ValueSet.ValueSetExpansionContainsComponent parseValueSetValueSetExpansionContainsComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 17409 ValueSet.ValueSetExpansionContainsComponent res = new ValueSet.ValueSetExpansionContainsComponent(); 17410 parseBackboneAttributes(xpp, res); 17411 next(xpp); 17412 int eventType = nextNoWhitespace(xpp); 17413 while (eventType != XmlPullParser.END_TAG) { 17414 if (!parseValueSetValueSetExpansionContainsComponentContent(eventType, xpp, owner, res)) 17415 unknownContent(xpp); 17416 eventType = nextNoWhitespace(xpp); 17417 } 17418 next(xpp); 17419 parseElementClose(res); 17420 return res; 17421 } 17422 17423 protected boolean parseValueSetValueSetExpansionContainsComponentContent(int eventType, XmlPullParser xpp, ValueSet owner, ValueSet.ValueSetExpansionContainsComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17424 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 17425 res.setSystemElement(parseUri(xpp)); 17426 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("abstract")) { 17427 res.setAbstractElement(parseBoolean(xpp)); 17428 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("inactive")) { 17429 res.setInactiveElement(parseBoolean(xpp)); 17430 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 17431 res.setVersionElement(parseString(xpp)); 17432 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 17433 res.setCodeElement(parseCode(xpp)); 17434 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 17435 res.setDisplayElement(parseString(xpp)); 17436 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("designation")) { 17437 res.getDesignation().add(parseValueSetConceptReferenceDesignationComponent(xpp, owner)); 17438 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contains")) { 17439 res.getContains().add(parseValueSetValueSetExpansionContainsComponent(xpp, owner)); 17440 } else if (!parseBackboneContent(eventType, xpp, res)) 17441 return false; 17442 return true; 17443 } 17444 17445 protected VisionPrescription parseVisionPrescription(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 17446 VisionPrescription res = new VisionPrescription(); 17447 parseDomainResourceAttributes(xpp, res); 17448 next(xpp); 17449 int eventType = nextNoWhitespace(xpp); 17450 while (eventType != XmlPullParser.END_TAG) { 17451 if (!parseVisionPrescriptionContent(eventType, xpp, res)) 17452 unknownContent(xpp); 17453 eventType = nextNoWhitespace(xpp); 17454 } 17455 next(xpp); 17456 parseElementClose(res); 17457 return res; 17458 } 17459 17460 protected boolean parseVisionPrescriptionContent(int eventType, XmlPullParser xpp, VisionPrescription res) throws XmlPullParserException, IOException, FHIRFormatError { 17461 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 17462 res.getIdentifier().add(parseIdentifier(xpp)); 17463 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 17464 res.setStatusElement(parseEnumeration(xpp, VisionPrescription.VisionStatus.NULL, new VisionPrescription.VisionStatusEnumFactory())); 17465 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 17466 res.setPatient(parseReference(xpp)); 17467 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 17468 res.setEncounter(parseReference(xpp)); 17469 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateWritten")) { 17470 res.setDateWrittenElement(parseDateTime(xpp)); 17471 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prescriber")) { 17472 res.setPrescriber(parseReference(xpp)); 17473 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "reason")) { 17474 res.setReason(parseType("reason", xpp)); 17475 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dispense")) { 17476 res.getDispense().add(parseVisionPrescriptionVisionPrescriptionDispenseComponent(xpp, res)); 17477 } else if (!parseDomainResourceContent(eventType, xpp, res)) 17478 return false; 17479 return true; 17480 } 17481 17482 protected VisionPrescription.VisionPrescriptionDispenseComponent parseVisionPrescriptionVisionPrescriptionDispenseComponent(XmlPullParser xpp, VisionPrescription owner) throws XmlPullParserException, IOException, FHIRFormatError { 17483 VisionPrescription.VisionPrescriptionDispenseComponent res = new VisionPrescription.VisionPrescriptionDispenseComponent(); 17484 parseBackboneAttributes(xpp, res); 17485 next(xpp); 17486 int eventType = nextNoWhitespace(xpp); 17487 while (eventType != XmlPullParser.END_TAG) { 17488 if (!parseVisionPrescriptionVisionPrescriptionDispenseComponentContent(eventType, xpp, owner, res)) 17489 unknownContent(xpp); 17490 eventType = nextNoWhitespace(xpp); 17491 } 17492 next(xpp); 17493 parseElementClose(res); 17494 return res; 17495 } 17496 17497 protected boolean parseVisionPrescriptionVisionPrescriptionDispenseComponentContent(int eventType, XmlPullParser xpp, VisionPrescription owner, VisionPrescription.VisionPrescriptionDispenseComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17498 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("product")) { 17499 res.setProduct(parseCodeableConcept(xpp)); 17500 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eye")) { 17501 res.setEyeElement(parseEnumeration(xpp, VisionPrescription.VisionEyes.NULL, new VisionPrescription.VisionEyesEnumFactory())); 17502 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sphere")) { 17503 res.setSphereElement(parseDecimal(xpp)); 17504 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("cylinder")) { 17505 res.setCylinderElement(parseDecimal(xpp)); 17506 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("axis")) { 17507 res.setAxisElement(parseInteger(xpp)); 17508 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prism")) { 17509 res.setPrismElement(parseDecimal(xpp)); 17510 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("base")) { 17511 res.setBaseElement(parseEnumeration(xpp, VisionPrescription.VisionBase.NULL, new VisionPrescription.VisionBaseEnumFactory())); 17512 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("add")) { 17513 res.setAddElement(parseDecimal(xpp)); 17514 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("power")) { 17515 res.setPowerElement(parseDecimal(xpp)); 17516 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("backCurve")) { 17517 res.setBackCurveElement(parseDecimal(xpp)); 17518 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diameter")) { 17519 res.setDiameterElement(parseDecimal(xpp)); 17520 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("duration")) { 17521 res.setDuration(parseSimpleQuantity(xpp)); 17522 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("color")) { 17523 res.setColorElement(parseString(xpp)); 17524 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("brand")) { 17525 res.setBrandElement(parseString(xpp)); 17526 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 17527 res.getNote().add(parseAnnotation(xpp)); 17528 } else if (!parseBackboneContent(eventType, xpp, res)) 17529 return false; 17530 return true; 17531 } 17532 17533 @Override 17534 protected Resource parseResource(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 17535 if (xpp.getName().equals("Parameters")) 17536 return parseParameters(xpp); 17537 else if (xpp.getName().equals("Account")) 17538 return parseAccount(xpp); 17539 else if (xpp.getName().equals("ActivityDefinition")) 17540 return parseActivityDefinition(xpp); 17541 else if (xpp.getName().equals("AdverseEvent")) 17542 return parseAdverseEvent(xpp); 17543 else if (xpp.getName().equals("AllergyIntolerance")) 17544 return parseAllergyIntolerance(xpp); 17545 else if (xpp.getName().equals("Appointment")) 17546 return parseAppointment(xpp); 17547 else if (xpp.getName().equals("AppointmentResponse")) 17548 return parseAppointmentResponse(xpp); 17549 else if (xpp.getName().equals("AuditEvent")) 17550 return parseAuditEvent(xpp); 17551 else if (xpp.getName().equals("Basic")) 17552 return parseBasic(xpp); 17553 else if (xpp.getName().equals("Binary")) 17554 return parseBinary(xpp); 17555 else if (xpp.getName().equals("BodySite")) 17556 return parseBodySite(xpp); 17557 else if (xpp.getName().equals("Bundle")) 17558 return parseBundle(xpp); 17559 else if (xpp.getName().equals("CapabilityStatement")) 17560 return parseCapabilityStatement(xpp); 17561 else if (xpp.getName().equals("CarePlan")) 17562 return parseCarePlan(xpp); 17563 else if (xpp.getName().equals("CareTeam")) 17564 return parseCareTeam(xpp); 17565 else if (xpp.getName().equals("ChargeItem")) 17566 return parseChargeItem(xpp); 17567 else if (xpp.getName().equals("Claim")) 17568 return parseClaim(xpp); 17569 else if (xpp.getName().equals("ClaimResponse")) 17570 return parseClaimResponse(xpp); 17571 else if (xpp.getName().equals("ClinicalImpression")) 17572 return parseClinicalImpression(xpp); 17573 else if (xpp.getName().equals("CodeSystem")) 17574 return parseCodeSystem(xpp); 17575 else if (xpp.getName().equals("Communication")) 17576 return parseCommunication(xpp); 17577 else if (xpp.getName().equals("CommunicationRequest")) 17578 return parseCommunicationRequest(xpp); 17579 else if (xpp.getName().equals("CompartmentDefinition")) 17580 return parseCompartmentDefinition(xpp); 17581 else if (xpp.getName().equals("Composition")) 17582 return parseComposition(xpp); 17583 else if (xpp.getName().equals("ConceptMap")) 17584 return parseConceptMap(xpp); 17585 else if (xpp.getName().equals("Condition")) 17586 return parseCondition(xpp); 17587 else if (xpp.getName().equals("Consent")) 17588 return parseConsent(xpp); 17589 else if (xpp.getName().equals("Contract")) 17590 return parseContract(xpp); 17591 else if (xpp.getName().equals("Coverage")) 17592 return parseCoverage(xpp); 17593 else if (xpp.getName().equals("DataElement")) 17594 return parseDataElement(xpp); 17595 else if (xpp.getName().equals("DetectedIssue")) 17596 return parseDetectedIssue(xpp); 17597 else if (xpp.getName().equals("Device")) 17598 return parseDevice(xpp); 17599 else if (xpp.getName().equals("DeviceComponent")) 17600 return parseDeviceComponent(xpp); 17601 else if (xpp.getName().equals("DeviceMetric")) 17602 return parseDeviceMetric(xpp); 17603 else if (xpp.getName().equals("DeviceRequest")) 17604 return parseDeviceRequest(xpp); 17605 else if (xpp.getName().equals("DeviceUseStatement")) 17606 return parseDeviceUseStatement(xpp); 17607 else if (xpp.getName().equals("DiagnosticReport")) 17608 return parseDiagnosticReport(xpp); 17609 else if (xpp.getName().equals("DocumentManifest")) 17610 return parseDocumentManifest(xpp); 17611 else if (xpp.getName().equals("DocumentReference")) 17612 return parseDocumentReference(xpp); 17613 else if (xpp.getName().equals("EligibilityRequest")) 17614 return parseEligibilityRequest(xpp); 17615 else if (xpp.getName().equals("EligibilityResponse")) 17616 return parseEligibilityResponse(xpp); 17617 else if (xpp.getName().equals("Encounter")) 17618 return parseEncounter(xpp); 17619 else if (xpp.getName().equals("Endpoint")) 17620 return parseEndpoint(xpp); 17621 else if (xpp.getName().equals("EnrollmentRequest")) 17622 return parseEnrollmentRequest(xpp); 17623 else if (xpp.getName().equals("EnrollmentResponse")) 17624 return parseEnrollmentResponse(xpp); 17625 else if (xpp.getName().equals("EpisodeOfCare")) 17626 return parseEpisodeOfCare(xpp); 17627 else if (xpp.getName().equals("ExpansionProfile")) 17628 return parseExpansionProfile(xpp); 17629 else if (xpp.getName().equals("ExplanationOfBenefit")) 17630 return parseExplanationOfBenefit(xpp); 17631 else if (xpp.getName().equals("FamilyMemberHistory")) 17632 return parseFamilyMemberHistory(xpp); 17633 else if (xpp.getName().equals("Flag")) 17634 return parseFlag(xpp); 17635 else if (xpp.getName().equals("Goal")) 17636 return parseGoal(xpp); 17637 else if (xpp.getName().equals("GraphDefinition")) 17638 return parseGraphDefinition(xpp); 17639 else if (xpp.getName().equals("Group")) 17640 return parseGroup(xpp); 17641 else if (xpp.getName().equals("GuidanceResponse")) 17642 return parseGuidanceResponse(xpp); 17643 else if (xpp.getName().equals("HealthcareService")) 17644 return parseHealthcareService(xpp); 17645 else if (xpp.getName().equals("ImagingManifest")) 17646 return parseImagingManifest(xpp); 17647 else if (xpp.getName().equals("ImagingStudy")) 17648 return parseImagingStudy(xpp); 17649 else if (xpp.getName().equals("Immunization")) 17650 return parseImmunization(xpp); 17651 else if (xpp.getName().equals("ImmunizationRecommendation")) 17652 return parseImmunizationRecommendation(xpp); 17653 else if (xpp.getName().equals("ImplementationGuide")) 17654 return parseImplementationGuide(xpp); 17655 else if (xpp.getName().equals("Library")) 17656 return parseLibrary(xpp); 17657 else if (xpp.getName().equals("Linkage")) 17658 return parseLinkage(xpp); 17659 else if (xpp.getName().equals("List")) 17660 return parseListResource(xpp); 17661 else if (xpp.getName().equals("Location")) 17662 return parseLocation(xpp); 17663 else if (xpp.getName().equals("Measure")) 17664 return parseMeasure(xpp); 17665 else if (xpp.getName().equals("MeasureReport")) 17666 return parseMeasureReport(xpp); 17667 else if (xpp.getName().equals("Media")) 17668 return parseMedia(xpp); 17669 else if (xpp.getName().equals("Medication")) 17670 return parseMedication(xpp); 17671 else if (xpp.getName().equals("MedicationAdministration")) 17672 return parseMedicationAdministration(xpp); 17673 else if (xpp.getName().equals("MedicationDispense")) 17674 return parseMedicationDispense(xpp); 17675 else if (xpp.getName().equals("MedicationRequest")) 17676 return parseMedicationRequest(xpp); 17677 else if (xpp.getName().equals("MedicationStatement")) 17678 return parseMedicationStatement(xpp); 17679 else if (xpp.getName().equals("MessageDefinition")) 17680 return parseMessageDefinition(xpp); 17681 else if (xpp.getName().equals("MessageHeader")) 17682 return parseMessageHeader(xpp); 17683 else if (xpp.getName().equals("NamingSystem")) 17684 return parseNamingSystem(xpp); 17685 else if (xpp.getName().equals("NutritionOrder")) 17686 return parseNutritionOrder(xpp); 17687 else if (xpp.getName().equals("Observation")) 17688 return parseObservation(xpp); 17689 else if (xpp.getName().equals("OperationDefinition")) 17690 return parseOperationDefinition(xpp); 17691 else if (xpp.getName().equals("OperationOutcome")) 17692 return parseOperationOutcome(xpp); 17693 else if (xpp.getName().equals("Organization")) 17694 return parseOrganization(xpp); 17695 else if (xpp.getName().equals("Patient")) 17696 return parsePatient(xpp); 17697 else if (xpp.getName().equals("PaymentNotice")) 17698 return parsePaymentNotice(xpp); 17699 else if (xpp.getName().equals("PaymentReconciliation")) 17700 return parsePaymentReconciliation(xpp); 17701 else if (xpp.getName().equals("Person")) 17702 return parsePerson(xpp); 17703 else if (xpp.getName().equals("PlanDefinition")) 17704 return parsePlanDefinition(xpp); 17705 else if (xpp.getName().equals("Practitioner")) 17706 return parsePractitioner(xpp); 17707 else if (xpp.getName().equals("PractitionerRole")) 17708 return parsePractitionerRole(xpp); 17709 else if (xpp.getName().equals("Procedure")) 17710 return parseProcedure(xpp); 17711 else if (xpp.getName().equals("ProcedureRequest")) 17712 return parseProcedureRequest(xpp); 17713 else if (xpp.getName().equals("ProcessRequest")) 17714 return parseProcessRequest(xpp); 17715 else if (xpp.getName().equals("ProcessResponse")) 17716 return parseProcessResponse(xpp); 17717 else if (xpp.getName().equals("Provenance")) 17718 return parseProvenance(xpp); 17719 else if (xpp.getName().equals("Questionnaire")) 17720 return parseQuestionnaire(xpp); 17721 else if (xpp.getName().equals("QuestionnaireResponse")) 17722 return parseQuestionnaireResponse(xpp); 17723 else if (xpp.getName().equals("ReferralRequest")) 17724 return parseReferralRequest(xpp); 17725 else if (xpp.getName().equals("RelatedPerson")) 17726 return parseRelatedPerson(xpp); 17727 else if (xpp.getName().equals("RequestGroup")) 17728 return parseRequestGroup(xpp); 17729 else if (xpp.getName().equals("ResearchStudy")) 17730 return parseResearchStudy(xpp); 17731 else if (xpp.getName().equals("ResearchSubject")) 17732 return parseResearchSubject(xpp); 17733 else if (xpp.getName().equals("RiskAssessment")) 17734 return parseRiskAssessment(xpp); 17735 else if (xpp.getName().equals("Schedule")) 17736 return parseSchedule(xpp); 17737 else if (xpp.getName().equals("SearchParameter")) 17738 return parseSearchParameter(xpp); 17739 else if (xpp.getName().equals("Sequence")) 17740 return parseSequence(xpp); 17741 else if (xpp.getName().equals("ServiceDefinition")) 17742 return parseServiceDefinition(xpp); 17743 else if (xpp.getName().equals("Slot")) 17744 return parseSlot(xpp); 17745 else if (xpp.getName().equals("Specimen")) 17746 return parseSpecimen(xpp); 17747 else if (xpp.getName().equals("StructureDefinition")) 17748 return parseStructureDefinition(xpp); 17749 else if (xpp.getName().equals("StructureMap")) 17750 return parseStructureMap(xpp); 17751 else if (xpp.getName().equals("Subscription")) 17752 return parseSubscription(xpp); 17753 else if (xpp.getName().equals("Substance")) 17754 return parseSubstance(xpp); 17755 else if (xpp.getName().equals("SupplyDelivery")) 17756 return parseSupplyDelivery(xpp); 17757 else if (xpp.getName().equals("SupplyRequest")) 17758 return parseSupplyRequest(xpp); 17759 else if (xpp.getName().equals("Task")) 17760 return parseTask(xpp); 17761 else if (xpp.getName().equals("TestReport")) 17762 return parseTestReport(xpp); 17763 else if (xpp.getName().equals("TestScript")) 17764 return parseTestScript(xpp); 17765 else if (xpp.getName().equals("ValueSet")) 17766 return parseValueSet(xpp); 17767 else if (xpp.getName().equals("VisionPrescription")) 17768 return parseVisionPrescription(xpp); 17769 else if (xpp.getName().equals("Binary")) 17770 return parseBinary(xpp); 17771 throw new FHIRFormatError("Unknown resource type "+xpp.getName()+""); 17772 } 17773 17774 protected Type parseType(String prefix, XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 17775 if (xpp.getName().equals(prefix+"date")) 17776 return parseDate(xpp); 17777 else if (xpp.getName().equals(prefix+"dateTime")) 17778 return parseDateTime(xpp); 17779 else if (xpp.getName().equals(prefix+"code")) 17780 return parseCode(xpp); 17781 else if (xpp.getName().equals(prefix+"string")) 17782 return parseString(xpp); 17783 else if (xpp.getName().equals(prefix+"integer")) 17784 return parseInteger(xpp); 17785 else if (xpp.getName().equals(prefix+"oid")) 17786 return parseOid(xpp); 17787 else if (xpp.getName().equals(prefix+"uri")) 17788 return parseUri(xpp); 17789 else if (xpp.getName().equals(prefix+"uuid")) 17790 return parseUuid(xpp); 17791 else if (xpp.getName().equals(prefix+"instant")) 17792 return parseInstant(xpp); 17793 else if (xpp.getName().equals(prefix+"boolean")) 17794 return parseBoolean(xpp); 17795 else if (xpp.getName().equals(prefix+"base64Binary")) 17796 return parseBase64Binary(xpp); 17797 else if (xpp.getName().equals(prefix+"unsignedInt")) 17798 return parseUnsignedInt(xpp); 17799 else if (xpp.getName().equals(prefix+"markdown")) 17800 return parseMarkdown(xpp); 17801 else if (xpp.getName().equals(prefix+"time")) 17802 return parseTime(xpp); 17803 else if (xpp.getName().equals(prefix+"id")) 17804 return parseId(xpp); 17805 else if (xpp.getName().equals(prefix+"positiveInt")) 17806 return parsePositiveInt(xpp); 17807 else if (xpp.getName().equals(prefix+"decimal")) 17808 return parseDecimal(xpp); 17809 else if (xpp.getName().equals(prefix+"Extension")) 17810 return parseExtension(xpp); 17811 else if (xpp.getName().equals(prefix+"Narrative")) 17812 return parseNarrative(xpp); 17813 else if (xpp.getName().equals(prefix+"Reference")) 17814 return parseReference(xpp); 17815 else if (xpp.getName().equals(prefix+"Quantity")) 17816 return parseQuantity(xpp); 17817 else if (xpp.getName().equals(prefix+"Period")) 17818 return parsePeriod(xpp); 17819 else if (xpp.getName().equals(prefix+"Attachment")) 17820 return parseAttachment(xpp); 17821 else if (xpp.getName().equals(prefix+"Duration")) 17822 return parseDuration(xpp); 17823 else if (xpp.getName().equals(prefix+"Count")) 17824 return parseCount(xpp); 17825 else if (xpp.getName().equals(prefix+"Range")) 17826 return parseRange(xpp); 17827 else if (xpp.getName().equals(prefix+"Annotation")) 17828 return parseAnnotation(xpp); 17829 else if (xpp.getName().equals(prefix+"Money")) 17830 return parseMoney(xpp); 17831 else if (xpp.getName().equals(prefix+"Identifier")) 17832 return parseIdentifier(xpp); 17833 else if (xpp.getName().equals(prefix+"Coding")) 17834 return parseCoding(xpp); 17835 else if (xpp.getName().equals(prefix+"Signature")) 17836 return parseSignature(xpp); 17837 else if (xpp.getName().equals(prefix+"SampledData")) 17838 return parseSampledData(xpp); 17839 else if (xpp.getName().equals(prefix+"Ratio")) 17840 return parseRatio(xpp); 17841 else if (xpp.getName().equals(prefix+"Distance")) 17842 return parseDistance(xpp); 17843 else if (xpp.getName().equals(prefix+"Age")) 17844 return parseAge(xpp); 17845 else if (xpp.getName().equals(prefix+"CodeableConcept")) 17846 return parseCodeableConcept(xpp); 17847 else if (xpp.getName().equals(prefix+"SimpleQuantity")) 17848 return parseSimpleQuantity(xpp); 17849 else if (xpp.getName().equals(prefix+"Meta")) 17850 return parseMeta(xpp); 17851 else if (xpp.getName().equals(prefix+"Address")) 17852 return parseAddress(xpp); 17853 else if (xpp.getName().equals(prefix+"TriggerDefinition")) 17854 return parseTriggerDefinition(xpp); 17855 else if (xpp.getName().equals(prefix+"Contributor")) 17856 return parseContributor(xpp); 17857 else if (xpp.getName().equals(prefix+"DataRequirement")) 17858 return parseDataRequirement(xpp); 17859 else if (xpp.getName().equals(prefix+"Dosage")) 17860 return parseDosage(xpp); 17861 else if (xpp.getName().equals(prefix+"RelatedArtifact")) 17862 return parseRelatedArtifact(xpp); 17863 else if (xpp.getName().equals(prefix+"ContactDetail")) 17864 return parseContactDetail(xpp); 17865 else if (xpp.getName().equals(prefix+"HumanName")) 17866 return parseHumanName(xpp); 17867 else if (xpp.getName().equals(prefix+"ContactPoint")) 17868 return parseContactPoint(xpp); 17869 else if (xpp.getName().equals(prefix+"UsageContext")) 17870 return parseUsageContext(xpp); 17871 else if (xpp.getName().equals(prefix+"Timing")) 17872 return parseTiming(xpp); 17873 else if (xpp.getName().equals(prefix+"ElementDefinition")) 17874 return parseElementDefinition(xpp); 17875 else if (xpp.getName().equals(prefix+"ParameterDefinition")) 17876 return parseParameterDefinition(xpp); 17877 else if (xpp.getName().equals(prefix+"Date")) 17878 return parseDate(xpp); 17879 else if (xpp.getName().equals(prefix+"DateTime")) 17880 return parseDateTime(xpp); 17881 else if (xpp.getName().equals(prefix+"Code")) 17882 return parseCode(xpp); 17883 else if (xpp.getName().equals(prefix+"String")) 17884 return parseString(xpp); 17885 else if (xpp.getName().equals(prefix+"Integer")) 17886 return parseInteger(xpp); 17887 else if (xpp.getName().equals(prefix+"Oid")) 17888 return parseOid(xpp); 17889 else if (xpp.getName().equals(prefix+"Uri")) 17890 return parseUri(xpp); 17891 else if (xpp.getName().equals(prefix+"Uuid")) 17892 return parseUuid(xpp); 17893 else if (xpp.getName().equals(prefix+"Instant")) 17894 return parseInstant(xpp); 17895 else if (xpp.getName().equals(prefix+"Boolean")) 17896 return parseBoolean(xpp); 17897 else if (xpp.getName().equals(prefix+"Base64Binary")) 17898 return parseBase64Binary(xpp); 17899 else if (xpp.getName().equals(prefix+"UnsignedInt")) 17900 return parseUnsignedInt(xpp); 17901 else if (xpp.getName().equals(prefix+"Markdown")) 17902 return parseMarkdown(xpp); 17903 else if (xpp.getName().equals(prefix+"Time")) 17904 return parseTime(xpp); 17905 else if (xpp.getName().equals(prefix+"Id")) 17906 return parseId(xpp); 17907 else if (xpp.getName().equals(prefix+"PositiveInt")) 17908 return parsePositiveInt(xpp); 17909 else if (xpp.getName().equals(prefix+"Decimal")) 17910 return parseDecimal(xpp); 17911 throw new FHIRFormatError("Unknown type "+xpp.getName()); 17912 } 17913 17914 protected Type parseType(XmlPullParser xpp, String type) throws XmlPullParserException, IOException, FHIRFormatError { 17915 if (type.equals("date")) 17916 return parseDate(xpp); 17917 else if (type.equals("dateTime")) 17918 return parseDateTime(xpp); 17919 else if (type.equals("code")) 17920 return parseCode(xpp); 17921 else if (type.equals("string")) 17922 return parseString(xpp); 17923 else if (type.equals("integer")) 17924 return parseInteger(xpp); 17925 else if (type.equals("oid")) 17926 return parseOid(xpp); 17927 else if (type.equals("uri")) 17928 return parseUri(xpp); 17929 else if (type.equals("uuid")) 17930 return parseUuid(xpp); 17931 else if (type.equals("instant")) 17932 return parseInstant(xpp); 17933 else if (type.equals("boolean")) 17934 return parseBoolean(xpp); 17935 else if (type.equals("base64Binary")) 17936 return parseBase64Binary(xpp); 17937 else if (type.equals("unsignedInt")) 17938 return parseUnsignedInt(xpp); 17939 else if (type.equals("markdown")) 17940 return parseMarkdown(xpp); 17941 else if (type.equals("time")) 17942 return parseTime(xpp); 17943 else if (type.equals("id")) 17944 return parseId(xpp); 17945 else if (type.equals("positiveInt")) 17946 return parsePositiveInt(xpp); 17947 else if (type.equals("decimal")) 17948 return parseDecimal(xpp); 17949 else if (type.equals("Extension")) 17950 return parseExtension(xpp); 17951 else if (type.equals("Narrative")) 17952 return parseNarrative(xpp); 17953 else if (type.equals("Reference")) 17954 return parseReference(xpp); 17955 else if (type.equals("Quantity")) 17956 return parseQuantity(xpp); 17957 else if (type.equals("Period")) 17958 return parsePeriod(xpp); 17959 else if (type.equals("Attachment")) 17960 return parseAttachment(xpp); 17961 else if (type.equals("Duration")) 17962 return parseDuration(xpp); 17963 else if (type.equals("Count")) 17964 return parseCount(xpp); 17965 else if (type.equals("Range")) 17966 return parseRange(xpp); 17967 else if (type.equals("Annotation")) 17968 return parseAnnotation(xpp); 17969 else if (type.equals("Money")) 17970 return parseMoney(xpp); 17971 else if (type.equals("Identifier")) 17972 return parseIdentifier(xpp); 17973 else if (type.equals("Coding")) 17974 return parseCoding(xpp); 17975 else if (type.equals("Signature")) 17976 return parseSignature(xpp); 17977 else if (type.equals("SampledData")) 17978 return parseSampledData(xpp); 17979 else if (type.equals("Ratio")) 17980 return parseRatio(xpp); 17981 else if (type.equals("Distance")) 17982 return parseDistance(xpp); 17983 else if (type.equals("Age")) 17984 return parseAge(xpp); 17985 else if (type.equals("CodeableConcept")) 17986 return parseCodeableConcept(xpp); 17987 else if (type.equals("SimpleQuantity")) 17988 return parseSimpleQuantity(xpp); 17989 else if (type.equals("Meta")) 17990 return parseMeta(xpp); 17991 else if (type.equals("Address")) 17992 return parseAddress(xpp); 17993 else if (type.equals("TriggerDefinition")) 17994 return parseTriggerDefinition(xpp); 17995 else if (type.equals("Contributor")) 17996 return parseContributor(xpp); 17997 else if (type.equals("DataRequirement")) 17998 return parseDataRequirement(xpp); 17999 else if (type.equals("Dosage")) 18000 return parseDosage(xpp); 18001 else if (type.equals("RelatedArtifact")) 18002 return parseRelatedArtifact(xpp); 18003 else if (type.equals("ContactDetail")) 18004 return parseContactDetail(xpp); 18005 else if (type.equals("HumanName")) 18006 return parseHumanName(xpp); 18007 else if (type.equals("ContactPoint")) 18008 return parseContactPoint(xpp); 18009 else if (type.equals("UsageContext")) 18010 return parseUsageContext(xpp); 18011 else if (type.equals("Timing")) 18012 return parseTiming(xpp); 18013 else if (type.equals("ElementDefinition")) 18014 return parseElementDefinition(xpp); 18015 else if (type.equals("ParameterDefinition")) 18016 return parseParameterDefinition(xpp); 18017 throw new FHIRFormatError("Unknown type "+type); 18018 } 18019 18020 public Base parseFragment(XmlPullParser xpp, String type) throws XmlPullParserException, IOException, FHIRFormatError { 18021 if (type.equals("Extension")) 18022 return parseExtension(xpp); 18023 else if (type.equals("Narrative")) 18024 return parseNarrative(xpp); 18025 else if (type.equals("Reference")) 18026 return parseReference(xpp); 18027 else if (type.equals("Quantity")) 18028 return parseQuantity(xpp); 18029 else if (type.equals("Period")) 18030 return parsePeriod(xpp); 18031 else if (type.equals("Attachment")) 18032 return parseAttachment(xpp); 18033 else if (type.equals("Duration")) 18034 return parseDuration(xpp); 18035 else if (type.equals("Count")) 18036 return parseCount(xpp); 18037 else if (type.equals("Range")) 18038 return parseRange(xpp); 18039 else if (type.equals("Annotation")) 18040 return parseAnnotation(xpp); 18041 else if (type.equals("Money")) 18042 return parseMoney(xpp); 18043 else if (type.equals("Identifier")) 18044 return parseIdentifier(xpp); 18045 else if (type.equals("Coding")) 18046 return parseCoding(xpp); 18047 else if (type.equals("Signature")) 18048 return parseSignature(xpp); 18049 else if (type.equals("SampledData")) 18050 return parseSampledData(xpp); 18051 else if (type.equals("Ratio")) 18052 return parseRatio(xpp); 18053 else if (type.equals("Distance")) 18054 return parseDistance(xpp); 18055 else if (type.equals("Age")) 18056 return parseAge(xpp); 18057 else if (type.equals("CodeableConcept")) 18058 return parseCodeableConcept(xpp); 18059 else if (type.equals("SimpleQuantity")) 18060 return parseSimpleQuantity(xpp); 18061 else if (type.equals("Meta")) 18062 return parseMeta(xpp); 18063 else if (type.equals("Address")) 18064 return parseAddress(xpp); 18065 else if (type.equals("TriggerDefinition")) 18066 return parseTriggerDefinition(xpp); 18067 else if (type.equals("Contributor")) 18068 return parseContributor(xpp); 18069 else if (type.equals("DataRequirement")) 18070 return parseDataRequirement(xpp); 18071 else if (type.equals("Dosage")) 18072 return parseDosage(xpp); 18073 else if (type.equals("RelatedArtifact")) 18074 return parseRelatedArtifact(xpp); 18075 else if (type.equals("ContactDetail")) 18076 return parseContactDetail(xpp); 18077 else if (type.equals("HumanName")) 18078 return parseHumanName(xpp); 18079 else if (type.equals("ContactPoint")) 18080 return parseContactPoint(xpp); 18081 else if (type.equals("UsageContext")) 18082 return parseUsageContext(xpp); 18083 else if (type.equals("Timing")) 18084 return parseTiming(xpp); 18085 else if (type.equals("ElementDefinition")) 18086 return parseElementDefinition(xpp); 18087 else if (type.equals("ParameterDefinition")) 18088 return parseParameterDefinition(xpp); 18089 else if (type.equals("Parameters")) 18090 return parseParameters(xpp); 18091 else if (type.equals("Account")) 18092 return parseAccount(xpp); 18093 else if (type.equals("ActivityDefinition")) 18094 return parseActivityDefinition(xpp); 18095 else if (type.equals("AdverseEvent")) 18096 return parseAdverseEvent(xpp); 18097 else if (type.equals("AllergyIntolerance")) 18098 return parseAllergyIntolerance(xpp); 18099 else if (type.equals("Appointment")) 18100 return parseAppointment(xpp); 18101 else if (type.equals("AppointmentResponse")) 18102 return parseAppointmentResponse(xpp); 18103 else if (type.equals("AuditEvent")) 18104 return parseAuditEvent(xpp); 18105 else if (type.equals("Basic")) 18106 return parseBasic(xpp); 18107 else if (type.equals("Binary")) 18108 return parseBinary(xpp); 18109 else if (type.equals("BodySite")) 18110 return parseBodySite(xpp); 18111 else if (type.equals("Bundle")) 18112 return parseBundle(xpp); 18113 else if (type.equals("CapabilityStatement")) 18114 return parseCapabilityStatement(xpp); 18115 else if (type.equals("CarePlan")) 18116 return parseCarePlan(xpp); 18117 else if (type.equals("CareTeam")) 18118 return parseCareTeam(xpp); 18119 else if (type.equals("ChargeItem")) 18120 return parseChargeItem(xpp); 18121 else if (type.equals("Claim")) 18122 return parseClaim(xpp); 18123 else if (type.equals("ClaimResponse")) 18124 return parseClaimResponse(xpp); 18125 else if (type.equals("ClinicalImpression")) 18126 return parseClinicalImpression(xpp); 18127 else if (type.equals("CodeSystem")) 18128 return parseCodeSystem(xpp); 18129 else if (type.equals("Communication")) 18130 return parseCommunication(xpp); 18131 else if (type.equals("CommunicationRequest")) 18132 return parseCommunicationRequest(xpp); 18133 else if (type.equals("CompartmentDefinition")) 18134 return parseCompartmentDefinition(xpp); 18135 else if (type.equals("Composition")) 18136 return parseComposition(xpp); 18137 else if (type.equals("ConceptMap")) 18138 return parseConceptMap(xpp); 18139 else if (type.equals("Condition")) 18140 return parseCondition(xpp); 18141 else if (type.equals("Consent")) 18142 return parseConsent(xpp); 18143 else if (type.equals("Contract")) 18144 return parseContract(xpp); 18145 else if (type.equals("Coverage")) 18146 return parseCoverage(xpp); 18147 else if (type.equals("DataElement")) 18148 return parseDataElement(xpp); 18149 else if (type.equals("DetectedIssue")) 18150 return parseDetectedIssue(xpp); 18151 else if (type.equals("Device")) 18152 return parseDevice(xpp); 18153 else if (type.equals("DeviceComponent")) 18154 return parseDeviceComponent(xpp); 18155 else if (type.equals("DeviceMetric")) 18156 return parseDeviceMetric(xpp); 18157 else if (type.equals("DeviceRequest")) 18158 return parseDeviceRequest(xpp); 18159 else if (type.equals("DeviceUseStatement")) 18160 return parseDeviceUseStatement(xpp); 18161 else if (type.equals("DiagnosticReport")) 18162 return parseDiagnosticReport(xpp); 18163 else if (type.equals("DocumentManifest")) 18164 return parseDocumentManifest(xpp); 18165 else if (type.equals("DocumentReference")) 18166 return parseDocumentReference(xpp); 18167 else if (type.equals("EligibilityRequest")) 18168 return parseEligibilityRequest(xpp); 18169 else if (type.equals("EligibilityResponse")) 18170 return parseEligibilityResponse(xpp); 18171 else if (type.equals("Encounter")) 18172 return parseEncounter(xpp); 18173 else if (type.equals("Endpoint")) 18174 return parseEndpoint(xpp); 18175 else if (type.equals("EnrollmentRequest")) 18176 return parseEnrollmentRequest(xpp); 18177 else if (type.equals("EnrollmentResponse")) 18178 return parseEnrollmentResponse(xpp); 18179 else if (type.equals("EpisodeOfCare")) 18180 return parseEpisodeOfCare(xpp); 18181 else if (type.equals("ExpansionProfile")) 18182 return parseExpansionProfile(xpp); 18183 else if (type.equals("ExplanationOfBenefit")) 18184 return parseExplanationOfBenefit(xpp); 18185 else if (type.equals("FamilyMemberHistory")) 18186 return parseFamilyMemberHistory(xpp); 18187 else if (type.equals("Flag")) 18188 return parseFlag(xpp); 18189 else if (type.equals("Goal")) 18190 return parseGoal(xpp); 18191 else if (type.equals("GraphDefinition")) 18192 return parseGraphDefinition(xpp); 18193 else if (type.equals("Group")) 18194 return parseGroup(xpp); 18195 else if (type.equals("GuidanceResponse")) 18196 return parseGuidanceResponse(xpp); 18197 else if (type.equals("HealthcareService")) 18198 return parseHealthcareService(xpp); 18199 else if (type.equals("ImagingManifest")) 18200 return parseImagingManifest(xpp); 18201 else if (type.equals("ImagingStudy")) 18202 return parseImagingStudy(xpp); 18203 else if (type.equals("Immunization")) 18204 return parseImmunization(xpp); 18205 else if (type.equals("ImmunizationRecommendation")) 18206 return parseImmunizationRecommendation(xpp); 18207 else if (type.equals("ImplementationGuide")) 18208 return parseImplementationGuide(xpp); 18209 else if (type.equals("Library")) 18210 return parseLibrary(xpp); 18211 else if (type.equals("Linkage")) 18212 return parseLinkage(xpp); 18213 else if (type.equals("List")) 18214 return parseListResource(xpp); 18215 else if (type.equals("Location")) 18216 return parseLocation(xpp); 18217 else if (type.equals("Measure")) 18218 return parseMeasure(xpp); 18219 else if (type.equals("MeasureReport")) 18220 return parseMeasureReport(xpp); 18221 else if (type.equals("Media")) 18222 return parseMedia(xpp); 18223 else if (type.equals("Medication")) 18224 return parseMedication(xpp); 18225 else if (type.equals("MedicationAdministration")) 18226 return parseMedicationAdministration(xpp); 18227 else if (type.equals("MedicationDispense")) 18228 return parseMedicationDispense(xpp); 18229 else if (type.equals("MedicationRequest")) 18230 return parseMedicationRequest(xpp); 18231 else if (type.equals("MedicationStatement")) 18232 return parseMedicationStatement(xpp); 18233 else if (type.equals("MessageDefinition")) 18234 return parseMessageDefinition(xpp); 18235 else if (type.equals("MessageHeader")) 18236 return parseMessageHeader(xpp); 18237 else if (type.equals("NamingSystem")) 18238 return parseNamingSystem(xpp); 18239 else if (type.equals("NutritionOrder")) 18240 return parseNutritionOrder(xpp); 18241 else if (type.equals("Observation")) 18242 return parseObservation(xpp); 18243 else if (type.equals("OperationDefinition")) 18244 return parseOperationDefinition(xpp); 18245 else if (type.equals("OperationOutcome")) 18246 return parseOperationOutcome(xpp); 18247 else if (type.equals("Organization")) 18248 return parseOrganization(xpp); 18249 else if (type.equals("Patient")) 18250 return parsePatient(xpp); 18251 else if (type.equals("PaymentNotice")) 18252 return parsePaymentNotice(xpp); 18253 else if (type.equals("PaymentReconciliation")) 18254 return parsePaymentReconciliation(xpp); 18255 else if (type.equals("Person")) 18256 return parsePerson(xpp); 18257 else if (type.equals("PlanDefinition")) 18258 return parsePlanDefinition(xpp); 18259 else if (type.equals("Practitioner")) 18260 return parsePractitioner(xpp); 18261 else if (type.equals("PractitionerRole")) 18262 return parsePractitionerRole(xpp); 18263 else if (type.equals("Procedure")) 18264 return parseProcedure(xpp); 18265 else if (type.equals("ProcedureRequest")) 18266 return parseProcedureRequest(xpp); 18267 else if (type.equals("ProcessRequest")) 18268 return parseProcessRequest(xpp); 18269 else if (type.equals("ProcessResponse")) 18270 return parseProcessResponse(xpp); 18271 else if (type.equals("Provenance")) 18272 return parseProvenance(xpp); 18273 else if (type.equals("Questionnaire")) 18274 return parseQuestionnaire(xpp); 18275 else if (type.equals("QuestionnaireResponse")) 18276 return parseQuestionnaireResponse(xpp); 18277 else if (type.equals("ReferralRequest")) 18278 return parseReferralRequest(xpp); 18279 else if (type.equals("RelatedPerson")) 18280 return parseRelatedPerson(xpp); 18281 else if (type.equals("RequestGroup")) 18282 return parseRequestGroup(xpp); 18283 else if (type.equals("ResearchStudy")) 18284 return parseResearchStudy(xpp); 18285 else if (type.equals("ResearchSubject")) 18286 return parseResearchSubject(xpp); 18287 else if (type.equals("RiskAssessment")) 18288 return parseRiskAssessment(xpp); 18289 else if (type.equals("Schedule")) 18290 return parseSchedule(xpp); 18291 else if (type.equals("SearchParameter")) 18292 return parseSearchParameter(xpp); 18293 else if (type.equals("Sequence")) 18294 return parseSequence(xpp); 18295 else if (type.equals("ServiceDefinition")) 18296 return parseServiceDefinition(xpp); 18297 else if (type.equals("Slot")) 18298 return parseSlot(xpp); 18299 else if (type.equals("Specimen")) 18300 return parseSpecimen(xpp); 18301 else if (type.equals("StructureDefinition")) 18302 return parseStructureDefinition(xpp); 18303 else if (type.equals("StructureMap")) 18304 return parseStructureMap(xpp); 18305 else if (type.equals("Subscription")) 18306 return parseSubscription(xpp); 18307 else if (type.equals("Substance")) 18308 return parseSubstance(xpp); 18309 else if (type.equals("SupplyDelivery")) 18310 return parseSupplyDelivery(xpp); 18311 else if (type.equals("SupplyRequest")) 18312 return parseSupplyRequest(xpp); 18313 else if (type.equals("Task")) 18314 return parseTask(xpp); 18315 else if (type.equals("TestReport")) 18316 return parseTestReport(xpp); 18317 else if (type.equals("TestScript")) 18318 return parseTestScript(xpp); 18319 else if (type.equals("ValueSet")) 18320 return parseValueSet(xpp); 18321 else if (type.equals("VisionPrescription")) 18322 return parseVisionPrescription(xpp); 18323 else if (type.equals("date")) 18324 return parseDate(xpp); 18325 else if (type.equals("dateTime")) 18326 return parseDateTime(xpp); 18327 else if (type.equals("code")) 18328 return parseCode(xpp); 18329 else if (type.equals("string")) 18330 return parseString(xpp); 18331 else if (type.equals("integer")) 18332 return parseInteger(xpp); 18333 else if (type.equals("oid")) 18334 return parseOid(xpp); 18335 else if (type.equals("uri")) 18336 return parseUri(xpp); 18337 else if (type.equals("uuid")) 18338 return parseUuid(xpp); 18339 else if (type.equals("instant")) 18340 return parseInstant(xpp); 18341 else if (type.equals("boolean")) 18342 return parseBoolean(xpp); 18343 else if (type.equals("base64Binary")) 18344 return parseBase64Binary(xpp); 18345 else if (type.equals("unsignedInt")) 18346 return parseUnsignedInt(xpp); 18347 else if (type.equals("markdown")) 18348 return parseMarkdown(xpp); 18349 else if (type.equals("time")) 18350 return parseTime(xpp); 18351 else if (type.equals("id")) 18352 return parseId(xpp); 18353 else if (type.equals("positiveInt")) 18354 return parsePositiveInt(xpp); 18355 else if (type.equals("decimal")) 18356 return parseDecimal(xpp); 18357 throw new FHIRFormatError("Unknown type "+type); 18358 } 18359 18360 private boolean nameIsTypeName(XmlPullParser xpp, String prefix) { 18361 if (xpp.getName().equals(prefix+"Reference")) 18362 return true; 18363 if (xpp.getName().equals(prefix+"Quantity")) 18364 return true; 18365 if (xpp.getName().equals(prefix+"Period")) 18366 return true; 18367 if (xpp.getName().equals(prefix+"Attachment")) 18368 return true; 18369 if (xpp.getName().equals(prefix+"Duration")) 18370 return true; 18371 if (xpp.getName().equals(prefix+"Count")) 18372 return true; 18373 if (xpp.getName().equals(prefix+"Range")) 18374 return true; 18375 if (xpp.getName().equals(prefix+"Annotation")) 18376 return true; 18377 if (xpp.getName().equals(prefix+"Money")) 18378 return true; 18379 if (xpp.getName().equals(prefix+"Identifier")) 18380 return true; 18381 if (xpp.getName().equals(prefix+"Coding")) 18382 return true; 18383 if (xpp.getName().equals(prefix+"Signature")) 18384 return true; 18385 if (xpp.getName().equals(prefix+"SampledData")) 18386 return true; 18387 if (xpp.getName().equals(prefix+"Ratio")) 18388 return true; 18389 if (xpp.getName().equals(prefix+"Distance")) 18390 return true; 18391 if (xpp.getName().equals(prefix+"Age")) 18392 return true; 18393 if (xpp.getName().equals(prefix+"CodeableConcept")) 18394 return true; 18395 if (xpp.getName().equals(prefix+"SimpleQuantity")) 18396 return true; 18397 if (xpp.getName().equals(prefix+"Meta")) 18398 return true; 18399 if (xpp.getName().equals(prefix+"Address")) 18400 return true; 18401 if (xpp.getName().equals(prefix+"TriggerDefinition")) 18402 return true; 18403 if (xpp.getName().equals(prefix+"Contributor")) 18404 return true; 18405 if (xpp.getName().equals(prefix+"DataRequirement")) 18406 return true; 18407 if (xpp.getName().equals(prefix+"Dosage")) 18408 return true; 18409 if (xpp.getName().equals(prefix+"RelatedArtifact")) 18410 return true; 18411 if (xpp.getName().equals(prefix+"ContactDetail")) 18412 return true; 18413 if (xpp.getName().equals(prefix+"HumanName")) 18414 return true; 18415 if (xpp.getName().equals(prefix+"ContactPoint")) 18416 return true; 18417 if (xpp.getName().equals(prefix+"UsageContext")) 18418 return true; 18419 if (xpp.getName().equals(prefix+"Timing")) 18420 return true; 18421 if (xpp.getName().equals(prefix+"ElementDefinition")) 18422 return true; 18423 if (xpp.getName().equals(prefix+"ParameterDefinition")) 18424 return true; 18425 if (xpp.getName().equals(prefix+"Parameters")) 18426 return true; 18427 if (xpp.getName().equals(prefix+"Account")) 18428 return true; 18429 if (xpp.getName().equals(prefix+"ActivityDefinition")) 18430 return true; 18431 if (xpp.getName().equals(prefix+"AdverseEvent")) 18432 return true; 18433 if (xpp.getName().equals(prefix+"AllergyIntolerance")) 18434 return true; 18435 if (xpp.getName().equals(prefix+"Appointment")) 18436 return true; 18437 if (xpp.getName().equals(prefix+"AppointmentResponse")) 18438 return true; 18439 if (xpp.getName().equals(prefix+"AuditEvent")) 18440 return true; 18441 if (xpp.getName().equals(prefix+"Basic")) 18442 return true; 18443 if (xpp.getName().equals(prefix+"Binary")) 18444 return true; 18445 if (xpp.getName().equals(prefix+"BodySite")) 18446 return true; 18447 if (xpp.getName().equals(prefix+"Bundle")) 18448 return true; 18449 if (xpp.getName().equals(prefix+"CapabilityStatement")) 18450 return true; 18451 if (xpp.getName().equals(prefix+"CarePlan")) 18452 return true; 18453 if (xpp.getName().equals(prefix+"CareTeam")) 18454 return true; 18455 if (xpp.getName().equals(prefix+"ChargeItem")) 18456 return true; 18457 if (xpp.getName().equals(prefix+"Claim")) 18458 return true; 18459 if (xpp.getName().equals(prefix+"ClaimResponse")) 18460 return true; 18461 if (xpp.getName().equals(prefix+"ClinicalImpression")) 18462 return true; 18463 if (xpp.getName().equals(prefix+"CodeSystem")) 18464 return true; 18465 if (xpp.getName().equals(prefix+"Communication")) 18466 return true; 18467 if (xpp.getName().equals(prefix+"CommunicationRequest")) 18468 return true; 18469 if (xpp.getName().equals(prefix+"CompartmentDefinition")) 18470 return true; 18471 if (xpp.getName().equals(prefix+"Composition")) 18472 return true; 18473 if (xpp.getName().equals(prefix+"ConceptMap")) 18474 return true; 18475 if (xpp.getName().equals(prefix+"Condition")) 18476 return true; 18477 if (xpp.getName().equals(prefix+"Consent")) 18478 return true; 18479 if (xpp.getName().equals(prefix+"Contract")) 18480 return true; 18481 if (xpp.getName().equals(prefix+"Coverage")) 18482 return true; 18483 if (xpp.getName().equals(prefix+"DataElement")) 18484 return true; 18485 if (xpp.getName().equals(prefix+"DetectedIssue")) 18486 return true; 18487 if (xpp.getName().equals(prefix+"Device")) 18488 return true; 18489 if (xpp.getName().equals(prefix+"DeviceComponent")) 18490 return true; 18491 if (xpp.getName().equals(prefix+"DeviceMetric")) 18492 return true; 18493 if (xpp.getName().equals(prefix+"DeviceRequest")) 18494 return true; 18495 if (xpp.getName().equals(prefix+"DeviceUseStatement")) 18496 return true; 18497 if (xpp.getName().equals(prefix+"DiagnosticReport")) 18498 return true; 18499 if (xpp.getName().equals(prefix+"DocumentManifest")) 18500 return true; 18501 if (xpp.getName().equals(prefix+"DocumentReference")) 18502 return true; 18503 if (xpp.getName().equals(prefix+"EligibilityRequest")) 18504 return true; 18505 if (xpp.getName().equals(prefix+"EligibilityResponse")) 18506 return true; 18507 if (xpp.getName().equals(prefix+"Encounter")) 18508 return true; 18509 if (xpp.getName().equals(prefix+"Endpoint")) 18510 return true; 18511 if (xpp.getName().equals(prefix+"EnrollmentRequest")) 18512 return true; 18513 if (xpp.getName().equals(prefix+"EnrollmentResponse")) 18514 return true; 18515 if (xpp.getName().equals(prefix+"EpisodeOfCare")) 18516 return true; 18517 if (xpp.getName().equals(prefix+"ExpansionProfile")) 18518 return true; 18519 if (xpp.getName().equals(prefix+"ExplanationOfBenefit")) 18520 return true; 18521 if (xpp.getName().equals(prefix+"FamilyMemberHistory")) 18522 return true; 18523 if (xpp.getName().equals(prefix+"Flag")) 18524 return true; 18525 if (xpp.getName().equals(prefix+"Goal")) 18526 return true; 18527 if (xpp.getName().equals(prefix+"GraphDefinition")) 18528 return true; 18529 if (xpp.getName().equals(prefix+"Group")) 18530 return true; 18531 if (xpp.getName().equals(prefix+"GuidanceResponse")) 18532 return true; 18533 if (xpp.getName().equals(prefix+"HealthcareService")) 18534 return true; 18535 if (xpp.getName().equals(prefix+"ImagingManifest")) 18536 return true; 18537 if (xpp.getName().equals(prefix+"ImagingStudy")) 18538 return true; 18539 if (xpp.getName().equals(prefix+"Immunization")) 18540 return true; 18541 if (xpp.getName().equals(prefix+"ImmunizationRecommendation")) 18542 return true; 18543 if (xpp.getName().equals(prefix+"ImplementationGuide")) 18544 return true; 18545 if (xpp.getName().equals(prefix+"Library")) 18546 return true; 18547 if (xpp.getName().equals(prefix+"Linkage")) 18548 return true; 18549 if (xpp.getName().equals(prefix+"List")) 18550 return true; 18551 if (xpp.getName().equals(prefix+"Location")) 18552 return true; 18553 if (xpp.getName().equals(prefix+"Measure")) 18554 return true; 18555 if (xpp.getName().equals(prefix+"MeasureReport")) 18556 return true; 18557 if (xpp.getName().equals(prefix+"Media")) 18558 return true; 18559 if (xpp.getName().equals(prefix+"Medication")) 18560 return true; 18561 if (xpp.getName().equals(prefix+"MedicationAdministration")) 18562 return true; 18563 if (xpp.getName().equals(prefix+"MedicationDispense")) 18564 return true; 18565 if (xpp.getName().equals(prefix+"MedicationRequest")) 18566 return true; 18567 if (xpp.getName().equals(prefix+"MedicationStatement")) 18568 return true; 18569 if (xpp.getName().equals(prefix+"MessageDefinition")) 18570 return true; 18571 if (xpp.getName().equals(prefix+"MessageHeader")) 18572 return true; 18573 if (xpp.getName().equals(prefix+"NamingSystem")) 18574 return true; 18575 if (xpp.getName().equals(prefix+"NutritionOrder")) 18576 return true; 18577 if (xpp.getName().equals(prefix+"Observation")) 18578 return true; 18579 if (xpp.getName().equals(prefix+"OperationDefinition")) 18580 return true; 18581 if (xpp.getName().equals(prefix+"OperationOutcome")) 18582 return true; 18583 if (xpp.getName().equals(prefix+"Organization")) 18584 return true; 18585 if (xpp.getName().equals(prefix+"Patient")) 18586 return true; 18587 if (xpp.getName().equals(prefix+"PaymentNotice")) 18588 return true; 18589 if (xpp.getName().equals(prefix+"PaymentReconciliation")) 18590 return true; 18591 if (xpp.getName().equals(prefix+"Person")) 18592 return true; 18593 if (xpp.getName().equals(prefix+"PlanDefinition")) 18594 return true; 18595 if (xpp.getName().equals(prefix+"Practitioner")) 18596 return true; 18597 if (xpp.getName().equals(prefix+"PractitionerRole")) 18598 return true; 18599 if (xpp.getName().equals(prefix+"Procedure")) 18600 return true; 18601 if (xpp.getName().equals(prefix+"ProcedureRequest")) 18602 return true; 18603 if (xpp.getName().equals(prefix+"ProcessRequest")) 18604 return true; 18605 if (xpp.getName().equals(prefix+"ProcessResponse")) 18606 return true; 18607 if (xpp.getName().equals(prefix+"Provenance")) 18608 return true; 18609 if (xpp.getName().equals(prefix+"Questionnaire")) 18610 return true; 18611 if (xpp.getName().equals(prefix+"QuestionnaireResponse")) 18612 return true; 18613 if (xpp.getName().equals(prefix+"ReferralRequest")) 18614 return true; 18615 if (xpp.getName().equals(prefix+"RelatedPerson")) 18616 return true; 18617 if (xpp.getName().equals(prefix+"RequestGroup")) 18618 return true; 18619 if (xpp.getName().equals(prefix+"ResearchStudy")) 18620 return true; 18621 if (xpp.getName().equals(prefix+"ResearchSubject")) 18622 return true; 18623 if (xpp.getName().equals(prefix+"RiskAssessment")) 18624 return true; 18625 if (xpp.getName().equals(prefix+"Schedule")) 18626 return true; 18627 if (xpp.getName().equals(prefix+"SearchParameter")) 18628 return true; 18629 if (xpp.getName().equals(prefix+"Sequence")) 18630 return true; 18631 if (xpp.getName().equals(prefix+"ServiceDefinition")) 18632 return true; 18633 if (xpp.getName().equals(prefix+"Slot")) 18634 return true; 18635 if (xpp.getName().equals(prefix+"Specimen")) 18636 return true; 18637 if (xpp.getName().equals(prefix+"StructureDefinition")) 18638 return true; 18639 if (xpp.getName().equals(prefix+"StructureMap")) 18640 return true; 18641 if (xpp.getName().equals(prefix+"Subscription")) 18642 return true; 18643 if (xpp.getName().equals(prefix+"Substance")) 18644 return true; 18645 if (xpp.getName().equals(prefix+"SupplyDelivery")) 18646 return true; 18647 if (xpp.getName().equals(prefix+"SupplyRequest")) 18648 return true; 18649 if (xpp.getName().equals(prefix+"Task")) 18650 return true; 18651 if (xpp.getName().equals(prefix+"TestReport")) 18652 return true; 18653 if (xpp.getName().equals(prefix+"TestScript")) 18654 return true; 18655 if (xpp.getName().equals(prefix+"ValueSet")) 18656 return true; 18657 if (xpp.getName().equals(prefix+"VisionPrescription")) 18658 return true; 18659 if (xpp.getName().equals(prefix+"Date")) 18660 return true; 18661 if (xpp.getName().equals(prefix+"DateTime")) 18662 return true; 18663 if (xpp.getName().equals(prefix+"Code")) 18664 return true; 18665 if (xpp.getName().equals(prefix+"String")) 18666 return true; 18667 if (xpp.getName().equals(prefix+"Integer")) 18668 return true; 18669 if (xpp.getName().equals(prefix+"Oid")) 18670 return true; 18671 if (xpp.getName().equals(prefix+"Uri")) 18672 return true; 18673 if (xpp.getName().equals(prefix+"Uuid")) 18674 return true; 18675 if (xpp.getName().equals(prefix+"Instant")) 18676 return true; 18677 if (xpp.getName().equals(prefix+"Boolean")) 18678 return true; 18679 if (xpp.getName().equals(prefix+"Base64Binary")) 18680 return true; 18681 if (xpp.getName().equals(prefix+"UnsignedInt")) 18682 return true; 18683 if (xpp.getName().equals(prefix+"Markdown")) 18684 return true; 18685 if (xpp.getName().equals(prefix+"Time")) 18686 return true; 18687 if (xpp.getName().equals(prefix+"Id")) 18688 return true; 18689 if (xpp.getName().equals(prefix+"PositiveInt")) 18690 return true; 18691 if (xpp.getName().equals(prefix+"Decimal")) 18692 return true; 18693 return false; 18694 } 18695 protected void composeElementElements(Element element) throws IOException { 18696 for (Extension e : element.getExtension()) { 18697 composeExtension("extension", e); 18698 } 18699 } 18700 18701 protected void composeBackboneElements(BackboneElement element) throws IOException { 18702 composeElementElements(element); 18703 for (Extension e : element.getModifierExtension()) { 18704 composeExtension("modifierExtension", e); 18705 } 18706 } 18707 18708 protected <E extends Enum<E>> void composeEnumeration(String name, Enumeration<E> value, EnumFactory e) throws IOException { 18709 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || value.getValue() != null)) { 18710 composeElementAttributes(value); 18711 if (value.getValue() != null) 18712 xml.attribute("value", e.toCode(value.getValue())); 18713 18714 xml.enter(FHIR_NS, name); 18715 composeElementElements(value); 18716 composeElementClose(value); 18717 xml.exit(FHIR_NS, name); 18718 } 18719 } 18720 18721 protected void composeDate(String name, DateType value) throws IOException { 18722 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || value.getValue() != null)) {// date 18723 composeElementAttributes(value); 18724 if (value.asStringValue() != null) 18725 xml.attribute("value", value.asStringValue()); 18726 18727 xml.enter(FHIR_NS, name); 18728 composeElementElements(value); 18729 composeElementClose(value); 18730 xml.exit(FHIR_NS, name); 18731 } 18732 } 18733 18734 protected void composeDateTime(String name, DateTimeType value) throws IOException { 18735 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || value.getValue() != null)) {// dateTime 18736 composeElementAttributes(value); 18737 if (value.asStringValue() != null) 18738 xml.attribute("value", value.asStringValue()); 18739 18740 xml.enter(FHIR_NS, name); 18741 composeElementElements(value); 18742 composeElementClose(value); 18743 xml.exit(FHIR_NS, name); 18744 } 18745 } 18746 18747 protected void composeCode(String name, CodeType value) throws IOException { 18748 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// code 18749 composeElementAttributes(value); 18750 if (value.asStringValue() != null) 18751 xml.attribute("value", value.asStringValue()); 18752 18753 xml.enter(FHIR_NS, name); 18754 composeElementElements(value); 18755 composeElementClose(value); 18756 xml.exit(FHIR_NS, name); 18757 } 18758 } 18759 18760 protected void composeString(String name, StringType value) throws IOException { 18761 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// string 18762 composeElementAttributes(value); 18763 if (value.asStringValue() != null) 18764 xml.attribute("value", value.asStringValue()); 18765 18766 xml.enter(FHIR_NS, name); 18767 composeElementElements(value); 18768 composeElementClose(value); 18769 xml.exit(FHIR_NS, name); 18770 } 18771 } 18772 18773 protected void composeInteger(String name, IntegerType value) throws IOException { 18774 if (value != null) { // integer 18775 composeElementAttributes(value); 18776 if (value.asStringValue() != null) 18777 xml.attribute("value", value.asStringValue()); 18778 18779 xml.enter(FHIR_NS, name); 18780 composeElementElements(value); 18781 composeElementClose(value); 18782 xml.exit(FHIR_NS, name); 18783 } 18784 } 18785 18786 protected void composeOid(String name, OidType value) throws IOException { 18787 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// oid 18788 composeElementAttributes(value); 18789 if (value.asStringValue() != null) 18790 xml.attribute("value", value.asStringValue()); 18791 18792 xml.enter(FHIR_NS, name); 18793 composeElementElements(value); 18794 composeElementClose(value); 18795 xml.exit(FHIR_NS, name); 18796 } 18797 } 18798 18799 protected void composeUri(String name, UriType value) throws IOException { 18800 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || value.getValue() != null)) {// uri 18801 composeElementAttributes(value); 18802 if (value.asStringValue() != null) 18803 xml.attribute("value", value.asStringValue()); 18804 18805 xml.enter(FHIR_NS, name); 18806 composeElementElements(value); 18807 composeElementClose(value); 18808 xml.exit(FHIR_NS, name); 18809 } 18810 } 18811 18812 protected void composeUuid(String name, UuidType value) throws IOException { 18813 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// uuid 18814 composeElementAttributes(value); 18815 if (value.asStringValue() != null) 18816 xml.attribute("value", value.asStringValue()); 18817 18818 xml.enter(FHIR_NS, name); 18819 composeElementElements(value); 18820 composeElementClose(value); 18821 xml.exit(FHIR_NS, name); 18822 } 18823 } 18824 18825 protected void composeInstant(String name, InstantType value) throws IOException { 18826 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || value.getValue() != null)) {// instant 18827 composeElementAttributes(value); 18828 if (value.asStringValue() != null) 18829 xml.attribute("value", value.asStringValue()); 18830 18831 xml.enter(FHIR_NS, name); 18832 composeElementElements(value); 18833 composeElementClose(value); 18834 xml.exit(FHIR_NS, name); 18835 } 18836 } 18837 18838 protected void composeBoolean(String name, BooleanType value) throws IOException { 18839 if (value != null) { // boolean 18840 composeElementAttributes(value); 18841 if (value.asStringValue() != null) 18842 xml.attribute("value", value.asStringValue()); 18843 18844 xml.enter(FHIR_NS, name); 18845 composeElementElements(value); 18846 composeElementClose(value); 18847 xml.exit(FHIR_NS, name); 18848 } 18849 } 18850 18851 protected void composeBase64Binary(String name, Base64BinaryType value) throws IOException { 18852 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || value.getValue() != null)) {// base64Binary 18853 composeElementAttributes(value); 18854 if (value.asStringValue() != null) 18855 xml.attribute("value", value.asStringValue()); 18856 18857 xml.enter(FHIR_NS, name); 18858 composeElementElements(value); 18859 composeElementClose(value); 18860 xml.exit(FHIR_NS, name); 18861 } 18862 } 18863 18864 protected void composeUnsignedInt(String name, UnsignedIntType value) throws IOException { 18865 if (value != null) { // unsignedInt 18866 composeElementAttributes(value); 18867 if (value.asStringValue() != null) 18868 xml.attribute("value", value.asStringValue()); 18869 18870 xml.enter(FHIR_NS, name); 18871 composeElementElements(value); 18872 composeElementClose(value); 18873 xml.exit(FHIR_NS, name); 18874 } 18875 } 18876 18877 protected void composeMarkdown(String name, MarkdownType value) throws IOException { 18878 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// markdown 18879 composeElementAttributes(value); 18880 if (value.asStringValue() != null) 18881 xml.attribute("value", value.asStringValue()); 18882 18883 xml.enter(FHIR_NS, name); 18884 composeElementElements(value); 18885 composeElementClose(value); 18886 xml.exit(FHIR_NS, name); 18887 } 18888 } 18889 18890 protected void composeTime(String name, TimeType value) throws IOException { 18891 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// time 18892 composeElementAttributes(value); 18893 if (value.asStringValue() != null) 18894 xml.attribute("value", value.asStringValue()); 18895 18896 xml.enter(FHIR_NS, name); 18897 composeElementElements(value); 18898 composeElementClose(value); 18899 xml.exit(FHIR_NS, name); 18900 } 18901 } 18902 18903 protected void composeId(String name, IdType value) throws IOException { 18904 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// id 18905 composeElementAttributes(value); 18906 if (value.asStringValue() != null) 18907 xml.attribute("value", value.asStringValue()); 18908 18909 xml.enter(FHIR_NS, name); 18910 composeElementElements(value); 18911 composeElementClose(value); 18912 xml.exit(FHIR_NS, name); 18913 } 18914 } 18915 18916 protected void composePositiveInt(String name, PositiveIntType value) throws IOException { 18917 if (value != null) { // positiveInt 18918 composeElementAttributes(value); 18919 if (value.asStringValue() != null) 18920 xml.attribute("value", value.asStringValue()); 18921 18922 xml.enter(FHIR_NS, name); 18923 composeElementElements(value); 18924 composeElementClose(value); 18925 xml.exit(FHIR_NS, name); 18926 } 18927 } 18928 18929 protected void composeDecimal(String name, DecimalType value) throws IOException { 18930 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || value.getValue() != null)) {// decimal 18931 composeElementAttributes(value); 18932 if (value.asStringValue() != null) 18933 xml.attribute("value", value.asStringValue()); 18934 18935 xml.enter(FHIR_NS, name); 18936 composeElementElements(value); 18937 composeElementClose(value); 18938 xml.exit(FHIR_NS, name); 18939 } 18940 } 18941 18942 protected void composeExtension(String name, Extension element) throws IOException { 18943 if (element != null) { 18944 composeElementAttributes(element); 18945 if (element.hasUrlElement()) 18946 xml.attribute("url", element.getUrlElement().getValue()); 18947 xml.enter(FHIR_NS, name); 18948 composeExtensionElements(element); 18949 composeElementClose(element); 18950 xml.exit(FHIR_NS, name); 18951 } 18952 } 18953 18954 protected void composeExtensionElements(Extension element) throws IOException { 18955 composeElementElements(element); 18956 if (element.hasValue()) { 18957 composeType("value", element.getValue()); 18958 } } 18959 18960 protected void composeNarrative(String name, Narrative element) throws IOException { 18961 if (element != null) { 18962 composeElementAttributes(element); 18963 xml.enter(FHIR_NS, name); 18964 composeNarrativeElements(element); 18965 composeElementClose(element); 18966 xml.exit(FHIR_NS, name); 18967 } 18968 } 18969 18970 protected void composeNarrativeElements(Narrative element) throws IOException { 18971 composeElementElements(element); 18972 if (element.hasStatusElement()) 18973 composeEnumeration("status", element.getStatusElement(), new Narrative.NarrativeStatusEnumFactory()); 18974 if (element.hasDiv()) { 18975 composeXhtml("div", element.getDiv()); 18976 } 18977 } 18978 18979 protected void composeDuration(String name, Duration element) throws IOException { 18980 if (element != null) { 18981 composeTypeAttributes(element); 18982 xml.enter(FHIR_NS, name); 18983 composeDurationElements(element); 18984 composeElementClose(element); 18985 xml.exit(FHIR_NS, name); 18986 } 18987 } 18988 18989 protected void composeDurationElements(Duration element) throws IOException { 18990 composeQuantityElements(element); 18991 } 18992 18993 protected void composeCount(String name, Count element) throws IOException { 18994 if (element != null) { 18995 composeTypeAttributes(element); 18996 xml.enter(FHIR_NS, name); 18997 composeCountElements(element); 18998 composeElementClose(element); 18999 xml.exit(FHIR_NS, name); 19000 } 19001 } 19002 19003 protected void composeCountElements(Count element) throws IOException { 19004 composeQuantityElements(element); 19005 } 19006 19007 protected void composeMoney(String name, Money element) throws IOException { 19008 if (element != null) { 19009 composeTypeAttributes(element); 19010 xml.enter(FHIR_NS, name); 19011 composeMoneyElements(element); 19012 composeElementClose(element); 19013 xml.exit(FHIR_NS, name); 19014 } 19015 } 19016 19017 protected void composeMoneyElements(Money element) throws IOException { 19018 composeQuantityElements(element); 19019 } 19020 19021 protected void composeDistance(String name, Distance element) throws IOException { 19022 if (element != null) { 19023 composeTypeAttributes(element); 19024 xml.enter(FHIR_NS, name); 19025 composeDistanceElements(element); 19026 composeElementClose(element); 19027 xml.exit(FHIR_NS, name); 19028 } 19029 } 19030 19031 protected void composeDistanceElements(Distance element) throws IOException { 19032 composeQuantityElements(element); 19033 } 19034 19035 protected void composeAge(String name, Age element) throws IOException { 19036 if (element != null) { 19037 composeTypeAttributes(element); 19038 xml.enter(FHIR_NS, name); 19039 composeAgeElements(element); 19040 composeElementClose(element); 19041 xml.exit(FHIR_NS, name); 19042 } 19043 } 19044 19045 protected void composeAgeElements(Age element) throws IOException { 19046 composeQuantityElements(element); 19047 } 19048 19049 protected void composeReference(String name, Reference element) throws IOException { 19050 if (element != null) { 19051 composeTypeAttributes(element); 19052 xml.enter(FHIR_NS, name); 19053 composeReferenceElements(element); 19054 composeElementClose(element); 19055 xml.exit(FHIR_NS, name); 19056 } 19057 } 19058 19059 protected void composeReferenceElements(Reference element) throws IOException { 19060 composeElementElements(element); 19061 if (element.hasReferenceElement()) { 19062 composeString("reference", element.getReferenceElement()); 19063 } 19064 if (element.hasIdentifier()) { 19065 composeIdentifier("identifier", element.getIdentifier()); 19066 } 19067 if (element.hasDisplayElement()) { 19068 composeString("display", element.getDisplayElement()); 19069 } 19070 } 19071 19072 protected void composeQuantity(String name, Quantity element) throws IOException { 19073 if (element != null) { 19074 composeTypeAttributes(element); 19075 xml.enter(FHIR_NS, name); 19076 composeQuantityElements(element); 19077 composeElementClose(element); 19078 xml.exit(FHIR_NS, name); 19079 } 19080 } 19081 19082 protected void composeQuantityElements(Quantity element) throws IOException { 19083 composeElementElements(element); 19084 if (element.hasValueElement()) { 19085 composeDecimal("value", element.getValueElement()); 19086 } 19087 if (element.hasComparatorElement()) 19088 composeEnumeration("comparator", element.getComparatorElement(), new Quantity.QuantityComparatorEnumFactory()); 19089 if (element.hasUnitElement()) { 19090 composeString("unit", element.getUnitElement()); 19091 } 19092 if (element.hasSystemElement()) { 19093 composeUri("system", element.getSystemElement()); 19094 } 19095 if (element.hasCodeElement()) { 19096 composeCode("code", element.getCodeElement()); 19097 } 19098 } 19099 19100 protected void composePeriod(String name, Period element) throws IOException { 19101 if (element != null) { 19102 composeTypeAttributes(element); 19103 xml.enter(FHIR_NS, name); 19104 composePeriodElements(element); 19105 composeElementClose(element); 19106 xml.exit(FHIR_NS, name); 19107 } 19108 } 19109 19110 protected void composePeriodElements(Period element) throws IOException { 19111 composeElementElements(element); 19112 if (element.hasStartElement()) { 19113 composeDateTime("start", element.getStartElement()); 19114 } 19115 if (element.hasEndElement()) { 19116 composeDateTime("end", element.getEndElement()); 19117 } 19118 } 19119 19120 protected void composeAttachment(String name, Attachment element) throws IOException { 19121 if (element != null) { 19122 composeTypeAttributes(element); 19123 xml.enter(FHIR_NS, name); 19124 composeAttachmentElements(element); 19125 composeElementClose(element); 19126 xml.exit(FHIR_NS, name); 19127 } 19128 } 19129 19130 protected void composeAttachmentElements(Attachment element) throws IOException { 19131 composeElementElements(element); 19132 if (element.hasContentTypeElement()) { 19133 composeCode("contentType", element.getContentTypeElement()); 19134 } 19135 if (element.hasLanguageElement()) { 19136 composeCode("language", element.getLanguageElement()); 19137 } 19138 if (element.hasDataElement()) { 19139 composeBase64Binary("data", element.getDataElement()); 19140 } 19141 if (element.hasUrlElement()) { 19142 composeUri("url", element.getUrlElement()); 19143 } 19144 if (element.hasSizeElement()) { 19145 composeUnsignedInt("size", element.getSizeElement()); 19146 } 19147 if (element.hasHashElement()) { 19148 composeBase64Binary("hash", element.getHashElement()); 19149 } 19150 if (element.hasTitleElement()) { 19151 composeString("title", element.getTitleElement()); 19152 } 19153 if (element.hasCreationElement()) { 19154 composeDateTime("creation", element.getCreationElement()); 19155 } 19156 } 19157 19158 protected void composeRange(String name, Range element) throws IOException { 19159 if (element != null) { 19160 composeTypeAttributes(element); 19161 xml.enter(FHIR_NS, name); 19162 composeRangeElements(element); 19163 composeElementClose(element); 19164 xml.exit(FHIR_NS, name); 19165 } 19166 } 19167 19168 protected void composeRangeElements(Range element) throws IOException { 19169 composeElementElements(element); 19170 if (element.hasLow()) { 19171 composeSimpleQuantity("low", element.getLow()); 19172 } 19173 if (element.hasHigh()) { 19174 composeSimpleQuantity("high", element.getHigh()); 19175 } 19176 } 19177 19178 protected void composeAnnotation(String name, Annotation element) throws IOException { 19179 if (element != null) { 19180 composeTypeAttributes(element); 19181 xml.enter(FHIR_NS, name); 19182 composeAnnotationElements(element); 19183 composeElementClose(element); 19184 xml.exit(FHIR_NS, name); 19185 } 19186 } 19187 19188 protected void composeAnnotationElements(Annotation element) throws IOException { 19189 composeElementElements(element); 19190 if (element.hasAuthor()) { 19191 composeType("author", element.getAuthor()); 19192 } if (element.hasTimeElement()) { 19193 composeDateTime("time", element.getTimeElement()); 19194 } 19195 if (element.hasTextElement()) { 19196 composeString("text", element.getTextElement()); 19197 } 19198 } 19199 19200 protected void composeIdentifier(String name, Identifier element) throws IOException { 19201 if (element != null) { 19202 composeTypeAttributes(element); 19203 xml.enter(FHIR_NS, name); 19204 composeIdentifierElements(element); 19205 composeElementClose(element); 19206 xml.exit(FHIR_NS, name); 19207 } 19208 } 19209 19210 protected void composeIdentifierElements(Identifier element) throws IOException { 19211 composeElementElements(element); 19212 if (element.hasUseElement()) 19213 composeEnumeration("use", element.getUseElement(), new Identifier.IdentifierUseEnumFactory()); 19214 if (element.hasType()) { 19215 composeCodeableConcept("type", element.getType()); 19216 } 19217 if (element.hasSystemElement()) { 19218 composeUri("system", element.getSystemElement()); 19219 } 19220 if (element.hasValueElement()) { 19221 composeString("value", element.getValueElement()); 19222 } 19223 if (element.hasPeriod()) { 19224 composePeriod("period", element.getPeriod()); 19225 } 19226 if (element.hasAssigner()) { 19227 composeReference("assigner", element.getAssigner()); 19228 } 19229 } 19230 19231 protected void composeCoding(String name, Coding element) throws IOException { 19232 if (element != null) { 19233 composeTypeAttributes(element); 19234 xml.enter(FHIR_NS, name); 19235 composeCodingElements(element); 19236 composeElementClose(element); 19237 xml.exit(FHIR_NS, name); 19238 } 19239 } 19240 19241 protected void composeCodingElements(Coding element) throws IOException { 19242 composeElementElements(element); 19243 if (element.hasSystemElement()) { 19244 composeUri("system", element.getSystemElement()); 19245 } 19246 if (element.hasVersionElement()) { 19247 composeString("version", element.getVersionElement()); 19248 } 19249 if (element.hasCodeElement()) { 19250 composeCode("code", element.getCodeElement()); 19251 } 19252 if (element.hasDisplayElement()) { 19253 composeString("display", element.getDisplayElement()); 19254 } 19255 if (element.hasUserSelectedElement()) { 19256 composeBoolean("userSelected", element.getUserSelectedElement()); 19257 } 19258 } 19259 19260 protected void composeSignature(String name, Signature element) throws IOException { 19261 if (element != null) { 19262 composeTypeAttributes(element); 19263 xml.enter(FHIR_NS, name); 19264 composeSignatureElements(element); 19265 composeElementClose(element); 19266 xml.exit(FHIR_NS, name); 19267 } 19268 } 19269 19270 protected void composeSignatureElements(Signature element) throws IOException { 19271 composeElementElements(element); 19272 if (element.hasType()) { 19273 for (Coding e : element.getType()) 19274 composeCoding("type", e); 19275 } 19276 if (element.hasWhenElement()) { 19277 composeInstant("when", element.getWhenElement()); 19278 } 19279 if (element.hasWho()) { 19280 composeType("who", element.getWho()); 19281 } if (element.hasOnBehalfOf()) { 19282 composeType("onBehalfOf", element.getOnBehalfOf()); 19283 } if (element.hasContentTypeElement()) { 19284 composeCode("contentType", element.getContentTypeElement()); 19285 } 19286 if (element.hasBlobElement()) { 19287 composeBase64Binary("blob", element.getBlobElement()); 19288 } 19289 } 19290 19291 protected void composeSampledData(String name, SampledData element) throws IOException { 19292 if (element != null) { 19293 composeTypeAttributes(element); 19294 xml.enter(FHIR_NS, name); 19295 composeSampledDataElements(element); 19296 composeElementClose(element); 19297 xml.exit(FHIR_NS, name); 19298 } 19299 } 19300 19301 protected void composeSampledDataElements(SampledData element) throws IOException { 19302 composeElementElements(element); 19303 if (element.hasOrigin()) { 19304 composeSimpleQuantity("origin", element.getOrigin()); 19305 } 19306 if (element.hasPeriodElement()) { 19307 composeDecimal("period", element.getPeriodElement()); 19308 } 19309 if (element.hasFactorElement()) { 19310 composeDecimal("factor", element.getFactorElement()); 19311 } 19312 if (element.hasLowerLimitElement()) { 19313 composeDecimal("lowerLimit", element.getLowerLimitElement()); 19314 } 19315 if (element.hasUpperLimitElement()) { 19316 composeDecimal("upperLimit", element.getUpperLimitElement()); 19317 } 19318 if (element.hasDimensionsElement()) { 19319 composePositiveInt("dimensions", element.getDimensionsElement()); 19320 } 19321 if (element.hasDataElement()) { 19322 composeString("data", element.getDataElement()); 19323 } 19324 } 19325 19326 protected void composeRatio(String name, Ratio element) throws IOException { 19327 if (element != null) { 19328 composeTypeAttributes(element); 19329 xml.enter(FHIR_NS, name); 19330 composeRatioElements(element); 19331 composeElementClose(element); 19332 xml.exit(FHIR_NS, name); 19333 } 19334 } 19335 19336 protected void composeRatioElements(Ratio element) throws IOException { 19337 composeElementElements(element); 19338 if (element.hasNumerator()) { 19339 composeQuantity("numerator", element.getNumerator()); 19340 } 19341 if (element.hasDenominator()) { 19342 composeQuantity("denominator", element.getDenominator()); 19343 } 19344 } 19345 19346 protected void composeCodeableConcept(String name, CodeableConcept element) throws IOException { 19347 if (element != null) { 19348 composeTypeAttributes(element); 19349 xml.enter(FHIR_NS, name); 19350 composeCodeableConceptElements(element); 19351 composeElementClose(element); 19352 xml.exit(FHIR_NS, name); 19353 } 19354 } 19355 19356 protected void composeCodeableConceptElements(CodeableConcept element) throws IOException { 19357 composeElementElements(element); 19358 if (element.hasCoding()) { 19359 for (Coding e : element.getCoding()) 19360 composeCoding("coding", e); 19361 } 19362 if (element.hasTextElement()) { 19363 composeString("text", element.getTextElement()); 19364 } 19365 } 19366 19367 protected void composeSimpleQuantity(String name, SimpleQuantity element) throws IOException { 19368 if (element != null) { 19369 composeTypeAttributes(element); 19370 xml.enter(FHIR_NS, name); 19371 composeSimpleQuantityElements(element); 19372 composeElementClose(element); 19373 xml.exit(FHIR_NS, name); 19374 } 19375 } 19376 19377 protected void composeSimpleQuantityElements(SimpleQuantity element) throws IOException { 19378 composeElementElements(element); 19379 if (element.hasValueElement()) { 19380 composeDecimal("value", element.getValueElement()); 19381 } 19382 if (element.hasComparatorElement()) 19383 composeEnumeration("comparator", element.getComparatorElement(), new SimpleQuantity.QuantityComparatorEnumFactory()); 19384 if (element.hasUnitElement()) { 19385 composeString("unit", element.getUnitElement()); 19386 } 19387 if (element.hasSystemElement()) { 19388 composeUri("system", element.getSystemElement()); 19389 } 19390 if (element.hasCodeElement()) { 19391 composeCode("code", element.getCodeElement()); 19392 } 19393 } 19394 19395 protected void composeMeta(String name, Meta element) throws IOException { 19396 if (element != null) { 19397 composeElementAttributes(element); 19398 xml.enter(FHIR_NS, name); 19399 composeMetaElements(element); 19400 composeElementClose(element); 19401 xml.exit(FHIR_NS, name); 19402 } 19403 } 19404 19405 protected void composeMetaElements(Meta element) throws IOException { 19406 composeElementElements(element); 19407 if (element.hasVersionIdElement()) { 19408 composeId("versionId", element.getVersionIdElement()); 19409 } 19410 if (element.hasLastUpdatedElement()) { 19411 composeInstant("lastUpdated", element.getLastUpdatedElement()); 19412 } 19413 if (element.hasProfile()) { 19414 for (UriType e : element.getProfile()) 19415 composeUri("profile", e); 19416 } 19417 if (element.hasSecurity()) { 19418 for (Coding e : element.getSecurity()) 19419 composeCoding("security", e); 19420 } 19421 if (element.hasTag()) { 19422 for (Coding e : element.getTag()) 19423 composeCoding("tag", e); 19424 } 19425 } 19426 19427 protected void composeAddress(String name, Address element) throws IOException { 19428 if (element != null) { 19429 composeElementAttributes(element); 19430 xml.enter(FHIR_NS, name); 19431 composeAddressElements(element); 19432 composeElementClose(element); 19433 xml.exit(FHIR_NS, name); 19434 } 19435 } 19436 19437 protected void composeAddressElements(Address element) throws IOException { 19438 composeElementElements(element); 19439 if (element.hasUseElement()) 19440 composeEnumeration("use", element.getUseElement(), new Address.AddressUseEnumFactory()); 19441 if (element.hasTypeElement()) 19442 composeEnumeration("type", element.getTypeElement(), new Address.AddressTypeEnumFactory()); 19443 if (element.hasTextElement()) { 19444 composeString("text", element.getTextElement()); 19445 } 19446 if (element.hasLine()) { 19447 for (StringType e : element.getLine()) 19448 composeString("line", e); 19449 } 19450 if (element.hasCityElement()) { 19451 composeString("city", element.getCityElement()); 19452 } 19453 if (element.hasDistrictElement()) { 19454 composeString("district", element.getDistrictElement()); 19455 } 19456 if (element.hasStateElement()) { 19457 composeString("state", element.getStateElement()); 19458 } 19459 if (element.hasPostalCodeElement()) { 19460 composeString("postalCode", element.getPostalCodeElement()); 19461 } 19462 if (element.hasCountryElement()) { 19463 composeString("country", element.getCountryElement()); 19464 } 19465 if (element.hasPeriod()) { 19466 composePeriod("period", element.getPeriod()); 19467 } 19468 } 19469 19470 protected void composeTriggerDefinition(String name, TriggerDefinition element) throws IOException { 19471 if (element != null) { 19472 composeElementAttributes(element); 19473 xml.enter(FHIR_NS, name); 19474 composeTriggerDefinitionElements(element); 19475 composeElementClose(element); 19476 xml.exit(FHIR_NS, name); 19477 } 19478 } 19479 19480 protected void composeTriggerDefinitionElements(TriggerDefinition element) throws IOException { 19481 composeElementElements(element); 19482 if (element.hasTypeElement()) 19483 composeEnumeration("type", element.getTypeElement(), new TriggerDefinition.TriggerTypeEnumFactory()); 19484 if (element.hasEventNameElement()) { 19485 composeString("eventName", element.getEventNameElement()); 19486 } 19487 if (element.hasEventTiming()) { 19488 composeType("eventTiming", element.getEventTiming()); 19489 } if (element.hasEventData()) { 19490 composeDataRequirement("eventData", element.getEventData()); 19491 } 19492 } 19493 19494 protected void composeContributor(String name, Contributor element) throws IOException { 19495 if (element != null) { 19496 composeElementAttributes(element); 19497 xml.enter(FHIR_NS, name); 19498 composeContributorElements(element); 19499 composeElementClose(element); 19500 xml.exit(FHIR_NS, name); 19501 } 19502 } 19503 19504 protected void composeContributorElements(Contributor element) throws IOException { 19505 composeElementElements(element); 19506 if (element.hasTypeElement()) 19507 composeEnumeration("type", element.getTypeElement(), new Contributor.ContributorTypeEnumFactory()); 19508 if (element.hasNameElement()) { 19509 composeString("name", element.getNameElement()); 19510 } 19511 if (element.hasContact()) { 19512 for (ContactDetail e : element.getContact()) 19513 composeContactDetail("contact", e); 19514 } 19515 } 19516 19517 protected void composeDataRequirement(String name, DataRequirement element) throws IOException { 19518 if (element != null) { 19519 composeElementAttributes(element); 19520 xml.enter(FHIR_NS, name); 19521 composeDataRequirementElements(element); 19522 composeElementClose(element); 19523 xml.exit(FHIR_NS, name); 19524 } 19525 } 19526 19527 protected void composeDataRequirementElements(DataRequirement element) throws IOException { 19528 composeElementElements(element); 19529 if (element.hasTypeElement()) { 19530 composeCode("type", element.getTypeElement()); 19531 } 19532 if (element.hasProfile()) { 19533 for (UriType e : element.getProfile()) 19534 composeUri("profile", e); 19535 } 19536 if (element.hasMustSupport()) { 19537 for (StringType e : element.getMustSupport()) 19538 composeString("mustSupport", e); 19539 } 19540 if (element.hasCodeFilter()) { 19541 for (DataRequirement.DataRequirementCodeFilterComponent e : element.getCodeFilter()) 19542 composeDataRequirementDataRequirementCodeFilterComponent("codeFilter", e); 19543 } 19544 if (element.hasDateFilter()) { 19545 for (DataRequirement.DataRequirementDateFilterComponent e : element.getDateFilter()) 19546 composeDataRequirementDataRequirementDateFilterComponent("dateFilter", e); 19547 } 19548 } 19549 19550 protected void composeDataRequirementDataRequirementCodeFilterComponent(String name, DataRequirement.DataRequirementCodeFilterComponent element) throws IOException { 19551 if (element != null) { 19552 composeElementAttributes(element); 19553 xml.enter(FHIR_NS, name); 19554 composeDataRequirementDataRequirementCodeFilterComponentElements(element); 19555 composeElementClose(element); 19556 xml.exit(FHIR_NS, name); 19557 } 19558 } 19559 19560 protected void composeDataRequirementDataRequirementCodeFilterComponentElements(DataRequirement.DataRequirementCodeFilterComponent element) throws IOException { 19561 composeElementElements(element); 19562 if (element.hasPathElement()) { 19563 composeString("path", element.getPathElement()); 19564 } 19565 if (element.hasValueSet()) { 19566 composeType("valueSet", element.getValueSet()); 19567 } if (element.hasValueCode()) { 19568 for (CodeType e : element.getValueCode()) 19569 composeCode("valueCode", e); 19570 } 19571 if (element.hasValueCoding()) { 19572 for (Coding e : element.getValueCoding()) 19573 composeCoding("valueCoding", e); 19574 } 19575 if (element.hasValueCodeableConcept()) { 19576 for (CodeableConcept e : element.getValueCodeableConcept()) 19577 composeCodeableConcept("valueCodeableConcept", e); 19578 } 19579 } 19580 19581 protected void composeDataRequirementDataRequirementDateFilterComponent(String name, DataRequirement.DataRequirementDateFilterComponent element) throws IOException { 19582 if (element != null) { 19583 composeElementAttributes(element); 19584 xml.enter(FHIR_NS, name); 19585 composeDataRequirementDataRequirementDateFilterComponentElements(element); 19586 composeElementClose(element); 19587 xml.exit(FHIR_NS, name); 19588 } 19589 } 19590 19591 protected void composeDataRequirementDataRequirementDateFilterComponentElements(DataRequirement.DataRequirementDateFilterComponent element) throws IOException { 19592 composeElementElements(element); 19593 if (element.hasPathElement()) { 19594 composeString("path", element.getPathElement()); 19595 } 19596 if (element.hasValue()) { 19597 composeType("value", element.getValue()); 19598 } } 19599 19600 protected void composeDosage(String name, Dosage element) throws IOException { 19601 if (element != null) { 19602 composeElementAttributes(element); 19603 xml.enter(FHIR_NS, name); 19604 composeDosageElements(element); 19605 composeElementClose(element); 19606 xml.exit(FHIR_NS, name); 19607 } 19608 } 19609 19610 protected void composeDosageElements(Dosage element) throws IOException { 19611 composeElementElements(element); 19612 if (element.hasSequenceElement()) { 19613 composeInteger("sequence", element.getSequenceElement()); 19614 } 19615 if (element.hasTextElement()) { 19616 composeString("text", element.getTextElement()); 19617 } 19618 if (element.hasAdditionalInstruction()) { 19619 for (CodeableConcept e : element.getAdditionalInstruction()) 19620 composeCodeableConcept("additionalInstruction", e); 19621 } 19622 if (element.hasPatientInstructionElement()) { 19623 composeString("patientInstruction", element.getPatientInstructionElement()); 19624 } 19625 if (element.hasTiming()) { 19626 composeTiming("timing", element.getTiming()); 19627 } 19628 if (element.hasAsNeeded()) { 19629 composeType("asNeeded", element.getAsNeeded()); 19630 } if (element.hasSite()) { 19631 composeCodeableConcept("site", element.getSite()); 19632 } 19633 if (element.hasRoute()) { 19634 composeCodeableConcept("route", element.getRoute()); 19635 } 19636 if (element.hasMethod()) { 19637 composeCodeableConcept("method", element.getMethod()); 19638 } 19639 if (element.hasDose()) { 19640 composeType("dose", element.getDose()); 19641 } if (element.hasMaxDosePerPeriod()) { 19642 composeRatio("maxDosePerPeriod", element.getMaxDosePerPeriod()); 19643 } 19644 if (element.hasMaxDosePerAdministration()) { 19645 composeSimpleQuantity("maxDosePerAdministration", element.getMaxDosePerAdministration()); 19646 } 19647 if (element.hasMaxDosePerLifetime()) { 19648 composeSimpleQuantity("maxDosePerLifetime", element.getMaxDosePerLifetime()); 19649 } 19650 if (element.hasRate()) { 19651 composeType("rate", element.getRate()); 19652 } } 19653 19654 protected void composeRelatedArtifact(String name, RelatedArtifact element) throws IOException { 19655 if (element != null) { 19656 composeElementAttributes(element); 19657 xml.enter(FHIR_NS, name); 19658 composeRelatedArtifactElements(element); 19659 composeElementClose(element); 19660 xml.exit(FHIR_NS, name); 19661 } 19662 } 19663 19664 protected void composeRelatedArtifactElements(RelatedArtifact element) throws IOException { 19665 composeElementElements(element); 19666 if (element.hasTypeElement()) 19667 composeEnumeration("type", element.getTypeElement(), new RelatedArtifact.RelatedArtifactTypeEnumFactory()); 19668 if (element.hasDisplayElement()) { 19669 composeString("display", element.getDisplayElement()); 19670 } 19671 if (element.hasCitationElement()) { 19672 composeString("citation", element.getCitationElement()); 19673 } 19674 if (element.hasUrlElement()) { 19675 composeUri("url", element.getUrlElement()); 19676 } 19677 if (element.hasDocument()) { 19678 composeAttachment("document", element.getDocument()); 19679 } 19680 if (element.hasResource()) { 19681 composeReference("resource", element.getResource()); 19682 } 19683 } 19684 19685 protected void composeContactDetail(String name, ContactDetail element) throws IOException { 19686 if (element != null) { 19687 composeElementAttributes(element); 19688 xml.enter(FHIR_NS, name); 19689 composeContactDetailElements(element); 19690 composeElementClose(element); 19691 xml.exit(FHIR_NS, name); 19692 } 19693 } 19694 19695 protected void composeContactDetailElements(ContactDetail element) throws IOException { 19696 composeElementElements(element); 19697 if (element.hasNameElement()) { 19698 composeString("name", element.getNameElement()); 19699 } 19700 if (element.hasTelecom()) { 19701 for (ContactPoint e : element.getTelecom()) 19702 composeContactPoint("telecom", e); 19703 } 19704 } 19705 19706 protected void composeHumanName(String name, HumanName element) throws IOException { 19707 if (element != null) { 19708 composeElementAttributes(element); 19709 xml.enter(FHIR_NS, name); 19710 composeHumanNameElements(element); 19711 composeElementClose(element); 19712 xml.exit(FHIR_NS, name); 19713 } 19714 } 19715 19716 protected void composeHumanNameElements(HumanName element) throws IOException { 19717 composeElementElements(element); 19718 if (element.hasUseElement()) 19719 composeEnumeration("use", element.getUseElement(), new HumanName.NameUseEnumFactory()); 19720 if (element.hasTextElement()) { 19721 composeString("text", element.getTextElement()); 19722 } 19723 if (element.hasFamilyElement()) { 19724 composeString("family", element.getFamilyElement()); 19725 } 19726 if (element.hasGiven()) { 19727 for (StringType e : element.getGiven()) 19728 composeString("given", e); 19729 } 19730 if (element.hasPrefix()) { 19731 for (StringType e : element.getPrefix()) 19732 composeString("prefix", e); 19733 } 19734 if (element.hasSuffix()) { 19735 for (StringType e : element.getSuffix()) 19736 composeString("suffix", e); 19737 } 19738 if (element.hasPeriod()) { 19739 composePeriod("period", element.getPeriod()); 19740 } 19741 } 19742 19743 protected void composeContactPoint(String name, ContactPoint element) throws IOException { 19744 if (element != null) { 19745 composeElementAttributes(element); 19746 xml.enter(FHIR_NS, name); 19747 composeContactPointElements(element); 19748 composeElementClose(element); 19749 xml.exit(FHIR_NS, name); 19750 } 19751 } 19752 19753 protected void composeContactPointElements(ContactPoint element) throws IOException { 19754 composeElementElements(element); 19755 if (element.hasSystemElement()) 19756 composeEnumeration("system", element.getSystemElement(), new ContactPoint.ContactPointSystemEnumFactory()); 19757 if (element.hasValueElement()) { 19758 composeString("value", element.getValueElement()); 19759 } 19760 if (element.hasUseElement()) 19761 composeEnumeration("use", element.getUseElement(), new ContactPoint.ContactPointUseEnumFactory()); 19762 if (element.hasRankElement()) { 19763 composePositiveInt("rank", element.getRankElement()); 19764 } 19765 if (element.hasPeriod()) { 19766 composePeriod("period", element.getPeriod()); 19767 } 19768 } 19769 19770 protected void composeUsageContext(String name, UsageContext element) throws IOException { 19771 if (element != null) { 19772 composeElementAttributes(element); 19773 xml.enter(FHIR_NS, name); 19774 composeUsageContextElements(element); 19775 composeElementClose(element); 19776 xml.exit(FHIR_NS, name); 19777 } 19778 } 19779 19780 protected void composeUsageContextElements(UsageContext element) throws IOException { 19781 composeElementElements(element); 19782 if (element.hasCode()) { 19783 composeCoding("code", element.getCode()); 19784 } 19785 if (element.hasValue()) { 19786 composeType("value", element.getValue()); 19787 } } 19788 19789 protected void composeTiming(String name, Timing element) throws IOException { 19790 if (element != null) { 19791 composeElementAttributes(element); 19792 xml.enter(FHIR_NS, name); 19793 composeTimingElements(element); 19794 composeElementClose(element); 19795 xml.exit(FHIR_NS, name); 19796 } 19797 } 19798 19799 protected void composeTimingElements(Timing element) throws IOException { 19800 composeElementElements(element); 19801 if (element.hasEvent()) { 19802 for (DateTimeType e : element.getEvent()) 19803 composeDateTime("event", e); 19804 } 19805 if (element.hasRepeat()) { 19806 composeTimingTimingRepeatComponent("repeat", element.getRepeat()); 19807 } 19808 if (element.hasCode()) { 19809 composeCodeableConcept("code", element.getCode()); 19810 } 19811 } 19812 19813 protected void composeTimingTimingRepeatComponent(String name, Timing.TimingRepeatComponent element) throws IOException { 19814 if (element != null) { 19815 composeElementAttributes(element); 19816 xml.enter(FHIR_NS, name); 19817 composeTimingTimingRepeatComponentElements(element); 19818 composeElementClose(element); 19819 xml.exit(FHIR_NS, name); 19820 } 19821 } 19822 19823 protected void composeTimingTimingRepeatComponentElements(Timing.TimingRepeatComponent element) throws IOException { 19824 composeElementElements(element); 19825 if (element.hasBounds()) { 19826 composeType("bounds", element.getBounds()); 19827 } if (element.hasCountElement()) { 19828 composeInteger("count", element.getCountElement()); 19829 } 19830 if (element.hasCountMaxElement()) { 19831 composeInteger("countMax", element.getCountMaxElement()); 19832 } 19833 if (element.hasDurationElement()) { 19834 composeDecimal("duration", element.getDurationElement()); 19835 } 19836 if (element.hasDurationMaxElement()) { 19837 composeDecimal("durationMax", element.getDurationMaxElement()); 19838 } 19839 if (element.hasDurationUnitElement()) 19840 composeEnumeration("durationUnit", element.getDurationUnitElement(), new Timing.UnitsOfTimeEnumFactory()); 19841 if (element.hasFrequencyElement()) { 19842 composeInteger("frequency", element.getFrequencyElement()); 19843 } 19844 if (element.hasFrequencyMaxElement()) { 19845 composeInteger("frequencyMax", element.getFrequencyMaxElement()); 19846 } 19847 if (element.hasPeriodElement()) { 19848 composeDecimal("period", element.getPeriodElement()); 19849 } 19850 if (element.hasPeriodMaxElement()) { 19851 composeDecimal("periodMax", element.getPeriodMaxElement()); 19852 } 19853 if (element.hasPeriodUnitElement()) 19854 composeEnumeration("periodUnit", element.getPeriodUnitElement(), new Timing.UnitsOfTimeEnumFactory()); 19855 if (element.hasDayOfWeek()) 19856 for (Enumeration<Timing.DayOfWeek> e : element.getDayOfWeek()) 19857 composeEnumeration("dayOfWeek", e, new Timing.DayOfWeekEnumFactory()); 19858 if (element.hasTimeOfDay()) { 19859 for (TimeType e : element.getTimeOfDay()) 19860 composeTime("timeOfDay", e); 19861 } 19862 if (element.hasWhen()) 19863 for (Enumeration<Timing.EventTiming> e : element.getWhen()) 19864 composeEnumeration("when", e, new Timing.EventTimingEnumFactory()); 19865 if (element.hasOffsetElement()) { 19866 composeUnsignedInt("offset", element.getOffsetElement()); 19867 } 19868 } 19869 19870 protected void composeElementDefinition(String name, ElementDefinition element) throws IOException { 19871 if (element != null) { 19872 composeElementAttributes(element); 19873 xml.enter(FHIR_NS, name); 19874 composeElementDefinitionElements(element); 19875 composeElementClose(element); 19876 xml.exit(FHIR_NS, name); 19877 } 19878 } 19879 19880 protected void composeElementDefinitionElements(ElementDefinition element) throws IOException { 19881 composeElementElements(element); 19882 if (element.hasPathElement()) { 19883 composeString("path", element.getPathElement()); 19884 } 19885 if (element.hasRepresentation()) 19886 for (Enumeration<ElementDefinition.PropertyRepresentation> e : element.getRepresentation()) 19887 composeEnumeration("representation", e, new ElementDefinition.PropertyRepresentationEnumFactory()); 19888 if (element.hasSliceNameElement()) { 19889 composeString("sliceName", element.getSliceNameElement()); 19890 } 19891 if (element.hasLabelElement()) { 19892 composeString("label", element.getLabelElement()); 19893 } 19894 if (element.hasCode()) { 19895 for (Coding e : element.getCode()) 19896 composeCoding("code", e); 19897 } 19898 if (element.hasSlicing()) { 19899 composeElementDefinitionElementDefinitionSlicingComponent("slicing", element.getSlicing()); 19900 } 19901 if (element.hasShortElement()) { 19902 composeString("short", element.getShortElement()); 19903 } 19904 if (element.hasDefinitionElement()) { 19905 composeMarkdown("definition", element.getDefinitionElement()); 19906 } 19907 if (element.hasCommentElement()) { 19908 composeMarkdown("comment", element.getCommentElement()); 19909 } 19910 if (element.hasRequirementsElement()) { 19911 composeMarkdown("requirements", element.getRequirementsElement()); 19912 } 19913 if (element.hasAlias()) { 19914 for (StringType e : element.getAlias()) 19915 composeString("alias", e); 19916 } 19917 if (element.hasMinElement()) { 19918 composeUnsignedInt("min", element.getMinElement()); 19919 } 19920 if (element.hasMaxElement()) { 19921 composeString("max", element.getMaxElement()); 19922 } 19923 if (element.hasBase()) { 19924 composeElementDefinitionElementDefinitionBaseComponent("base", element.getBase()); 19925 } 19926 if (element.hasContentReferenceElement()) { 19927 composeUri("contentReference", element.getContentReferenceElement()); 19928 } 19929 if (element.hasType()) { 19930 for (ElementDefinition.TypeRefComponent e : element.getType()) 19931 composeElementDefinitionTypeRefComponent("type", e); 19932 } 19933 if (element.hasDefaultValue()) { 19934 composeType("defaultValue", element.getDefaultValue()); 19935 } if (element.hasMeaningWhenMissingElement()) { 19936 composeMarkdown("meaningWhenMissing", element.getMeaningWhenMissingElement()); 19937 } 19938 if (element.hasOrderMeaningElement()) { 19939 composeString("orderMeaning", element.getOrderMeaningElement()); 19940 } 19941 if (element.hasFixed()) { 19942 composeType("fixed", element.getFixed()); 19943 } if (element.hasPattern()) { 19944 composeType("pattern", element.getPattern()); 19945 } if (element.hasExample()) { 19946 for (ElementDefinition.ElementDefinitionExampleComponent e : element.getExample()) 19947 composeElementDefinitionElementDefinitionExampleComponent("example", e); 19948 } 19949 if (element.hasMinValue()) { 19950 composeType("minValue", element.getMinValue()); 19951 } if (element.hasMaxValue()) { 19952 composeType("maxValue", element.getMaxValue()); 19953 } if (element.hasMaxLengthElement()) { 19954 composeInteger("maxLength", element.getMaxLengthElement()); 19955 } 19956 if (element.hasCondition()) { 19957 for (IdType e : element.getCondition()) 19958 composeId("condition", e); 19959 } 19960 if (element.hasConstraint()) { 19961 for (ElementDefinition.ElementDefinitionConstraintComponent e : element.getConstraint()) 19962 composeElementDefinitionElementDefinitionConstraintComponent("constraint", e); 19963 } 19964 if (element.hasMustSupportElement()) { 19965 composeBoolean("mustSupport", element.getMustSupportElement()); 19966 } 19967 if (element.hasIsModifierElement()) { 19968 composeBoolean("isModifier", element.getIsModifierElement()); 19969 } 19970 if (element.hasIsSummaryElement()) { 19971 composeBoolean("isSummary", element.getIsSummaryElement()); 19972 } 19973 if (element.hasBinding()) { 19974 composeElementDefinitionElementDefinitionBindingComponent("binding", element.getBinding()); 19975 } 19976 if (element.hasMapping()) { 19977 for (ElementDefinition.ElementDefinitionMappingComponent e : element.getMapping()) 19978 composeElementDefinitionElementDefinitionMappingComponent("mapping", e); 19979 } 19980 } 19981 19982 protected void composeElementDefinitionElementDefinitionSlicingComponent(String name, ElementDefinition.ElementDefinitionSlicingComponent element) throws IOException { 19983 if (element != null) { 19984 composeElementAttributes(element); 19985 xml.enter(FHIR_NS, name); 19986 composeElementDefinitionElementDefinitionSlicingComponentElements(element); 19987 composeElementClose(element); 19988 xml.exit(FHIR_NS, name); 19989 } 19990 } 19991 19992 protected void composeElementDefinitionElementDefinitionSlicingComponentElements(ElementDefinition.ElementDefinitionSlicingComponent element) throws IOException { 19993 composeElementElements(element); 19994 if (element.hasDiscriminator()) { 19995 for (ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent e : element.getDiscriminator()) 19996 composeElementDefinitionElementDefinitionSlicingDiscriminatorComponent("discriminator", e); 19997 } 19998 if (element.hasDescriptionElement()) { 19999 composeString("description", element.getDescriptionElement()); 20000 } 20001 if (element.hasOrderedElement()) { 20002 composeBoolean("ordered", element.getOrderedElement()); 20003 } 20004 if (element.hasRulesElement()) 20005 composeEnumeration("rules", element.getRulesElement(), new ElementDefinition.SlicingRulesEnumFactory()); 20006 } 20007 20008 protected void composeElementDefinitionElementDefinitionSlicingDiscriminatorComponent(String name, ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent element) throws IOException { 20009 if (element != null) { 20010 composeElementAttributes(element); 20011 xml.enter(FHIR_NS, name); 20012 composeElementDefinitionElementDefinitionSlicingDiscriminatorComponentElements(element); 20013 composeElementClose(element); 20014 xml.exit(FHIR_NS, name); 20015 } 20016 } 20017 20018 protected void composeElementDefinitionElementDefinitionSlicingDiscriminatorComponentElements(ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent element) throws IOException { 20019 composeElementElements(element); 20020 if (element.hasTypeElement()) 20021 composeEnumeration("type", element.getTypeElement(), new ElementDefinition.DiscriminatorTypeEnumFactory()); 20022 if (element.hasPathElement()) { 20023 composeString("path", element.getPathElement()); 20024 } 20025 } 20026 20027 protected void composeElementDefinitionElementDefinitionBaseComponent(String name, ElementDefinition.ElementDefinitionBaseComponent element) throws IOException { 20028 if (element != null) { 20029 composeElementAttributes(element); 20030 xml.enter(FHIR_NS, name); 20031 composeElementDefinitionElementDefinitionBaseComponentElements(element); 20032 composeElementClose(element); 20033 xml.exit(FHIR_NS, name); 20034 } 20035 } 20036 20037 protected void composeElementDefinitionElementDefinitionBaseComponentElements(ElementDefinition.ElementDefinitionBaseComponent element) throws IOException { 20038 composeElementElements(element); 20039 if (element.hasPathElement()) { 20040 composeString("path", element.getPathElement()); 20041 } 20042 if (element.hasMinElement()) { 20043 composeUnsignedInt("min", element.getMinElement()); 20044 } 20045 if (element.hasMaxElement()) { 20046 composeString("max", element.getMaxElement()); 20047 } 20048 } 20049 20050 protected void composeElementDefinitionTypeRefComponent(String name, ElementDefinition.TypeRefComponent element) throws IOException { 20051 if (element != null) { 20052 composeElementAttributes(element); 20053 xml.enter(FHIR_NS, name); 20054 composeElementDefinitionTypeRefComponentElements(element); 20055 composeElementClose(element); 20056 xml.exit(FHIR_NS, name); 20057 } 20058 } 20059 20060 protected void composeElementDefinitionTypeRefComponentElements(ElementDefinition.TypeRefComponent element) throws IOException { 20061 composeElementElements(element); 20062 if (element.hasCodeElement()) { 20063 composeUri("code", element.getCodeElement()); 20064 } 20065 if (element.hasProfileElement()) { 20066 composeUri("profile", element.getProfileElement()); 20067 } 20068 if (element.hasTargetProfileElement()) { 20069 composeUri("targetProfile", element.getTargetProfileElement()); 20070 } 20071 if (element.hasAggregation()) 20072 for (Enumeration<ElementDefinition.AggregationMode> e : element.getAggregation()) 20073 composeEnumeration("aggregation", e, new ElementDefinition.AggregationModeEnumFactory()); 20074 if (element.hasVersioningElement()) 20075 composeEnumeration("versioning", element.getVersioningElement(), new ElementDefinition.ReferenceVersionRulesEnumFactory()); 20076 } 20077 20078 protected void composeElementDefinitionElementDefinitionExampleComponent(String name, ElementDefinition.ElementDefinitionExampleComponent element) throws IOException { 20079 if (element != null) { 20080 composeElementAttributes(element); 20081 xml.enter(FHIR_NS, name); 20082 composeElementDefinitionElementDefinitionExampleComponentElements(element); 20083 composeElementClose(element); 20084 xml.exit(FHIR_NS, name); 20085 } 20086 } 20087 20088 protected void composeElementDefinitionElementDefinitionExampleComponentElements(ElementDefinition.ElementDefinitionExampleComponent element) throws IOException { 20089 composeElementElements(element); 20090 if (element.hasLabelElement()) { 20091 composeString("label", element.getLabelElement()); 20092 } 20093 if (element.hasValue()) { 20094 composeType("value", element.getValue()); 20095 } } 20096 20097 protected void composeElementDefinitionElementDefinitionConstraintComponent(String name, ElementDefinition.ElementDefinitionConstraintComponent element) throws IOException { 20098 if (element != null) { 20099 composeElementAttributes(element); 20100 xml.enter(FHIR_NS, name); 20101 composeElementDefinitionElementDefinitionConstraintComponentElements(element); 20102 composeElementClose(element); 20103 xml.exit(FHIR_NS, name); 20104 } 20105 } 20106 20107 protected void composeElementDefinitionElementDefinitionConstraintComponentElements(ElementDefinition.ElementDefinitionConstraintComponent element) throws IOException { 20108 composeElementElements(element); 20109 if (element.hasKeyElement()) { 20110 composeId("key", element.getKeyElement()); 20111 } 20112 if (element.hasRequirementsElement()) { 20113 composeString("requirements", element.getRequirementsElement()); 20114 } 20115 if (element.hasSeverityElement()) 20116 composeEnumeration("severity", element.getSeverityElement(), new ElementDefinition.ConstraintSeverityEnumFactory()); 20117 if (element.hasHumanElement()) { 20118 composeString("human", element.getHumanElement()); 20119 } 20120 if (element.hasExpressionElement()) { 20121 composeString("expression", element.getExpressionElement()); 20122 } 20123 if (element.hasXpathElement()) { 20124 composeString("xpath", element.getXpathElement()); 20125 } 20126 if (element.hasSourceElement()) { 20127 composeUri("source", element.getSourceElement()); 20128 } 20129 } 20130 20131 protected void composeElementDefinitionElementDefinitionBindingComponent(String name, ElementDefinition.ElementDefinitionBindingComponent element) throws IOException { 20132 if (element != null) { 20133 composeElementAttributes(element); 20134 xml.enter(FHIR_NS, name); 20135 composeElementDefinitionElementDefinitionBindingComponentElements(element); 20136 composeElementClose(element); 20137 xml.exit(FHIR_NS, name); 20138 } 20139 } 20140 20141 protected void composeElementDefinitionElementDefinitionBindingComponentElements(ElementDefinition.ElementDefinitionBindingComponent element) throws IOException { 20142 composeElementElements(element); 20143 if (element.hasStrengthElement()) 20144 composeEnumeration("strength", element.getStrengthElement(), new Enumerations.BindingStrengthEnumFactory()); 20145 if (element.hasDescriptionElement()) { 20146 composeString("description", element.getDescriptionElement()); 20147 } 20148 if (element.hasValueSet()) { 20149 composeType("valueSet", element.getValueSet()); 20150 } } 20151 20152 protected void composeElementDefinitionElementDefinitionMappingComponent(String name, ElementDefinition.ElementDefinitionMappingComponent element) throws IOException { 20153 if (element != null) { 20154 composeElementAttributes(element); 20155 xml.enter(FHIR_NS, name); 20156 composeElementDefinitionElementDefinitionMappingComponentElements(element); 20157 composeElementClose(element); 20158 xml.exit(FHIR_NS, name); 20159 } 20160 } 20161 20162 protected void composeElementDefinitionElementDefinitionMappingComponentElements(ElementDefinition.ElementDefinitionMappingComponent element) throws IOException { 20163 composeElementElements(element); 20164 if (element.hasIdentityElement()) { 20165 composeId("identity", element.getIdentityElement()); 20166 } 20167 if (element.hasLanguageElement()) { 20168 composeCode("language", element.getLanguageElement()); 20169 } 20170 if (element.hasMapElement()) { 20171 composeString("map", element.getMapElement()); 20172 } 20173 if (element.hasCommentElement()) { 20174 composeString("comment", element.getCommentElement()); 20175 } 20176 } 20177 20178 protected void composeParameterDefinition(String name, ParameterDefinition element) throws IOException { 20179 if (element != null) { 20180 composeElementAttributes(element); 20181 xml.enter(FHIR_NS, name); 20182 composeParameterDefinitionElements(element); 20183 composeElementClose(element); 20184 xml.exit(FHIR_NS, name); 20185 } 20186 } 20187 20188 protected void composeParameterDefinitionElements(ParameterDefinition element) throws IOException { 20189 composeElementElements(element); 20190 if (element.hasNameElement()) { 20191 composeCode("name", element.getNameElement()); 20192 } 20193 if (element.hasUseElement()) 20194 composeEnumeration("use", element.getUseElement(), new ParameterDefinition.ParameterUseEnumFactory()); 20195 if (element.hasMinElement()) { 20196 composeInteger("min", element.getMinElement()); 20197 } 20198 if (element.hasMaxElement()) { 20199 composeString("max", element.getMaxElement()); 20200 } 20201 if (element.hasDocumentationElement()) { 20202 composeString("documentation", element.getDocumentationElement()); 20203 } 20204 if (element.hasTypeElement()) { 20205 composeCode("type", element.getTypeElement()); 20206 } 20207 if (element.hasProfile()) { 20208 composeReference("profile", element.getProfile()); 20209 } 20210 } 20211 20212 protected void composeDomainResourceAttributes(DomainResource element) throws IOException { 20213 composeResourceAttributes(element); 20214 } 20215 20216 protected void composeDomainResourceElements(DomainResource element) throws IOException { 20217 composeResourceElements(element); 20218 if (element.hasText()) { 20219 composeNarrative("text", element.getText()); 20220 } 20221 if (element.hasContained()) { 20222 for (Resource e : element.getContained()) 20223 { 20224 xml.enter(FHIR_NS, "contained"); 20225 composeResource(e); 20226 xml.exit(FHIR_NS, "contained"); 20227 } 20228 } 20229 if (element.hasExtension()) 20230 for (Extension e : element.getExtension()) 20231 composeExtension("extension", e); 20232 if (element.hasModifierExtension()) { 20233 for (Extension e : element.getModifierExtension()) 20234 composeExtension("modifierExtension", e); 20235 } 20236 } 20237 20238 protected void composeParameters(String name, Parameters element) throws IOException { 20239 if (element != null) { 20240 composeResourceAttributes(element); 20241 xml.enter(FHIR_NS, name); 20242 composeParametersElements(element); 20243 composeElementClose(element); 20244 xml.exit(FHIR_NS, name); 20245 } 20246 } 20247 20248 protected void composeParametersElements(Parameters element) throws IOException { 20249 composeResourceElements(element); 20250 if (element.hasParameter()) { 20251 for (Parameters.ParametersParameterComponent e : element.getParameter()) 20252 composeParametersParametersParameterComponent("parameter", e); 20253 } 20254 } 20255 20256 protected void composeParametersParametersParameterComponent(String name, Parameters.ParametersParameterComponent element) throws IOException { 20257 if (element != null) { 20258 composeElementAttributes(element); 20259 xml.enter(FHIR_NS, name); 20260 composeParametersParametersParameterComponentElements(element); 20261 composeElementClose(element); 20262 xml.exit(FHIR_NS, name); 20263 } 20264 } 20265 20266 protected void composeParametersParametersParameterComponentElements(Parameters.ParametersParameterComponent element) throws IOException { 20267 composeBackboneElements(element); 20268 if (element.hasNameElement()) { 20269 composeString("name", element.getNameElement()); 20270 } 20271 if (element.hasValue()) { 20272 composeType("value", element.getValue()); 20273 } if (element.hasResource()) { 20274 xml.enter(FHIR_NS, "resource"); 20275 composeResource(element.getResource()); 20276 xml.exit(FHIR_NS, "resource"); 20277 } 20278 if (element.hasPart()) { 20279 for (Parameters.ParametersParameterComponent e : element.getPart()) 20280 composeParametersParametersParameterComponent("part", e); 20281 } 20282 } 20283 20284 protected void composeResourceAttributes(Resource element) throws IOException { 20285 if (style != OutputStyle.CANONICAL) 20286 for (String comment : element.getFormatCommentsPre()) 20287 xml.comment(comment, getOutputStyle() == OutputStyle.PRETTY); 20288 } 20289 20290 protected void composeResourceElements(Resource element) throws IOException { 20291 if (element.hasIdElement()) { 20292 composeId("id", element.getIdElement()); 20293 } 20294 if (element.hasMeta()) { 20295 composeMeta("meta", element.getMeta()); 20296 } 20297 if (element.hasImplicitRulesElement()) { 20298 composeUri("implicitRules", element.getImplicitRulesElement()); 20299 } 20300 if (element.hasLanguageElement()) { 20301 composeCode("language", element.getLanguageElement()); 20302 } 20303 } 20304 20305 protected void composeAccount(String name, Account element) throws IOException { 20306 if (element != null) { 20307 composeDomainResourceAttributes(element); 20308 xml.enter(FHIR_NS, name); 20309 composeAccountElements(element); 20310 composeElementClose(element); 20311 xml.exit(FHIR_NS, name); 20312 } 20313 } 20314 20315 protected void composeAccountElements(Account element) throws IOException { 20316 composeDomainResourceElements(element); 20317 if (element.hasIdentifier()) { 20318 for (Identifier e : element.getIdentifier()) 20319 composeIdentifier("identifier", e); 20320 } 20321 if (element.hasStatusElement()) 20322 composeEnumeration("status", element.getStatusElement(), new Account.AccountStatusEnumFactory()); 20323 if (element.hasType()) { 20324 composeCodeableConcept("type", element.getType()); 20325 } 20326 if (element.hasNameElement()) { 20327 composeString("name", element.getNameElement()); 20328 } 20329 if (element.hasSubject()) { 20330 composeReference("subject", element.getSubject()); 20331 } 20332 if (element.hasPeriod()) { 20333 composePeriod("period", element.getPeriod()); 20334 } 20335 if (element.hasActive()) { 20336 composePeriod("active", element.getActive()); 20337 } 20338 if (element.hasBalance()) { 20339 composeMoney("balance", element.getBalance()); 20340 } 20341 if (element.hasCoverage()) { 20342 for (Account.CoverageComponent e : element.getCoverage()) 20343 composeAccountCoverageComponent("coverage", e); 20344 } 20345 if (element.hasOwner()) { 20346 composeReference("owner", element.getOwner()); 20347 } 20348 if (element.hasDescriptionElement()) { 20349 composeString("description", element.getDescriptionElement()); 20350 } 20351 if (element.hasGuarantor()) { 20352 for (Account.GuarantorComponent e : element.getGuarantor()) 20353 composeAccountGuarantorComponent("guarantor", e); 20354 } 20355 } 20356 20357 protected void composeAccountCoverageComponent(String name, Account.CoverageComponent element) throws IOException { 20358 if (element != null) { 20359 composeElementAttributes(element); 20360 xml.enter(FHIR_NS, name); 20361 composeAccountCoverageComponentElements(element); 20362 composeElementClose(element); 20363 xml.exit(FHIR_NS, name); 20364 } 20365 } 20366 20367 protected void composeAccountCoverageComponentElements(Account.CoverageComponent element) throws IOException { 20368 composeBackboneElements(element); 20369 if (element.hasCoverage()) { 20370 composeReference("coverage", element.getCoverage()); 20371 } 20372 if (element.hasPriorityElement()) { 20373 composePositiveInt("priority", element.getPriorityElement()); 20374 } 20375 } 20376 20377 protected void composeAccountGuarantorComponent(String name, Account.GuarantorComponent element) throws IOException { 20378 if (element != null) { 20379 composeElementAttributes(element); 20380 xml.enter(FHIR_NS, name); 20381 composeAccountGuarantorComponentElements(element); 20382 composeElementClose(element); 20383 xml.exit(FHIR_NS, name); 20384 } 20385 } 20386 20387 protected void composeAccountGuarantorComponentElements(Account.GuarantorComponent element) throws IOException { 20388 composeBackboneElements(element); 20389 if (element.hasParty()) { 20390 composeReference("party", element.getParty()); 20391 } 20392 if (element.hasOnHoldElement()) { 20393 composeBoolean("onHold", element.getOnHoldElement()); 20394 } 20395 if (element.hasPeriod()) { 20396 composePeriod("period", element.getPeriod()); 20397 } 20398 } 20399 20400 protected void composeActivityDefinition(String name, ActivityDefinition element) throws IOException { 20401 if (element != null) { 20402 composeDomainResourceAttributes(element); 20403 xml.enter(FHIR_NS, name); 20404 composeActivityDefinitionElements(element); 20405 composeElementClose(element); 20406 xml.exit(FHIR_NS, name); 20407 } 20408 } 20409 20410 protected void composeActivityDefinitionElements(ActivityDefinition element) throws IOException { 20411 composeDomainResourceElements(element); 20412 if (element.hasUrlElement()) { 20413 composeUri("url", element.getUrlElement()); 20414 } 20415 if (element.hasIdentifier()) { 20416 for (Identifier e : element.getIdentifier()) 20417 composeIdentifier("identifier", e); 20418 } 20419 if (element.hasVersionElement()) { 20420 composeString("version", element.getVersionElement()); 20421 } 20422 if (element.hasNameElement()) { 20423 composeString("name", element.getNameElement()); 20424 } 20425 if (element.hasTitleElement()) { 20426 composeString("title", element.getTitleElement()); 20427 } 20428 if (element.hasStatusElement()) 20429 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 20430 if (element.hasExperimentalElement()) { 20431 composeBoolean("experimental", element.getExperimentalElement()); 20432 } 20433 if (element.hasDateElement()) { 20434 composeDateTime("date", element.getDateElement()); 20435 } 20436 if (element.hasPublisherElement()) { 20437 composeString("publisher", element.getPublisherElement()); 20438 } 20439 if (element.hasDescriptionElement()) { 20440 composeMarkdown("description", element.getDescriptionElement()); 20441 } 20442 if (element.hasPurposeElement()) { 20443 composeMarkdown("purpose", element.getPurposeElement()); 20444 } 20445 if (element.hasUsageElement()) { 20446 composeString("usage", element.getUsageElement()); 20447 } 20448 if (element.hasApprovalDateElement()) { 20449 composeDate("approvalDate", element.getApprovalDateElement()); 20450 } 20451 if (element.hasLastReviewDateElement()) { 20452 composeDate("lastReviewDate", element.getLastReviewDateElement()); 20453 } 20454 if (element.hasEffectivePeriod()) { 20455 composePeriod("effectivePeriod", element.getEffectivePeriod()); 20456 } 20457 if (element.hasUseContext()) { 20458 for (UsageContext e : element.getUseContext()) 20459 composeUsageContext("useContext", e); 20460 } 20461 if (element.hasJurisdiction()) { 20462 for (CodeableConcept e : element.getJurisdiction()) 20463 composeCodeableConcept("jurisdiction", e); 20464 } 20465 if (element.hasTopic()) { 20466 for (CodeableConcept e : element.getTopic()) 20467 composeCodeableConcept("topic", e); 20468 } 20469 if (element.hasContributor()) { 20470 for (Contributor e : element.getContributor()) 20471 composeContributor("contributor", e); 20472 } 20473 if (element.hasContact()) { 20474 for (ContactDetail e : element.getContact()) 20475 composeContactDetail("contact", e); 20476 } 20477 if (element.hasCopyrightElement()) { 20478 composeMarkdown("copyright", element.getCopyrightElement()); 20479 } 20480 if (element.hasRelatedArtifact()) { 20481 for (RelatedArtifact e : element.getRelatedArtifact()) 20482 composeRelatedArtifact("relatedArtifact", e); 20483 } 20484 if (element.hasLibrary()) { 20485 for (Reference e : element.getLibrary()) 20486 composeReference("library", e); 20487 } 20488 if (element.hasKindElement()) 20489 composeEnumeration("kind", element.getKindElement(), new ActivityDefinition.ActivityDefinitionKindEnumFactory()); 20490 if (element.hasCode()) { 20491 composeCodeableConcept("code", element.getCode()); 20492 } 20493 if (element.hasTiming()) { 20494 composeType("timing", element.getTiming()); 20495 } if (element.hasLocation()) { 20496 composeReference("location", element.getLocation()); 20497 } 20498 if (element.hasParticipant()) { 20499 for (ActivityDefinition.ActivityDefinitionParticipantComponent e : element.getParticipant()) 20500 composeActivityDefinitionActivityDefinitionParticipantComponent("participant", e); 20501 } 20502 if (element.hasProduct()) { 20503 composeType("product", element.getProduct()); 20504 } if (element.hasQuantity()) { 20505 composeSimpleQuantity("quantity", element.getQuantity()); 20506 } 20507 if (element.hasDosage()) { 20508 for (Dosage e : element.getDosage()) 20509 composeDosage("dosage", e); 20510 } 20511 if (element.hasBodySite()) { 20512 for (CodeableConcept e : element.getBodySite()) 20513 composeCodeableConcept("bodySite", e); 20514 } 20515 if (element.hasTransform()) { 20516 composeReference("transform", element.getTransform()); 20517 } 20518 if (element.hasDynamicValue()) { 20519 for (ActivityDefinition.ActivityDefinitionDynamicValueComponent e : element.getDynamicValue()) 20520 composeActivityDefinitionActivityDefinitionDynamicValueComponent("dynamicValue", e); 20521 } 20522 } 20523 20524 protected void composeActivityDefinitionActivityDefinitionParticipantComponent(String name, ActivityDefinition.ActivityDefinitionParticipantComponent element) throws IOException { 20525 if (element != null) { 20526 composeElementAttributes(element); 20527 xml.enter(FHIR_NS, name); 20528 composeActivityDefinitionActivityDefinitionParticipantComponentElements(element); 20529 composeElementClose(element); 20530 xml.exit(FHIR_NS, name); 20531 } 20532 } 20533 20534 protected void composeActivityDefinitionActivityDefinitionParticipantComponentElements(ActivityDefinition.ActivityDefinitionParticipantComponent element) throws IOException { 20535 composeBackboneElements(element); 20536 if (element.hasTypeElement()) 20537 composeEnumeration("type", element.getTypeElement(), new ActivityDefinition.ActivityParticipantTypeEnumFactory()); 20538 if (element.hasRole()) { 20539 composeCodeableConcept("role", element.getRole()); 20540 } 20541 } 20542 20543 protected void composeActivityDefinitionActivityDefinitionDynamicValueComponent(String name, ActivityDefinition.ActivityDefinitionDynamicValueComponent element) throws IOException { 20544 if (element != null) { 20545 composeElementAttributes(element); 20546 xml.enter(FHIR_NS, name); 20547 composeActivityDefinitionActivityDefinitionDynamicValueComponentElements(element); 20548 composeElementClose(element); 20549 xml.exit(FHIR_NS, name); 20550 } 20551 } 20552 20553 protected void composeActivityDefinitionActivityDefinitionDynamicValueComponentElements(ActivityDefinition.ActivityDefinitionDynamicValueComponent element) throws IOException { 20554 composeBackboneElements(element); 20555 if (element.hasDescriptionElement()) { 20556 composeString("description", element.getDescriptionElement()); 20557 } 20558 if (element.hasPathElement()) { 20559 composeString("path", element.getPathElement()); 20560 } 20561 if (element.hasLanguageElement()) { 20562 composeString("language", element.getLanguageElement()); 20563 } 20564 if (element.hasExpressionElement()) { 20565 composeString("expression", element.getExpressionElement()); 20566 } 20567 } 20568 20569 protected void composeAdverseEvent(String name, AdverseEvent element) throws IOException { 20570 if (element != null) { 20571 composeDomainResourceAttributes(element); 20572 xml.enter(FHIR_NS, name); 20573 composeAdverseEventElements(element); 20574 composeElementClose(element); 20575 xml.exit(FHIR_NS, name); 20576 } 20577 } 20578 20579 protected void composeAdverseEventElements(AdverseEvent element) throws IOException { 20580 composeDomainResourceElements(element); 20581 if (element.hasIdentifier()) { 20582 composeIdentifier("identifier", element.getIdentifier()); 20583 } 20584 if (element.hasCategoryElement()) 20585 composeEnumeration("category", element.getCategoryElement(), new AdverseEvent.AdverseEventCategoryEnumFactory()); 20586 if (element.hasType()) { 20587 composeCodeableConcept("type", element.getType()); 20588 } 20589 if (element.hasSubject()) { 20590 composeReference("subject", element.getSubject()); 20591 } 20592 if (element.hasDateElement()) { 20593 composeDateTime("date", element.getDateElement()); 20594 } 20595 if (element.hasReaction()) { 20596 for (Reference e : element.getReaction()) 20597 composeReference("reaction", e); 20598 } 20599 if (element.hasLocation()) { 20600 composeReference("location", element.getLocation()); 20601 } 20602 if (element.hasSeriousness()) { 20603 composeCodeableConcept("seriousness", element.getSeriousness()); 20604 } 20605 if (element.hasOutcome()) { 20606 composeCodeableConcept("outcome", element.getOutcome()); 20607 } 20608 if (element.hasRecorder()) { 20609 composeReference("recorder", element.getRecorder()); 20610 } 20611 if (element.hasEventParticipant()) { 20612 composeReference("eventParticipant", element.getEventParticipant()); 20613 } 20614 if (element.hasDescriptionElement()) { 20615 composeString("description", element.getDescriptionElement()); 20616 } 20617 if (element.hasSuspectEntity()) { 20618 for (AdverseEvent.AdverseEventSuspectEntityComponent e : element.getSuspectEntity()) 20619 composeAdverseEventAdverseEventSuspectEntityComponent("suspectEntity", e); 20620 } 20621 if (element.hasSubjectMedicalHistory()) { 20622 for (Reference e : element.getSubjectMedicalHistory()) 20623 composeReference("subjectMedicalHistory", e); 20624 } 20625 if (element.hasReferenceDocument()) { 20626 for (Reference e : element.getReferenceDocument()) 20627 composeReference("referenceDocument", e); 20628 } 20629 if (element.hasStudy()) { 20630 for (Reference e : element.getStudy()) 20631 composeReference("study", e); 20632 } 20633 } 20634 20635 protected void composeAdverseEventAdverseEventSuspectEntityComponent(String name, AdverseEvent.AdverseEventSuspectEntityComponent element) throws IOException { 20636 if (element != null) { 20637 composeElementAttributes(element); 20638 xml.enter(FHIR_NS, name); 20639 composeAdverseEventAdverseEventSuspectEntityComponentElements(element); 20640 composeElementClose(element); 20641 xml.exit(FHIR_NS, name); 20642 } 20643 } 20644 20645 protected void composeAdverseEventAdverseEventSuspectEntityComponentElements(AdverseEvent.AdverseEventSuspectEntityComponent element) throws IOException { 20646 composeBackboneElements(element); 20647 if (element.hasInstance()) { 20648 composeReference("instance", element.getInstance()); 20649 } 20650 if (element.hasCausalityElement()) 20651 composeEnumeration("causality", element.getCausalityElement(), new AdverseEvent.AdverseEventCausalityEnumFactory()); 20652 if (element.hasCausalityAssessment()) { 20653 composeCodeableConcept("causalityAssessment", element.getCausalityAssessment()); 20654 } 20655 if (element.hasCausalityProductRelatednessElement()) { 20656 composeString("causalityProductRelatedness", element.getCausalityProductRelatednessElement()); 20657 } 20658 if (element.hasCausalityMethod()) { 20659 composeCodeableConcept("causalityMethod", element.getCausalityMethod()); 20660 } 20661 if (element.hasCausalityAuthor()) { 20662 composeReference("causalityAuthor", element.getCausalityAuthor()); 20663 } 20664 if (element.hasCausalityResult()) { 20665 composeCodeableConcept("causalityResult", element.getCausalityResult()); 20666 } 20667 } 20668 20669 protected void composeAllergyIntolerance(String name, AllergyIntolerance element) throws IOException { 20670 if (element != null) { 20671 composeDomainResourceAttributes(element); 20672 xml.enter(FHIR_NS, name); 20673 composeAllergyIntoleranceElements(element); 20674 composeElementClose(element); 20675 xml.exit(FHIR_NS, name); 20676 } 20677 } 20678 20679 protected void composeAllergyIntoleranceElements(AllergyIntolerance element) throws IOException { 20680 composeDomainResourceElements(element); 20681 if (element.hasIdentifier()) { 20682 for (Identifier e : element.getIdentifier()) 20683 composeIdentifier("identifier", e); 20684 } 20685 if (element.hasClinicalStatusElement()) 20686 composeEnumeration("clinicalStatus", element.getClinicalStatusElement(), new AllergyIntolerance.AllergyIntoleranceClinicalStatusEnumFactory()); 20687 if (element.hasVerificationStatusElement()) 20688 composeEnumeration("verificationStatus", element.getVerificationStatusElement(), new AllergyIntolerance.AllergyIntoleranceVerificationStatusEnumFactory()); 20689 if (element.hasTypeElement()) 20690 composeEnumeration("type", element.getTypeElement(), new AllergyIntolerance.AllergyIntoleranceTypeEnumFactory()); 20691 if (element.hasCategory()) 20692 for (Enumeration<AllergyIntolerance.AllergyIntoleranceCategory> e : element.getCategory()) 20693 composeEnumeration("category", e, new AllergyIntolerance.AllergyIntoleranceCategoryEnumFactory()); 20694 if (element.hasCriticalityElement()) 20695 composeEnumeration("criticality", element.getCriticalityElement(), new AllergyIntolerance.AllergyIntoleranceCriticalityEnumFactory()); 20696 if (element.hasCode()) { 20697 composeCodeableConcept("code", element.getCode()); 20698 } 20699 if (element.hasPatient()) { 20700 composeReference("patient", element.getPatient()); 20701 } 20702 if (element.hasOnset()) { 20703 composeType("onset", element.getOnset()); 20704 } if (element.hasAssertedDateElement()) { 20705 composeDateTime("assertedDate", element.getAssertedDateElement()); 20706 } 20707 if (element.hasRecorder()) { 20708 composeReference("recorder", element.getRecorder()); 20709 } 20710 if (element.hasAsserter()) { 20711 composeReference("asserter", element.getAsserter()); 20712 } 20713 if (element.hasLastOccurrenceElement()) { 20714 composeDateTime("lastOccurrence", element.getLastOccurrenceElement()); 20715 } 20716 if (element.hasNote()) { 20717 for (Annotation e : element.getNote()) 20718 composeAnnotation("note", e); 20719 } 20720 if (element.hasReaction()) { 20721 for (AllergyIntolerance.AllergyIntoleranceReactionComponent e : element.getReaction()) 20722 composeAllergyIntoleranceAllergyIntoleranceReactionComponent("reaction", e); 20723 } 20724 } 20725 20726 protected void composeAllergyIntoleranceAllergyIntoleranceReactionComponent(String name, AllergyIntolerance.AllergyIntoleranceReactionComponent element) throws IOException { 20727 if (element != null) { 20728 composeElementAttributes(element); 20729 xml.enter(FHIR_NS, name); 20730 composeAllergyIntoleranceAllergyIntoleranceReactionComponentElements(element); 20731 composeElementClose(element); 20732 xml.exit(FHIR_NS, name); 20733 } 20734 } 20735 20736 protected void composeAllergyIntoleranceAllergyIntoleranceReactionComponentElements(AllergyIntolerance.AllergyIntoleranceReactionComponent element) throws IOException { 20737 composeBackboneElements(element); 20738 if (element.hasSubstance()) { 20739 composeCodeableConcept("substance", element.getSubstance()); 20740 } 20741 if (element.hasManifestation()) { 20742 for (CodeableConcept e : element.getManifestation()) 20743 composeCodeableConcept("manifestation", e); 20744 } 20745 if (element.hasDescriptionElement()) { 20746 composeString("description", element.getDescriptionElement()); 20747 } 20748 if (element.hasOnsetElement()) { 20749 composeDateTime("onset", element.getOnsetElement()); 20750 } 20751 if (element.hasSeverityElement()) 20752 composeEnumeration("severity", element.getSeverityElement(), new AllergyIntolerance.AllergyIntoleranceSeverityEnumFactory()); 20753 if (element.hasExposureRoute()) { 20754 composeCodeableConcept("exposureRoute", element.getExposureRoute()); 20755 } 20756 if (element.hasNote()) { 20757 for (Annotation e : element.getNote()) 20758 composeAnnotation("note", e); 20759 } 20760 } 20761 20762 protected void composeAppointment(String name, Appointment element) throws IOException { 20763 if (element != null) { 20764 composeDomainResourceAttributes(element); 20765 xml.enter(FHIR_NS, name); 20766 composeAppointmentElements(element); 20767 composeElementClose(element); 20768 xml.exit(FHIR_NS, name); 20769 } 20770 } 20771 20772 protected void composeAppointmentElements(Appointment element) throws IOException { 20773 composeDomainResourceElements(element); 20774 if (element.hasIdentifier()) { 20775 for (Identifier e : element.getIdentifier()) 20776 composeIdentifier("identifier", e); 20777 } 20778 if (element.hasStatusElement()) 20779 composeEnumeration("status", element.getStatusElement(), new Appointment.AppointmentStatusEnumFactory()); 20780 if (element.hasServiceCategory()) { 20781 composeCodeableConcept("serviceCategory", element.getServiceCategory()); 20782 } 20783 if (element.hasServiceType()) { 20784 for (CodeableConcept e : element.getServiceType()) 20785 composeCodeableConcept("serviceType", e); 20786 } 20787 if (element.hasSpecialty()) { 20788 for (CodeableConcept e : element.getSpecialty()) 20789 composeCodeableConcept("specialty", e); 20790 } 20791 if (element.hasAppointmentType()) { 20792 composeCodeableConcept("appointmentType", element.getAppointmentType()); 20793 } 20794 if (element.hasReason()) { 20795 for (CodeableConcept e : element.getReason()) 20796 composeCodeableConcept("reason", e); 20797 } 20798 if (element.hasIndication()) { 20799 for (Reference e : element.getIndication()) 20800 composeReference("indication", e); 20801 } 20802 if (element.hasPriorityElement()) { 20803 composeUnsignedInt("priority", element.getPriorityElement()); 20804 } 20805 if (element.hasDescriptionElement()) { 20806 composeString("description", element.getDescriptionElement()); 20807 } 20808 if (element.hasSupportingInformation()) { 20809 for (Reference e : element.getSupportingInformation()) 20810 composeReference("supportingInformation", e); 20811 } 20812 if (element.hasStartElement()) { 20813 composeInstant("start", element.getStartElement()); 20814 } 20815 if (element.hasEndElement()) { 20816 composeInstant("end", element.getEndElement()); 20817 } 20818 if (element.hasMinutesDurationElement()) { 20819 composePositiveInt("minutesDuration", element.getMinutesDurationElement()); 20820 } 20821 if (element.hasSlot()) { 20822 for (Reference e : element.getSlot()) 20823 composeReference("slot", e); 20824 } 20825 if (element.hasCreatedElement()) { 20826 composeDateTime("created", element.getCreatedElement()); 20827 } 20828 if (element.hasCommentElement()) { 20829 composeString("comment", element.getCommentElement()); 20830 } 20831 if (element.hasIncomingReferral()) { 20832 for (Reference e : element.getIncomingReferral()) 20833 composeReference("incomingReferral", e); 20834 } 20835 if (element.hasParticipant()) { 20836 for (Appointment.AppointmentParticipantComponent e : element.getParticipant()) 20837 composeAppointmentAppointmentParticipantComponent("participant", e); 20838 } 20839 if (element.hasRequestedPeriod()) { 20840 for (Period e : element.getRequestedPeriod()) 20841 composePeriod("requestedPeriod", e); 20842 } 20843 } 20844 20845 protected void composeAppointmentAppointmentParticipantComponent(String name, Appointment.AppointmentParticipantComponent element) throws IOException { 20846 if (element != null) { 20847 composeElementAttributes(element); 20848 xml.enter(FHIR_NS, name); 20849 composeAppointmentAppointmentParticipantComponentElements(element); 20850 composeElementClose(element); 20851 xml.exit(FHIR_NS, name); 20852 } 20853 } 20854 20855 protected void composeAppointmentAppointmentParticipantComponentElements(Appointment.AppointmentParticipantComponent element) throws IOException { 20856 composeBackboneElements(element); 20857 if (element.hasType()) { 20858 for (CodeableConcept e : element.getType()) 20859 composeCodeableConcept("type", e); 20860 } 20861 if (element.hasActor()) { 20862 composeReference("actor", element.getActor()); 20863 } 20864 if (element.hasRequiredElement()) 20865 composeEnumeration("required", element.getRequiredElement(), new Appointment.ParticipantRequiredEnumFactory()); 20866 if (element.hasStatusElement()) 20867 composeEnumeration("status", element.getStatusElement(), new Appointment.ParticipationStatusEnumFactory()); 20868 } 20869 20870 protected void composeAppointmentResponse(String name, AppointmentResponse element) throws IOException { 20871 if (element != null) { 20872 composeDomainResourceAttributes(element); 20873 xml.enter(FHIR_NS, name); 20874 composeAppointmentResponseElements(element); 20875 composeElementClose(element); 20876 xml.exit(FHIR_NS, name); 20877 } 20878 } 20879 20880 protected void composeAppointmentResponseElements(AppointmentResponse element) throws IOException { 20881 composeDomainResourceElements(element); 20882 if (element.hasIdentifier()) { 20883 for (Identifier e : element.getIdentifier()) 20884 composeIdentifier("identifier", e); 20885 } 20886 if (element.hasAppointment()) { 20887 composeReference("appointment", element.getAppointment()); 20888 } 20889 if (element.hasStartElement()) { 20890 composeInstant("start", element.getStartElement()); 20891 } 20892 if (element.hasEndElement()) { 20893 composeInstant("end", element.getEndElement()); 20894 } 20895 if (element.hasParticipantType()) { 20896 for (CodeableConcept e : element.getParticipantType()) 20897 composeCodeableConcept("participantType", e); 20898 } 20899 if (element.hasActor()) { 20900 composeReference("actor", element.getActor()); 20901 } 20902 if (element.hasParticipantStatusElement()) 20903 composeEnumeration("participantStatus", element.getParticipantStatusElement(), new AppointmentResponse.ParticipantStatusEnumFactory()); 20904 if (element.hasCommentElement()) { 20905 composeString("comment", element.getCommentElement()); 20906 } 20907 } 20908 20909 protected void composeAuditEvent(String name, AuditEvent element) throws IOException { 20910 if (element != null) { 20911 composeDomainResourceAttributes(element); 20912 xml.enter(FHIR_NS, name); 20913 composeAuditEventElements(element); 20914 composeElementClose(element); 20915 xml.exit(FHIR_NS, name); 20916 } 20917 } 20918 20919 protected void composeAuditEventElements(AuditEvent element) throws IOException { 20920 composeDomainResourceElements(element); 20921 if (element.hasType()) { 20922 composeCoding("type", element.getType()); 20923 } 20924 if (element.hasSubtype()) { 20925 for (Coding e : element.getSubtype()) 20926 composeCoding("subtype", e); 20927 } 20928 if (element.hasActionElement()) 20929 composeEnumeration("action", element.getActionElement(), new AuditEvent.AuditEventActionEnumFactory()); 20930 if (element.hasRecordedElement()) { 20931 composeInstant("recorded", element.getRecordedElement()); 20932 } 20933 if (element.hasOutcomeElement()) 20934 composeEnumeration("outcome", element.getOutcomeElement(), new AuditEvent.AuditEventOutcomeEnumFactory()); 20935 if (element.hasOutcomeDescElement()) { 20936 composeString("outcomeDesc", element.getOutcomeDescElement()); 20937 } 20938 if (element.hasPurposeOfEvent()) { 20939 for (CodeableConcept e : element.getPurposeOfEvent()) 20940 composeCodeableConcept("purposeOfEvent", e); 20941 } 20942 if (element.hasAgent()) { 20943 for (AuditEvent.AuditEventAgentComponent e : element.getAgent()) 20944 composeAuditEventAuditEventAgentComponent("agent", e); 20945 } 20946 if (element.hasSource()) { 20947 composeAuditEventAuditEventSourceComponent("source", element.getSource()); 20948 } 20949 if (element.hasEntity()) { 20950 for (AuditEvent.AuditEventEntityComponent e : element.getEntity()) 20951 composeAuditEventAuditEventEntityComponent("entity", e); 20952 } 20953 } 20954 20955 protected void composeAuditEventAuditEventAgentComponent(String name, AuditEvent.AuditEventAgentComponent element) throws IOException { 20956 if (element != null) { 20957 composeElementAttributes(element); 20958 xml.enter(FHIR_NS, name); 20959 composeAuditEventAuditEventAgentComponentElements(element); 20960 composeElementClose(element); 20961 xml.exit(FHIR_NS, name); 20962 } 20963 } 20964 20965 protected void composeAuditEventAuditEventAgentComponentElements(AuditEvent.AuditEventAgentComponent element) throws IOException { 20966 composeBackboneElements(element); 20967 if (element.hasRole()) { 20968 for (CodeableConcept e : element.getRole()) 20969 composeCodeableConcept("role", e); 20970 } 20971 if (element.hasReference()) { 20972 composeReference("reference", element.getReference()); 20973 } 20974 if (element.hasUserId()) { 20975 composeIdentifier("userId", element.getUserId()); 20976 } 20977 if (element.hasAltIdElement()) { 20978 composeString("altId", element.getAltIdElement()); 20979 } 20980 if (element.hasNameElement()) { 20981 composeString("name", element.getNameElement()); 20982 } 20983 if (element.hasRequestorElement()) { 20984 composeBoolean("requestor", element.getRequestorElement()); 20985 } 20986 if (element.hasLocation()) { 20987 composeReference("location", element.getLocation()); 20988 } 20989 if (element.hasPolicy()) { 20990 for (UriType e : element.getPolicy()) 20991 composeUri("policy", e); 20992 } 20993 if (element.hasMedia()) { 20994 composeCoding("media", element.getMedia()); 20995 } 20996 if (element.hasNetwork()) { 20997 composeAuditEventAuditEventAgentNetworkComponent("network", element.getNetwork()); 20998 } 20999 if (element.hasPurposeOfUse()) { 21000 for (CodeableConcept e : element.getPurposeOfUse()) 21001 composeCodeableConcept("purposeOfUse", e); 21002 } 21003 } 21004 21005 protected void composeAuditEventAuditEventAgentNetworkComponent(String name, AuditEvent.AuditEventAgentNetworkComponent element) throws IOException { 21006 if (element != null) { 21007 composeElementAttributes(element); 21008 xml.enter(FHIR_NS, name); 21009 composeAuditEventAuditEventAgentNetworkComponentElements(element); 21010 composeElementClose(element); 21011 xml.exit(FHIR_NS, name); 21012 } 21013 } 21014 21015 protected void composeAuditEventAuditEventAgentNetworkComponentElements(AuditEvent.AuditEventAgentNetworkComponent element) throws IOException { 21016 composeBackboneElements(element); 21017 if (element.hasAddressElement()) { 21018 composeString("address", element.getAddressElement()); 21019 } 21020 if (element.hasTypeElement()) 21021 composeEnumeration("type", element.getTypeElement(), new AuditEvent.AuditEventAgentNetworkTypeEnumFactory()); 21022 } 21023 21024 protected void composeAuditEventAuditEventSourceComponent(String name, AuditEvent.AuditEventSourceComponent element) throws IOException { 21025 if (element != null) { 21026 composeElementAttributes(element); 21027 xml.enter(FHIR_NS, name); 21028 composeAuditEventAuditEventSourceComponentElements(element); 21029 composeElementClose(element); 21030 xml.exit(FHIR_NS, name); 21031 } 21032 } 21033 21034 protected void composeAuditEventAuditEventSourceComponentElements(AuditEvent.AuditEventSourceComponent element) throws IOException { 21035 composeBackboneElements(element); 21036 if (element.hasSiteElement()) { 21037 composeString("site", element.getSiteElement()); 21038 } 21039 if (element.hasIdentifier()) { 21040 composeIdentifier("identifier", element.getIdentifier()); 21041 } 21042 if (element.hasType()) { 21043 for (Coding e : element.getType()) 21044 composeCoding("type", e); 21045 } 21046 } 21047 21048 protected void composeAuditEventAuditEventEntityComponent(String name, AuditEvent.AuditEventEntityComponent element) throws IOException { 21049 if (element != null) { 21050 composeElementAttributes(element); 21051 xml.enter(FHIR_NS, name); 21052 composeAuditEventAuditEventEntityComponentElements(element); 21053 composeElementClose(element); 21054 xml.exit(FHIR_NS, name); 21055 } 21056 } 21057 21058 protected void composeAuditEventAuditEventEntityComponentElements(AuditEvent.AuditEventEntityComponent element) throws IOException { 21059 composeBackboneElements(element); 21060 if (element.hasIdentifier()) { 21061 composeIdentifier("identifier", element.getIdentifier()); 21062 } 21063 if (element.hasReference()) { 21064 composeReference("reference", element.getReference()); 21065 } 21066 if (element.hasType()) { 21067 composeCoding("type", element.getType()); 21068 } 21069 if (element.hasRole()) { 21070 composeCoding("role", element.getRole()); 21071 } 21072 if (element.hasLifecycle()) { 21073 composeCoding("lifecycle", element.getLifecycle()); 21074 } 21075 if (element.hasSecurityLabel()) { 21076 for (Coding e : element.getSecurityLabel()) 21077 composeCoding("securityLabel", e); 21078 } 21079 if (element.hasNameElement()) { 21080 composeString("name", element.getNameElement()); 21081 } 21082 if (element.hasDescriptionElement()) { 21083 composeString("description", element.getDescriptionElement()); 21084 } 21085 if (element.hasQueryElement()) { 21086 composeBase64Binary("query", element.getQueryElement()); 21087 } 21088 if (element.hasDetail()) { 21089 for (AuditEvent.AuditEventEntityDetailComponent e : element.getDetail()) 21090 composeAuditEventAuditEventEntityDetailComponent("detail", e); 21091 } 21092 } 21093 21094 protected void composeAuditEventAuditEventEntityDetailComponent(String name, AuditEvent.AuditEventEntityDetailComponent element) throws IOException { 21095 if (element != null) { 21096 composeElementAttributes(element); 21097 xml.enter(FHIR_NS, name); 21098 composeAuditEventAuditEventEntityDetailComponentElements(element); 21099 composeElementClose(element); 21100 xml.exit(FHIR_NS, name); 21101 } 21102 } 21103 21104 protected void composeAuditEventAuditEventEntityDetailComponentElements(AuditEvent.AuditEventEntityDetailComponent element) throws IOException { 21105 composeBackboneElements(element); 21106 if (element.hasTypeElement()) { 21107 composeString("type", element.getTypeElement()); 21108 } 21109 if (element.hasValueElement()) { 21110 composeBase64Binary("value", element.getValueElement()); 21111 } 21112 } 21113 21114 protected void composeBasic(String name, Basic element) throws IOException { 21115 if (element != null) { 21116 composeDomainResourceAttributes(element); 21117 xml.enter(FHIR_NS, name); 21118 composeBasicElements(element); 21119 composeElementClose(element); 21120 xml.exit(FHIR_NS, name); 21121 } 21122 } 21123 21124 protected void composeBasicElements(Basic element) throws IOException { 21125 composeDomainResourceElements(element); 21126 if (element.hasIdentifier()) { 21127 for (Identifier e : element.getIdentifier()) 21128 composeIdentifier("identifier", e); 21129 } 21130 if (element.hasCode()) { 21131 composeCodeableConcept("code", element.getCode()); 21132 } 21133 if (element.hasSubject()) { 21134 composeReference("subject", element.getSubject()); 21135 } 21136 if (element.hasCreatedElement()) { 21137 composeDate("created", element.getCreatedElement()); 21138 } 21139 if (element.hasAuthor()) { 21140 composeReference("author", element.getAuthor()); 21141 } 21142 } 21143 21144 protected void composeBinary(String name, Binary element) throws IOException { 21145 if (element != null) { 21146 composeResourceAttributes(element); 21147 xml.enter(FHIR_NS, name); 21148 composeBinaryElements(element); 21149 composeElementClose(element); 21150 xml.exit(FHIR_NS, name); 21151 } 21152 } 21153 21154 protected void composeBinaryElements(Binary element) throws IOException { 21155 composeResourceElements(element); 21156 if (element.hasContentTypeElement()) { 21157 composeCode("contentType", element.getContentTypeElement()); 21158 } 21159 if (element.hasSecurityContext()) { 21160 composeReference("securityContext", element.getSecurityContext()); 21161 } 21162 if (element.hasContentElement()) { 21163 composeBase64Binary("content", element.getContentElement()); 21164 } 21165 } 21166 21167 protected void composeBodySite(String name, BodySite element) throws IOException { 21168 if (element != null) { 21169 composeDomainResourceAttributes(element); 21170 xml.enter(FHIR_NS, name); 21171 composeBodySiteElements(element); 21172 composeElementClose(element); 21173 xml.exit(FHIR_NS, name); 21174 } 21175 } 21176 21177 protected void composeBodySiteElements(BodySite element) throws IOException { 21178 composeDomainResourceElements(element); 21179 if (element.hasIdentifier()) { 21180 for (Identifier e : element.getIdentifier()) 21181 composeIdentifier("identifier", e); 21182 } 21183 if (element.hasActiveElement()) { 21184 composeBoolean("active", element.getActiveElement()); 21185 } 21186 if (element.hasCode()) { 21187 composeCodeableConcept("code", element.getCode()); 21188 } 21189 if (element.hasQualifier()) { 21190 for (CodeableConcept e : element.getQualifier()) 21191 composeCodeableConcept("qualifier", e); 21192 } 21193 if (element.hasDescriptionElement()) { 21194 composeString("description", element.getDescriptionElement()); 21195 } 21196 if (element.hasImage()) { 21197 for (Attachment e : element.getImage()) 21198 composeAttachment("image", e); 21199 } 21200 if (element.hasPatient()) { 21201 composeReference("patient", element.getPatient()); 21202 } 21203 } 21204 21205 protected void composeBundle(String name, Bundle element) throws IOException { 21206 if (element != null) { 21207 composeResourceAttributes(element); 21208 xml.enter(FHIR_NS, name); 21209 composeBundleElements(element); 21210 composeElementClose(element); 21211 xml.exit(FHIR_NS, name); 21212 } 21213 } 21214 21215 protected void composeBundleElements(Bundle element) throws IOException { 21216 composeResourceElements(element); 21217 if (element.hasIdentifier()) { 21218 composeIdentifier("identifier", element.getIdentifier()); 21219 } 21220 if (element.hasTypeElement()) 21221 composeEnumeration("type", element.getTypeElement(), new Bundle.BundleTypeEnumFactory()); 21222 if (element.hasTotalElement()) { 21223 composeUnsignedInt("total", element.getTotalElement()); 21224 } 21225 if (element.hasLink()) { 21226 for (Bundle.BundleLinkComponent e : element.getLink()) 21227 composeBundleBundleLinkComponent("link", e); 21228 } 21229 if (element.hasEntry()) { 21230 for (Bundle.BundleEntryComponent e : element.getEntry()) 21231 composeBundleBundleEntryComponent("entry", e); 21232 } 21233 if (element.hasSignature()) { 21234 composeSignature("signature", element.getSignature()); 21235 } 21236 } 21237 21238 protected void composeBundleBundleLinkComponent(String name, Bundle.BundleLinkComponent element) throws IOException { 21239 if (element != null) { 21240 composeElementAttributes(element); 21241 xml.enter(FHIR_NS, name); 21242 composeBundleBundleLinkComponentElements(element); 21243 composeElementClose(element); 21244 xml.exit(FHIR_NS, name); 21245 } 21246 } 21247 21248 protected void composeBundleBundleLinkComponentElements(Bundle.BundleLinkComponent element) throws IOException { 21249 composeBackboneElements(element); 21250 if (element.hasRelationElement()) { 21251 composeString("relation", element.getRelationElement()); 21252 } 21253 if (element.hasUrlElement()) { 21254 composeUri("url", element.getUrlElement()); 21255 } 21256 } 21257 21258 protected void composeBundleBundleEntryComponent(String name, Bundle.BundleEntryComponent element) throws IOException { 21259 if (element != null) { 21260 composeElementAttributes(element); 21261 xml.enter(FHIR_NS, name); 21262 composeBundleBundleEntryComponentElements(element); 21263 composeElementClose(element); 21264 xml.exit(FHIR_NS, name); 21265 } 21266 } 21267 21268 protected void composeBundleBundleEntryComponentElements(Bundle.BundleEntryComponent element) throws IOException { 21269 composeBackboneElements(element); 21270 if (element.hasLink()) { 21271 for (Bundle.BundleLinkComponent e : element.getLink()) 21272 composeBundleBundleLinkComponent("link", e); 21273 } 21274 if (element.hasFullUrlElement()) { 21275 composeUri("fullUrl", element.getFullUrlElement()); 21276 } 21277 if (element.hasResource()) { 21278 xml.enter(FHIR_NS, "resource"); 21279 composeResource(element.getResource()); 21280 xml.exit(FHIR_NS, "resource"); 21281 } 21282 if (element.hasSearch()) { 21283 composeBundleBundleEntrySearchComponent("search", element.getSearch()); 21284 } 21285 if (element.hasRequest()) { 21286 composeBundleBundleEntryRequestComponent("request", element.getRequest()); 21287 } 21288 if (element.hasResponse()) { 21289 composeBundleBundleEntryResponseComponent("response", element.getResponse()); 21290 } 21291 } 21292 21293 protected void composeBundleBundleEntrySearchComponent(String name, Bundle.BundleEntrySearchComponent element) throws IOException { 21294 if (element != null) { 21295 composeElementAttributes(element); 21296 xml.enter(FHIR_NS, name); 21297 composeBundleBundleEntrySearchComponentElements(element); 21298 composeElementClose(element); 21299 xml.exit(FHIR_NS, name); 21300 } 21301 } 21302 21303 protected void composeBundleBundleEntrySearchComponentElements(Bundle.BundleEntrySearchComponent element) throws IOException { 21304 composeBackboneElements(element); 21305 if (element.hasModeElement()) 21306 composeEnumeration("mode", element.getModeElement(), new Bundle.SearchEntryModeEnumFactory()); 21307 if (element.hasScoreElement()) { 21308 composeDecimal("score", element.getScoreElement()); 21309 } 21310 } 21311 21312 protected void composeBundleBundleEntryRequestComponent(String name, Bundle.BundleEntryRequestComponent element) throws IOException { 21313 if (element != null) { 21314 composeElementAttributes(element); 21315 xml.enter(FHIR_NS, name); 21316 composeBundleBundleEntryRequestComponentElements(element); 21317 composeElementClose(element); 21318 xml.exit(FHIR_NS, name); 21319 } 21320 } 21321 21322 protected void composeBundleBundleEntryRequestComponentElements(Bundle.BundleEntryRequestComponent element) throws IOException { 21323 composeBackboneElements(element); 21324 if (element.hasMethodElement()) 21325 composeEnumeration("method", element.getMethodElement(), new Bundle.HTTPVerbEnumFactory()); 21326 if (element.hasUrlElement()) { 21327 composeUri("url", element.getUrlElement()); 21328 } 21329 if (element.hasIfNoneMatchElement()) { 21330 composeString("ifNoneMatch", element.getIfNoneMatchElement()); 21331 } 21332 if (element.hasIfModifiedSinceElement()) { 21333 composeInstant("ifModifiedSince", element.getIfModifiedSinceElement()); 21334 } 21335 if (element.hasIfMatchElement()) { 21336 composeString("ifMatch", element.getIfMatchElement()); 21337 } 21338 if (element.hasIfNoneExistElement()) { 21339 composeString("ifNoneExist", element.getIfNoneExistElement()); 21340 } 21341 } 21342 21343 protected void composeBundleBundleEntryResponseComponent(String name, Bundle.BundleEntryResponseComponent element) throws IOException { 21344 if (element != null) { 21345 composeElementAttributes(element); 21346 xml.enter(FHIR_NS, name); 21347 composeBundleBundleEntryResponseComponentElements(element); 21348 composeElementClose(element); 21349 xml.exit(FHIR_NS, name); 21350 } 21351 } 21352 21353 protected void composeBundleBundleEntryResponseComponentElements(Bundle.BundleEntryResponseComponent element) throws IOException { 21354 composeBackboneElements(element); 21355 if (element.hasStatusElement()) { 21356 composeString("status", element.getStatusElement()); 21357 } 21358 if (element.hasLocationElement()) { 21359 composeUri("location", element.getLocationElement()); 21360 } 21361 if (element.hasEtagElement()) { 21362 composeString("etag", element.getEtagElement()); 21363 } 21364 if (element.hasLastModifiedElement()) { 21365 composeInstant("lastModified", element.getLastModifiedElement()); 21366 } 21367 if (element.hasOutcome()) { 21368 xml.enter(FHIR_NS, "outcome"); 21369 composeResource(element.getOutcome()); 21370 xml.exit(FHIR_NS, "outcome"); 21371 } 21372 } 21373 21374 protected void composeCapabilityStatement(String name, CapabilityStatement element) throws IOException { 21375 if (element != null) { 21376 composeDomainResourceAttributes(element); 21377 xml.enter(FHIR_NS, name); 21378 composeCapabilityStatementElements(element); 21379 composeElementClose(element); 21380 xml.exit(FHIR_NS, name); 21381 } 21382 } 21383 21384 protected void composeCapabilityStatementElements(CapabilityStatement element) throws IOException { 21385 composeDomainResourceElements(element); 21386 if (element.hasUrlElement()) { 21387 composeUri("url", element.getUrlElement()); 21388 } 21389 if (element.hasVersionElement()) { 21390 composeString("version", element.getVersionElement()); 21391 } 21392 if (element.hasNameElement()) { 21393 composeString("name", element.getNameElement()); 21394 } 21395 if (element.hasTitleElement()) { 21396 composeString("title", element.getTitleElement()); 21397 } 21398 if (element.hasStatusElement()) 21399 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 21400 if (element.hasExperimentalElement()) { 21401 composeBoolean("experimental", element.getExperimentalElement()); 21402 } 21403 if (element.hasDateElement()) { 21404 composeDateTime("date", element.getDateElement()); 21405 } 21406 if (element.hasPublisherElement()) { 21407 composeString("publisher", element.getPublisherElement()); 21408 } 21409 if (element.hasContact()) { 21410 for (ContactDetail e : element.getContact()) 21411 composeContactDetail("contact", e); 21412 } 21413 if (element.hasDescriptionElement()) { 21414 composeMarkdown("description", element.getDescriptionElement()); 21415 } 21416 if (element.hasUseContext()) { 21417 for (UsageContext e : element.getUseContext()) 21418 composeUsageContext("useContext", e); 21419 } 21420 if (element.hasJurisdiction()) { 21421 for (CodeableConcept e : element.getJurisdiction()) 21422 composeCodeableConcept("jurisdiction", e); 21423 } 21424 if (element.hasPurposeElement()) { 21425 composeMarkdown("purpose", element.getPurposeElement()); 21426 } 21427 if (element.hasCopyrightElement()) { 21428 composeMarkdown("copyright", element.getCopyrightElement()); 21429 } 21430 if (element.hasKindElement()) 21431 composeEnumeration("kind", element.getKindElement(), new CapabilityStatement.CapabilityStatementKindEnumFactory()); 21432 if (element.hasInstantiates()) { 21433 for (UriType e : element.getInstantiates()) 21434 composeUri("instantiates", e); 21435 } 21436 if (element.hasSoftware()) { 21437 composeCapabilityStatementCapabilityStatementSoftwareComponent("software", element.getSoftware()); 21438 } 21439 if (element.hasImplementation()) { 21440 composeCapabilityStatementCapabilityStatementImplementationComponent("implementation", element.getImplementation()); 21441 } 21442 if (element.hasFhirVersionElement()) { 21443 composeId("fhirVersion", element.getFhirVersionElement()); 21444 } 21445 if (element.hasAcceptUnknownElement()) 21446 composeEnumeration("acceptUnknown", element.getAcceptUnknownElement(), new CapabilityStatement.UnknownContentCodeEnumFactory()); 21447 if (element.hasFormat()) { 21448 for (CodeType e : element.getFormat()) 21449 composeCode("format", e); 21450 } 21451 if (element.hasPatchFormat()) { 21452 for (CodeType e : element.getPatchFormat()) 21453 composeCode("patchFormat", e); 21454 } 21455 if (element.hasImplementationGuide()) { 21456 for (UriType e : element.getImplementationGuide()) 21457 composeUri("implementationGuide", e); 21458 } 21459 if (element.hasProfile()) { 21460 for (Reference e : element.getProfile()) 21461 composeReference("profile", e); 21462 } 21463 if (element.hasRest()) { 21464 for (CapabilityStatement.CapabilityStatementRestComponent e : element.getRest()) 21465 composeCapabilityStatementCapabilityStatementRestComponent("rest", e); 21466 } 21467 if (element.hasMessaging()) { 21468 for (CapabilityStatement.CapabilityStatementMessagingComponent e : element.getMessaging()) 21469 composeCapabilityStatementCapabilityStatementMessagingComponent("messaging", e); 21470 } 21471 if (element.hasDocument()) { 21472 for (CapabilityStatement.CapabilityStatementDocumentComponent e : element.getDocument()) 21473 composeCapabilityStatementCapabilityStatementDocumentComponent("document", e); 21474 } 21475 } 21476 21477 protected void composeCapabilityStatementCapabilityStatementSoftwareComponent(String name, CapabilityStatement.CapabilityStatementSoftwareComponent element) throws IOException { 21478 if (element != null) { 21479 composeElementAttributes(element); 21480 xml.enter(FHIR_NS, name); 21481 composeCapabilityStatementCapabilityStatementSoftwareComponentElements(element); 21482 composeElementClose(element); 21483 xml.exit(FHIR_NS, name); 21484 } 21485 } 21486 21487 protected void composeCapabilityStatementCapabilityStatementSoftwareComponentElements(CapabilityStatement.CapabilityStatementSoftwareComponent element) throws IOException { 21488 composeBackboneElements(element); 21489 if (element.hasNameElement()) { 21490 composeString("name", element.getNameElement()); 21491 } 21492 if (element.hasVersionElement()) { 21493 composeString("version", element.getVersionElement()); 21494 } 21495 if (element.hasReleaseDateElement()) { 21496 composeDateTime("releaseDate", element.getReleaseDateElement()); 21497 } 21498 } 21499 21500 protected void composeCapabilityStatementCapabilityStatementImplementationComponent(String name, CapabilityStatement.CapabilityStatementImplementationComponent element) throws IOException { 21501 if (element != null) { 21502 composeElementAttributes(element); 21503 xml.enter(FHIR_NS, name); 21504 composeCapabilityStatementCapabilityStatementImplementationComponentElements(element); 21505 composeElementClose(element); 21506 xml.exit(FHIR_NS, name); 21507 } 21508 } 21509 21510 protected void composeCapabilityStatementCapabilityStatementImplementationComponentElements(CapabilityStatement.CapabilityStatementImplementationComponent element) throws IOException { 21511 composeBackboneElements(element); 21512 if (element.hasDescriptionElement()) { 21513 composeString("description", element.getDescriptionElement()); 21514 } 21515 if (element.hasUrlElement()) { 21516 composeUri("url", element.getUrlElement()); 21517 } 21518 } 21519 21520 protected void composeCapabilityStatementCapabilityStatementRestComponent(String name, CapabilityStatement.CapabilityStatementRestComponent element) throws IOException { 21521 if (element != null) { 21522 composeElementAttributes(element); 21523 xml.enter(FHIR_NS, name); 21524 composeCapabilityStatementCapabilityStatementRestComponentElements(element); 21525 composeElementClose(element); 21526 xml.exit(FHIR_NS, name); 21527 } 21528 } 21529 21530 protected void composeCapabilityStatementCapabilityStatementRestComponentElements(CapabilityStatement.CapabilityStatementRestComponent element) throws IOException { 21531 composeBackboneElements(element); 21532 if (element.hasModeElement()) 21533 composeEnumeration("mode", element.getModeElement(), new CapabilityStatement.RestfulCapabilityModeEnumFactory()); 21534 if (element.hasDocumentationElement()) { 21535 composeString("documentation", element.getDocumentationElement()); 21536 } 21537 if (element.hasSecurity()) { 21538 composeCapabilityStatementCapabilityStatementRestSecurityComponent("security", element.getSecurity()); 21539 } 21540 if (element.hasResource()) { 21541 for (CapabilityStatement.CapabilityStatementRestResourceComponent e : element.getResource()) 21542 composeCapabilityStatementCapabilityStatementRestResourceComponent("resource", e); 21543 } 21544 if (element.hasInteraction()) { 21545 for (CapabilityStatement.SystemInteractionComponent e : element.getInteraction()) 21546 composeCapabilityStatementSystemInteractionComponent("interaction", e); 21547 } 21548 if (element.hasSearchParam()) { 21549 for (CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent e : element.getSearchParam()) 21550 composeCapabilityStatementCapabilityStatementRestResourceSearchParamComponent("searchParam", e); 21551 } 21552 if (element.hasOperation()) { 21553 for (CapabilityStatement.CapabilityStatementRestOperationComponent e : element.getOperation()) 21554 composeCapabilityStatementCapabilityStatementRestOperationComponent("operation", e); 21555 } 21556 if (element.hasCompartment()) { 21557 for (UriType e : element.getCompartment()) 21558 composeUri("compartment", e); 21559 } 21560 } 21561 21562 protected void composeCapabilityStatementCapabilityStatementRestSecurityComponent(String name, CapabilityStatement.CapabilityStatementRestSecurityComponent element) throws IOException { 21563 if (element != null) { 21564 composeElementAttributes(element); 21565 xml.enter(FHIR_NS, name); 21566 composeCapabilityStatementCapabilityStatementRestSecurityComponentElements(element); 21567 composeElementClose(element); 21568 xml.exit(FHIR_NS, name); 21569 } 21570 } 21571 21572 protected void composeCapabilityStatementCapabilityStatementRestSecurityComponentElements(CapabilityStatement.CapabilityStatementRestSecurityComponent element) throws IOException { 21573 composeBackboneElements(element); 21574 if (element.hasCorsElement()) { 21575 composeBoolean("cors", element.getCorsElement()); 21576 } 21577 if (element.hasService()) { 21578 for (CodeableConcept e : element.getService()) 21579 composeCodeableConcept("service", e); 21580 } 21581 if (element.hasDescriptionElement()) { 21582 composeString("description", element.getDescriptionElement()); 21583 } 21584 if (element.hasCertificate()) { 21585 for (CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent e : element.getCertificate()) 21586 composeCapabilityStatementCapabilityStatementRestSecurityCertificateComponent("certificate", e); 21587 } 21588 } 21589 21590 protected void composeCapabilityStatementCapabilityStatementRestSecurityCertificateComponent(String name, CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent element) throws IOException { 21591 if (element != null) { 21592 composeElementAttributes(element); 21593 xml.enter(FHIR_NS, name); 21594 composeCapabilityStatementCapabilityStatementRestSecurityCertificateComponentElements(element); 21595 composeElementClose(element); 21596 xml.exit(FHIR_NS, name); 21597 } 21598 } 21599 21600 protected void composeCapabilityStatementCapabilityStatementRestSecurityCertificateComponentElements(CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent element) throws IOException { 21601 composeBackboneElements(element); 21602 if (element.hasTypeElement()) { 21603 composeCode("type", element.getTypeElement()); 21604 } 21605 if (element.hasBlobElement()) { 21606 composeBase64Binary("blob", element.getBlobElement()); 21607 } 21608 } 21609 21610 protected void composeCapabilityStatementCapabilityStatementRestResourceComponent(String name, CapabilityStatement.CapabilityStatementRestResourceComponent element) throws IOException { 21611 if (element != null) { 21612 composeElementAttributes(element); 21613 xml.enter(FHIR_NS, name); 21614 composeCapabilityStatementCapabilityStatementRestResourceComponentElements(element); 21615 composeElementClose(element); 21616 xml.exit(FHIR_NS, name); 21617 } 21618 } 21619 21620 protected void composeCapabilityStatementCapabilityStatementRestResourceComponentElements(CapabilityStatement.CapabilityStatementRestResourceComponent element) throws IOException { 21621 composeBackboneElements(element); 21622 if (element.hasTypeElement()) { 21623 composeCode("type", element.getTypeElement()); 21624 } 21625 if (element.hasProfile()) { 21626 composeReference("profile", element.getProfile()); 21627 } 21628 if (element.hasDocumentationElement()) { 21629 composeMarkdown("documentation", element.getDocumentationElement()); 21630 } 21631 if (element.hasInteraction()) { 21632 for (CapabilityStatement.ResourceInteractionComponent e : element.getInteraction()) 21633 composeCapabilityStatementResourceInteractionComponent("interaction", e); 21634 } 21635 if (element.hasVersioningElement()) 21636 composeEnumeration("versioning", element.getVersioningElement(), new CapabilityStatement.ResourceVersionPolicyEnumFactory()); 21637 if (element.hasReadHistoryElement()) { 21638 composeBoolean("readHistory", element.getReadHistoryElement()); 21639 } 21640 if (element.hasUpdateCreateElement()) { 21641 composeBoolean("updateCreate", element.getUpdateCreateElement()); 21642 } 21643 if (element.hasConditionalCreateElement()) { 21644 composeBoolean("conditionalCreate", element.getConditionalCreateElement()); 21645 } 21646 if (element.hasConditionalReadElement()) 21647 composeEnumeration("conditionalRead", element.getConditionalReadElement(), new CapabilityStatement.ConditionalReadStatusEnumFactory()); 21648 if (element.hasConditionalUpdateElement()) { 21649 composeBoolean("conditionalUpdate", element.getConditionalUpdateElement()); 21650 } 21651 if (element.hasConditionalDeleteElement()) 21652 composeEnumeration("conditionalDelete", element.getConditionalDeleteElement(), new CapabilityStatement.ConditionalDeleteStatusEnumFactory()); 21653 if (element.hasReferencePolicy()) 21654 for (Enumeration<CapabilityStatement.ReferenceHandlingPolicy> e : element.getReferencePolicy()) 21655 composeEnumeration("referencePolicy", e, new CapabilityStatement.ReferenceHandlingPolicyEnumFactory()); 21656 if (element.hasSearchInclude()) { 21657 for (StringType e : element.getSearchInclude()) 21658 composeString("searchInclude", e); 21659 } 21660 if (element.hasSearchRevInclude()) { 21661 for (StringType e : element.getSearchRevInclude()) 21662 composeString("searchRevInclude", e); 21663 } 21664 if (element.hasSearchParam()) { 21665 for (CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent e : element.getSearchParam()) 21666 composeCapabilityStatementCapabilityStatementRestResourceSearchParamComponent("searchParam", e); 21667 } 21668 } 21669 21670 protected void composeCapabilityStatementResourceInteractionComponent(String name, CapabilityStatement.ResourceInteractionComponent element) throws IOException { 21671 if (element != null) { 21672 composeElementAttributes(element); 21673 xml.enter(FHIR_NS, name); 21674 composeCapabilityStatementResourceInteractionComponentElements(element); 21675 composeElementClose(element); 21676 xml.exit(FHIR_NS, name); 21677 } 21678 } 21679 21680 protected void composeCapabilityStatementResourceInteractionComponentElements(CapabilityStatement.ResourceInteractionComponent element) throws IOException { 21681 composeBackboneElements(element); 21682 if (element.hasCodeElement()) 21683 composeEnumeration("code", element.getCodeElement(), new CapabilityStatement.TypeRestfulInteractionEnumFactory()); 21684 if (element.hasDocumentationElement()) { 21685 composeString("documentation", element.getDocumentationElement()); 21686 } 21687 } 21688 21689 protected void composeCapabilityStatementCapabilityStatementRestResourceSearchParamComponent(String name, CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent element) throws IOException { 21690 if (element != null) { 21691 composeElementAttributes(element); 21692 xml.enter(FHIR_NS, name); 21693 composeCapabilityStatementCapabilityStatementRestResourceSearchParamComponentElements(element); 21694 composeElementClose(element); 21695 xml.exit(FHIR_NS, name); 21696 } 21697 } 21698 21699 protected void composeCapabilityStatementCapabilityStatementRestResourceSearchParamComponentElements(CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent element) throws IOException { 21700 composeBackboneElements(element); 21701 if (element.hasNameElement()) { 21702 composeString("name", element.getNameElement()); 21703 } 21704 if (element.hasDefinitionElement()) { 21705 composeUri("definition", element.getDefinitionElement()); 21706 } 21707 if (element.hasTypeElement()) 21708 composeEnumeration("type", element.getTypeElement(), new Enumerations.SearchParamTypeEnumFactory()); 21709 if (element.hasDocumentationElement()) { 21710 composeString("documentation", element.getDocumentationElement()); 21711 } 21712 } 21713 21714 protected void composeCapabilityStatementSystemInteractionComponent(String name, CapabilityStatement.SystemInteractionComponent element) throws IOException { 21715 if (element != null) { 21716 composeElementAttributes(element); 21717 xml.enter(FHIR_NS, name); 21718 composeCapabilityStatementSystemInteractionComponentElements(element); 21719 composeElementClose(element); 21720 xml.exit(FHIR_NS, name); 21721 } 21722 } 21723 21724 protected void composeCapabilityStatementSystemInteractionComponentElements(CapabilityStatement.SystemInteractionComponent element) throws IOException { 21725 composeBackboneElements(element); 21726 if (element.hasCodeElement()) 21727 composeEnumeration("code", element.getCodeElement(), new CapabilityStatement.SystemRestfulInteractionEnumFactory()); 21728 if (element.hasDocumentationElement()) { 21729 composeString("documentation", element.getDocumentationElement()); 21730 } 21731 } 21732 21733 protected void composeCapabilityStatementCapabilityStatementRestOperationComponent(String name, CapabilityStatement.CapabilityStatementRestOperationComponent element) throws IOException { 21734 if (element != null) { 21735 composeElementAttributes(element); 21736 xml.enter(FHIR_NS, name); 21737 composeCapabilityStatementCapabilityStatementRestOperationComponentElements(element); 21738 composeElementClose(element); 21739 xml.exit(FHIR_NS, name); 21740 } 21741 } 21742 21743 protected void composeCapabilityStatementCapabilityStatementRestOperationComponentElements(CapabilityStatement.CapabilityStatementRestOperationComponent element) throws IOException { 21744 composeBackboneElements(element); 21745 if (element.hasNameElement()) { 21746 composeString("name", element.getNameElement()); 21747 } 21748 if (element.hasDefinition()) { 21749 composeReference("definition", element.getDefinition()); 21750 } 21751 } 21752 21753 protected void composeCapabilityStatementCapabilityStatementMessagingComponent(String name, CapabilityStatement.CapabilityStatementMessagingComponent element) throws IOException { 21754 if (element != null) { 21755 composeElementAttributes(element); 21756 xml.enter(FHIR_NS, name); 21757 composeCapabilityStatementCapabilityStatementMessagingComponentElements(element); 21758 composeElementClose(element); 21759 xml.exit(FHIR_NS, name); 21760 } 21761 } 21762 21763 protected void composeCapabilityStatementCapabilityStatementMessagingComponentElements(CapabilityStatement.CapabilityStatementMessagingComponent element) throws IOException { 21764 composeBackboneElements(element); 21765 if (element.hasEndpoint()) { 21766 for (CapabilityStatement.CapabilityStatementMessagingEndpointComponent e : element.getEndpoint()) 21767 composeCapabilityStatementCapabilityStatementMessagingEndpointComponent("endpoint", e); 21768 } 21769 if (element.hasReliableCacheElement()) { 21770 composeUnsignedInt("reliableCache", element.getReliableCacheElement()); 21771 } 21772 if (element.hasDocumentationElement()) { 21773 composeString("documentation", element.getDocumentationElement()); 21774 } 21775 if (element.hasSupportedMessage()) { 21776 for (CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent e : element.getSupportedMessage()) 21777 composeCapabilityStatementCapabilityStatementMessagingSupportedMessageComponent("supportedMessage", e); 21778 } 21779 if (element.hasEvent()) { 21780 for (CapabilityStatement.CapabilityStatementMessagingEventComponent e : element.getEvent()) 21781 composeCapabilityStatementCapabilityStatementMessagingEventComponent("event", e); 21782 } 21783 } 21784 21785 protected void composeCapabilityStatementCapabilityStatementMessagingEndpointComponent(String name, CapabilityStatement.CapabilityStatementMessagingEndpointComponent element) throws IOException { 21786 if (element != null) { 21787 composeElementAttributes(element); 21788 xml.enter(FHIR_NS, name); 21789 composeCapabilityStatementCapabilityStatementMessagingEndpointComponentElements(element); 21790 composeElementClose(element); 21791 xml.exit(FHIR_NS, name); 21792 } 21793 } 21794 21795 protected void composeCapabilityStatementCapabilityStatementMessagingEndpointComponentElements(CapabilityStatement.CapabilityStatementMessagingEndpointComponent element) throws IOException { 21796 composeBackboneElements(element); 21797 if (element.hasProtocol()) { 21798 composeCoding("protocol", element.getProtocol()); 21799 } 21800 if (element.hasAddressElement()) { 21801 composeUri("address", element.getAddressElement()); 21802 } 21803 } 21804 21805 protected void composeCapabilityStatementCapabilityStatementMessagingSupportedMessageComponent(String name, CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent element) throws IOException { 21806 if (element != null) { 21807 composeElementAttributes(element); 21808 xml.enter(FHIR_NS, name); 21809 composeCapabilityStatementCapabilityStatementMessagingSupportedMessageComponentElements(element); 21810 composeElementClose(element); 21811 xml.exit(FHIR_NS, name); 21812 } 21813 } 21814 21815 protected void composeCapabilityStatementCapabilityStatementMessagingSupportedMessageComponentElements(CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent element) throws IOException { 21816 composeBackboneElements(element); 21817 if (element.hasModeElement()) 21818 composeEnumeration("mode", element.getModeElement(), new CapabilityStatement.EventCapabilityModeEnumFactory()); 21819 if (element.hasDefinition()) { 21820 composeReference("definition", element.getDefinition()); 21821 } 21822 } 21823 21824 protected void composeCapabilityStatementCapabilityStatementMessagingEventComponent(String name, CapabilityStatement.CapabilityStatementMessagingEventComponent element) throws IOException { 21825 if (element != null) { 21826 composeElementAttributes(element); 21827 xml.enter(FHIR_NS, name); 21828 composeCapabilityStatementCapabilityStatementMessagingEventComponentElements(element); 21829 composeElementClose(element); 21830 xml.exit(FHIR_NS, name); 21831 } 21832 } 21833 21834 protected void composeCapabilityStatementCapabilityStatementMessagingEventComponentElements(CapabilityStatement.CapabilityStatementMessagingEventComponent element) throws IOException { 21835 composeBackboneElements(element); 21836 if (element.hasCode()) { 21837 composeCoding("code", element.getCode()); 21838 } 21839 if (element.hasCategoryElement()) 21840 composeEnumeration("category", element.getCategoryElement(), new CapabilityStatement.MessageSignificanceCategoryEnumFactory()); 21841 if (element.hasModeElement()) 21842 composeEnumeration("mode", element.getModeElement(), new CapabilityStatement.EventCapabilityModeEnumFactory()); 21843 if (element.hasFocusElement()) { 21844 composeCode("focus", element.getFocusElement()); 21845 } 21846 if (element.hasRequest()) { 21847 composeReference("request", element.getRequest()); 21848 } 21849 if (element.hasResponse()) { 21850 composeReference("response", element.getResponse()); 21851 } 21852 if (element.hasDocumentationElement()) { 21853 composeString("documentation", element.getDocumentationElement()); 21854 } 21855 } 21856 21857 protected void composeCapabilityStatementCapabilityStatementDocumentComponent(String name, CapabilityStatement.CapabilityStatementDocumentComponent element) throws IOException { 21858 if (element != null) { 21859 composeElementAttributes(element); 21860 xml.enter(FHIR_NS, name); 21861 composeCapabilityStatementCapabilityStatementDocumentComponentElements(element); 21862 composeElementClose(element); 21863 xml.exit(FHIR_NS, name); 21864 } 21865 } 21866 21867 protected void composeCapabilityStatementCapabilityStatementDocumentComponentElements(CapabilityStatement.CapabilityStatementDocumentComponent element) throws IOException { 21868 composeBackboneElements(element); 21869 if (element.hasModeElement()) 21870 composeEnumeration("mode", element.getModeElement(), new CapabilityStatement.DocumentModeEnumFactory()); 21871 if (element.hasDocumentationElement()) { 21872 composeString("documentation", element.getDocumentationElement()); 21873 } 21874 if (element.hasProfile()) { 21875 composeReference("profile", element.getProfile()); 21876 } 21877 } 21878 21879 protected void composeCarePlan(String name, CarePlan element) throws IOException { 21880 if (element != null) { 21881 composeDomainResourceAttributes(element); 21882 xml.enter(FHIR_NS, name); 21883 composeCarePlanElements(element); 21884 composeElementClose(element); 21885 xml.exit(FHIR_NS, name); 21886 } 21887 } 21888 21889 protected void composeCarePlanElements(CarePlan element) throws IOException { 21890 composeDomainResourceElements(element); 21891 if (element.hasIdentifier()) { 21892 for (Identifier e : element.getIdentifier()) 21893 composeIdentifier("identifier", e); 21894 } 21895 if (element.hasDefinition()) { 21896 for (Reference e : element.getDefinition()) 21897 composeReference("definition", e); 21898 } 21899 if (element.hasBasedOn()) { 21900 for (Reference e : element.getBasedOn()) 21901 composeReference("basedOn", e); 21902 } 21903 if (element.hasReplaces()) { 21904 for (Reference e : element.getReplaces()) 21905 composeReference("replaces", e); 21906 } 21907 if (element.hasPartOf()) { 21908 for (Reference e : element.getPartOf()) 21909 composeReference("partOf", e); 21910 } 21911 if (element.hasStatusElement()) 21912 composeEnumeration("status", element.getStatusElement(), new CarePlan.CarePlanStatusEnumFactory()); 21913 if (element.hasIntentElement()) 21914 composeEnumeration("intent", element.getIntentElement(), new CarePlan.CarePlanIntentEnumFactory()); 21915 if (element.hasCategory()) { 21916 for (CodeableConcept e : element.getCategory()) 21917 composeCodeableConcept("category", e); 21918 } 21919 if (element.hasTitleElement()) { 21920 composeString("title", element.getTitleElement()); 21921 } 21922 if (element.hasDescriptionElement()) { 21923 composeString("description", element.getDescriptionElement()); 21924 } 21925 if (element.hasSubject()) { 21926 composeReference("subject", element.getSubject()); 21927 } 21928 if (element.hasContext()) { 21929 composeReference("context", element.getContext()); 21930 } 21931 if (element.hasPeriod()) { 21932 composePeriod("period", element.getPeriod()); 21933 } 21934 if (element.hasAuthor()) { 21935 for (Reference e : element.getAuthor()) 21936 composeReference("author", e); 21937 } 21938 if (element.hasCareTeam()) { 21939 for (Reference e : element.getCareTeam()) 21940 composeReference("careTeam", e); 21941 } 21942 if (element.hasAddresses()) { 21943 for (Reference e : element.getAddresses()) 21944 composeReference("addresses", e); 21945 } 21946 if (element.hasSupportingInfo()) { 21947 for (Reference e : element.getSupportingInfo()) 21948 composeReference("supportingInfo", e); 21949 } 21950 if (element.hasGoal()) { 21951 for (Reference e : element.getGoal()) 21952 composeReference("goal", e); 21953 } 21954 if (element.hasActivity()) { 21955 for (CarePlan.CarePlanActivityComponent e : element.getActivity()) 21956 composeCarePlanCarePlanActivityComponent("activity", e); 21957 } 21958 if (element.hasNote()) { 21959 for (Annotation e : element.getNote()) 21960 composeAnnotation("note", e); 21961 } 21962 } 21963 21964 protected void composeCarePlanCarePlanActivityComponent(String name, CarePlan.CarePlanActivityComponent element) throws IOException { 21965 if (element != null) { 21966 composeElementAttributes(element); 21967 xml.enter(FHIR_NS, name); 21968 composeCarePlanCarePlanActivityComponentElements(element); 21969 composeElementClose(element); 21970 xml.exit(FHIR_NS, name); 21971 } 21972 } 21973 21974 protected void composeCarePlanCarePlanActivityComponentElements(CarePlan.CarePlanActivityComponent element) throws IOException { 21975 composeBackboneElements(element); 21976 if (element.hasOutcomeCodeableConcept()) { 21977 for (CodeableConcept e : element.getOutcomeCodeableConcept()) 21978 composeCodeableConcept("outcomeCodeableConcept", e); 21979 } 21980 if (element.hasOutcomeReference()) { 21981 for (Reference e : element.getOutcomeReference()) 21982 composeReference("outcomeReference", e); 21983 } 21984 if (element.hasProgress()) { 21985 for (Annotation e : element.getProgress()) 21986 composeAnnotation("progress", e); 21987 } 21988 if (element.hasReference()) { 21989 composeReference("reference", element.getReference()); 21990 } 21991 if (element.hasDetail()) { 21992 composeCarePlanCarePlanActivityDetailComponent("detail", element.getDetail()); 21993 } 21994 } 21995 21996 protected void composeCarePlanCarePlanActivityDetailComponent(String name, CarePlan.CarePlanActivityDetailComponent element) throws IOException { 21997 if (element != null) { 21998 composeElementAttributes(element); 21999 xml.enter(FHIR_NS, name); 22000 composeCarePlanCarePlanActivityDetailComponentElements(element); 22001 composeElementClose(element); 22002 xml.exit(FHIR_NS, name); 22003 } 22004 } 22005 22006 protected void composeCarePlanCarePlanActivityDetailComponentElements(CarePlan.CarePlanActivityDetailComponent element) throws IOException { 22007 composeBackboneElements(element); 22008 if (element.hasCategory()) { 22009 composeCodeableConcept("category", element.getCategory()); 22010 } 22011 if (element.hasDefinition()) { 22012 composeReference("definition", element.getDefinition()); 22013 } 22014 if (element.hasCode()) { 22015 composeCodeableConcept("code", element.getCode()); 22016 } 22017 if (element.hasReasonCode()) { 22018 for (CodeableConcept e : element.getReasonCode()) 22019 composeCodeableConcept("reasonCode", e); 22020 } 22021 if (element.hasReasonReference()) { 22022 for (Reference e : element.getReasonReference()) 22023 composeReference("reasonReference", e); 22024 } 22025 if (element.hasGoal()) { 22026 for (Reference e : element.getGoal()) 22027 composeReference("goal", e); 22028 } 22029 if (element.hasStatusElement()) 22030 composeEnumeration("status", element.getStatusElement(), new CarePlan.CarePlanActivityStatusEnumFactory()); 22031 if (element.hasStatusReasonElement()) { 22032 composeString("statusReason", element.getStatusReasonElement()); 22033 } 22034 if (element.hasProhibitedElement()) { 22035 composeBoolean("prohibited", element.getProhibitedElement()); 22036 } 22037 if (element.hasScheduled()) { 22038 composeType("scheduled", element.getScheduled()); 22039 } if (element.hasLocation()) { 22040 composeReference("location", element.getLocation()); 22041 } 22042 if (element.hasPerformer()) { 22043 for (Reference e : element.getPerformer()) 22044 composeReference("performer", e); 22045 } 22046 if (element.hasProduct()) { 22047 composeType("product", element.getProduct()); 22048 } if (element.hasDailyAmount()) { 22049 composeSimpleQuantity("dailyAmount", element.getDailyAmount()); 22050 } 22051 if (element.hasQuantity()) { 22052 composeSimpleQuantity("quantity", element.getQuantity()); 22053 } 22054 if (element.hasDescriptionElement()) { 22055 composeString("description", element.getDescriptionElement()); 22056 } 22057 } 22058 22059 protected void composeCareTeam(String name, CareTeam element) throws IOException { 22060 if (element != null) { 22061 composeDomainResourceAttributes(element); 22062 xml.enter(FHIR_NS, name); 22063 composeCareTeamElements(element); 22064 composeElementClose(element); 22065 xml.exit(FHIR_NS, name); 22066 } 22067 } 22068 22069 protected void composeCareTeamElements(CareTeam element) throws IOException { 22070 composeDomainResourceElements(element); 22071 if (element.hasIdentifier()) { 22072 for (Identifier e : element.getIdentifier()) 22073 composeIdentifier("identifier", e); 22074 } 22075 if (element.hasStatusElement()) 22076 composeEnumeration("status", element.getStatusElement(), new CareTeam.CareTeamStatusEnumFactory()); 22077 if (element.hasCategory()) { 22078 for (CodeableConcept e : element.getCategory()) 22079 composeCodeableConcept("category", e); 22080 } 22081 if (element.hasNameElement()) { 22082 composeString("name", element.getNameElement()); 22083 } 22084 if (element.hasSubject()) { 22085 composeReference("subject", element.getSubject()); 22086 } 22087 if (element.hasContext()) { 22088 composeReference("context", element.getContext()); 22089 } 22090 if (element.hasPeriod()) { 22091 composePeriod("period", element.getPeriod()); 22092 } 22093 if (element.hasParticipant()) { 22094 for (CareTeam.CareTeamParticipantComponent e : element.getParticipant()) 22095 composeCareTeamCareTeamParticipantComponent("participant", e); 22096 } 22097 if (element.hasReasonCode()) { 22098 for (CodeableConcept e : element.getReasonCode()) 22099 composeCodeableConcept("reasonCode", e); 22100 } 22101 if (element.hasReasonReference()) { 22102 for (Reference e : element.getReasonReference()) 22103 composeReference("reasonReference", e); 22104 } 22105 if (element.hasManagingOrganization()) { 22106 for (Reference e : element.getManagingOrganization()) 22107 composeReference("managingOrganization", e); 22108 } 22109 if (element.hasNote()) { 22110 for (Annotation e : element.getNote()) 22111 composeAnnotation("note", e); 22112 } 22113 } 22114 22115 protected void composeCareTeamCareTeamParticipantComponent(String name, CareTeam.CareTeamParticipantComponent element) throws IOException { 22116 if (element != null) { 22117 composeElementAttributes(element); 22118 xml.enter(FHIR_NS, name); 22119 composeCareTeamCareTeamParticipantComponentElements(element); 22120 composeElementClose(element); 22121 xml.exit(FHIR_NS, name); 22122 } 22123 } 22124 22125 protected void composeCareTeamCareTeamParticipantComponentElements(CareTeam.CareTeamParticipantComponent element) throws IOException { 22126 composeBackboneElements(element); 22127 if (element.hasRole()) { 22128 composeCodeableConcept("role", element.getRole()); 22129 } 22130 if (element.hasMember()) { 22131 composeReference("member", element.getMember()); 22132 } 22133 if (element.hasOnBehalfOf()) { 22134 composeReference("onBehalfOf", element.getOnBehalfOf()); 22135 } 22136 if (element.hasPeriod()) { 22137 composePeriod("period", element.getPeriod()); 22138 } 22139 } 22140 22141 protected void composeChargeItem(String name, ChargeItem element) throws IOException { 22142 if (element != null) { 22143 composeDomainResourceAttributes(element); 22144 xml.enter(FHIR_NS, name); 22145 composeChargeItemElements(element); 22146 composeElementClose(element); 22147 xml.exit(FHIR_NS, name); 22148 } 22149 } 22150 22151 protected void composeChargeItemElements(ChargeItem element) throws IOException { 22152 composeDomainResourceElements(element); 22153 if (element.hasIdentifier()) { 22154 composeIdentifier("identifier", element.getIdentifier()); 22155 } 22156 if (element.hasDefinition()) { 22157 for (UriType e : element.getDefinition()) 22158 composeUri("definition", e); 22159 } 22160 if (element.hasStatusElement()) 22161 composeEnumeration("status", element.getStatusElement(), new ChargeItem.ChargeItemStatusEnumFactory()); 22162 if (element.hasPartOf()) { 22163 for (Reference e : element.getPartOf()) 22164 composeReference("partOf", e); 22165 } 22166 if (element.hasCode()) { 22167 composeCodeableConcept("code", element.getCode()); 22168 } 22169 if (element.hasSubject()) { 22170 composeReference("subject", element.getSubject()); 22171 } 22172 if (element.hasContext()) { 22173 composeReference("context", element.getContext()); 22174 } 22175 if (element.hasOccurrence()) { 22176 composeType("occurrence", element.getOccurrence()); 22177 } if (element.hasParticipant()) { 22178 for (ChargeItem.ChargeItemParticipantComponent e : element.getParticipant()) 22179 composeChargeItemChargeItemParticipantComponent("participant", e); 22180 } 22181 if (element.hasPerformingOrganization()) { 22182 composeReference("performingOrganization", element.getPerformingOrganization()); 22183 } 22184 if (element.hasRequestingOrganization()) { 22185 composeReference("requestingOrganization", element.getRequestingOrganization()); 22186 } 22187 if (element.hasQuantity()) { 22188 composeQuantity("quantity", element.getQuantity()); 22189 } 22190 if (element.hasBodysite()) { 22191 for (CodeableConcept e : element.getBodysite()) 22192 composeCodeableConcept("bodysite", e); 22193 } 22194 if (element.hasFactorOverrideElement()) { 22195 composeDecimal("factorOverride", element.getFactorOverrideElement()); 22196 } 22197 if (element.hasPriceOverride()) { 22198 composeMoney("priceOverride", element.getPriceOverride()); 22199 } 22200 if (element.hasOverrideReasonElement()) { 22201 composeString("overrideReason", element.getOverrideReasonElement()); 22202 } 22203 if (element.hasEnterer()) { 22204 composeReference("enterer", element.getEnterer()); 22205 } 22206 if (element.hasEnteredDateElement()) { 22207 composeDateTime("enteredDate", element.getEnteredDateElement()); 22208 } 22209 if (element.hasReason()) { 22210 for (CodeableConcept e : element.getReason()) 22211 composeCodeableConcept("reason", e); 22212 } 22213 if (element.hasService()) { 22214 for (Reference e : element.getService()) 22215 composeReference("service", e); 22216 } 22217 if (element.hasAccount()) { 22218 for (Reference e : element.getAccount()) 22219 composeReference("account", e); 22220 } 22221 if (element.hasNote()) { 22222 for (Annotation e : element.getNote()) 22223 composeAnnotation("note", e); 22224 } 22225 if (element.hasSupportingInformation()) { 22226 for (Reference e : element.getSupportingInformation()) 22227 composeReference("supportingInformation", e); 22228 } 22229 } 22230 22231 protected void composeChargeItemChargeItemParticipantComponent(String name, ChargeItem.ChargeItemParticipantComponent element) throws IOException { 22232 if (element != null) { 22233 composeElementAttributes(element); 22234 xml.enter(FHIR_NS, name); 22235 composeChargeItemChargeItemParticipantComponentElements(element); 22236 composeElementClose(element); 22237 xml.exit(FHIR_NS, name); 22238 } 22239 } 22240 22241 protected void composeChargeItemChargeItemParticipantComponentElements(ChargeItem.ChargeItemParticipantComponent element) throws IOException { 22242 composeBackboneElements(element); 22243 if (element.hasRole()) { 22244 composeCodeableConcept("role", element.getRole()); 22245 } 22246 if (element.hasActor()) { 22247 composeReference("actor", element.getActor()); 22248 } 22249 } 22250 22251 protected void composeClaim(String name, Claim element) throws IOException { 22252 if (element != null) { 22253 composeDomainResourceAttributes(element); 22254 xml.enter(FHIR_NS, name); 22255 composeClaimElements(element); 22256 composeElementClose(element); 22257 xml.exit(FHIR_NS, name); 22258 } 22259 } 22260 22261 protected void composeClaimElements(Claim element) throws IOException { 22262 composeDomainResourceElements(element); 22263 if (element.hasIdentifier()) { 22264 for (Identifier e : element.getIdentifier()) 22265 composeIdentifier("identifier", e); 22266 } 22267 if (element.hasStatusElement()) 22268 composeEnumeration("status", element.getStatusElement(), new Claim.ClaimStatusEnumFactory()); 22269 if (element.hasType()) { 22270 composeCodeableConcept("type", element.getType()); 22271 } 22272 if (element.hasSubType()) { 22273 for (CodeableConcept e : element.getSubType()) 22274 composeCodeableConcept("subType", e); 22275 } 22276 if (element.hasUseElement()) 22277 composeEnumeration("use", element.getUseElement(), new Claim.UseEnumFactory()); 22278 if (element.hasPatient()) { 22279 composeReference("patient", element.getPatient()); 22280 } 22281 if (element.hasBillablePeriod()) { 22282 composePeriod("billablePeriod", element.getBillablePeriod()); 22283 } 22284 if (element.hasCreatedElement()) { 22285 composeDateTime("created", element.getCreatedElement()); 22286 } 22287 if (element.hasEnterer()) { 22288 composeReference("enterer", element.getEnterer()); 22289 } 22290 if (element.hasInsurer()) { 22291 composeReference("insurer", element.getInsurer()); 22292 } 22293 if (element.hasProvider()) { 22294 composeReference("provider", element.getProvider()); 22295 } 22296 if (element.hasOrganization()) { 22297 composeReference("organization", element.getOrganization()); 22298 } 22299 if (element.hasPriority()) { 22300 composeCodeableConcept("priority", element.getPriority()); 22301 } 22302 if (element.hasFundsReserve()) { 22303 composeCodeableConcept("fundsReserve", element.getFundsReserve()); 22304 } 22305 if (element.hasRelated()) { 22306 for (Claim.RelatedClaimComponent e : element.getRelated()) 22307 composeClaimRelatedClaimComponent("related", e); 22308 } 22309 if (element.hasPrescription()) { 22310 composeReference("prescription", element.getPrescription()); 22311 } 22312 if (element.hasOriginalPrescription()) { 22313 composeReference("originalPrescription", element.getOriginalPrescription()); 22314 } 22315 if (element.hasPayee()) { 22316 composeClaimPayeeComponent("payee", element.getPayee()); 22317 } 22318 if (element.hasReferral()) { 22319 composeReference("referral", element.getReferral()); 22320 } 22321 if (element.hasFacility()) { 22322 composeReference("facility", element.getFacility()); 22323 } 22324 if (element.hasCareTeam()) { 22325 for (Claim.CareTeamComponent e : element.getCareTeam()) 22326 composeClaimCareTeamComponent("careTeam", e); 22327 } 22328 if (element.hasInformation()) { 22329 for (Claim.SpecialConditionComponent e : element.getInformation()) 22330 composeClaimSpecialConditionComponent("information", e); 22331 } 22332 if (element.hasDiagnosis()) { 22333 for (Claim.DiagnosisComponent e : element.getDiagnosis()) 22334 composeClaimDiagnosisComponent("diagnosis", e); 22335 } 22336 if (element.hasProcedure()) { 22337 for (Claim.ProcedureComponent e : element.getProcedure()) 22338 composeClaimProcedureComponent("procedure", e); 22339 } 22340 if (element.hasInsurance()) { 22341 for (Claim.InsuranceComponent e : element.getInsurance()) 22342 composeClaimInsuranceComponent("insurance", e); 22343 } 22344 if (element.hasAccident()) { 22345 composeClaimAccidentComponent("accident", element.getAccident()); 22346 } 22347 if (element.hasEmploymentImpacted()) { 22348 composePeriod("employmentImpacted", element.getEmploymentImpacted()); 22349 } 22350 if (element.hasHospitalization()) { 22351 composePeriod("hospitalization", element.getHospitalization()); 22352 } 22353 if (element.hasItem()) { 22354 for (Claim.ItemComponent e : element.getItem()) 22355 composeClaimItemComponent("item", e); 22356 } 22357 if (element.hasTotal()) { 22358 composeMoney("total", element.getTotal()); 22359 } 22360 } 22361 22362 protected void composeClaimRelatedClaimComponent(String name, Claim.RelatedClaimComponent element) throws IOException { 22363 if (element != null) { 22364 composeElementAttributes(element); 22365 xml.enter(FHIR_NS, name); 22366 composeClaimRelatedClaimComponentElements(element); 22367 composeElementClose(element); 22368 xml.exit(FHIR_NS, name); 22369 } 22370 } 22371 22372 protected void composeClaimRelatedClaimComponentElements(Claim.RelatedClaimComponent element) throws IOException { 22373 composeBackboneElements(element); 22374 if (element.hasClaim()) { 22375 composeReference("claim", element.getClaim()); 22376 } 22377 if (element.hasRelationship()) { 22378 composeCodeableConcept("relationship", element.getRelationship()); 22379 } 22380 if (element.hasReference()) { 22381 composeIdentifier("reference", element.getReference()); 22382 } 22383 } 22384 22385 protected void composeClaimPayeeComponent(String name, Claim.PayeeComponent element) throws IOException { 22386 if (element != null) { 22387 composeElementAttributes(element); 22388 xml.enter(FHIR_NS, name); 22389 composeClaimPayeeComponentElements(element); 22390 composeElementClose(element); 22391 xml.exit(FHIR_NS, name); 22392 } 22393 } 22394 22395 protected void composeClaimPayeeComponentElements(Claim.PayeeComponent element) throws IOException { 22396 composeBackboneElements(element); 22397 if (element.hasType()) { 22398 composeCodeableConcept("type", element.getType()); 22399 } 22400 if (element.hasResourceType()) { 22401 composeCoding("resourceType", element.getResourceType()); 22402 } 22403 if (element.hasParty()) { 22404 composeReference("party", element.getParty()); 22405 } 22406 } 22407 22408 protected void composeClaimCareTeamComponent(String name, Claim.CareTeamComponent element) throws IOException { 22409 if (element != null) { 22410 composeElementAttributes(element); 22411 xml.enter(FHIR_NS, name); 22412 composeClaimCareTeamComponentElements(element); 22413 composeElementClose(element); 22414 xml.exit(FHIR_NS, name); 22415 } 22416 } 22417 22418 protected void composeClaimCareTeamComponentElements(Claim.CareTeamComponent element) throws IOException { 22419 composeBackboneElements(element); 22420 if (element.hasSequenceElement()) { 22421 composePositiveInt("sequence", element.getSequenceElement()); 22422 } 22423 if (element.hasProvider()) { 22424 composeReference("provider", element.getProvider()); 22425 } 22426 if (element.hasResponsibleElement()) { 22427 composeBoolean("responsible", element.getResponsibleElement()); 22428 } 22429 if (element.hasRole()) { 22430 composeCodeableConcept("role", element.getRole()); 22431 } 22432 if (element.hasQualification()) { 22433 composeCodeableConcept("qualification", element.getQualification()); 22434 } 22435 } 22436 22437 protected void composeClaimSpecialConditionComponent(String name, Claim.SpecialConditionComponent element) throws IOException { 22438 if (element != null) { 22439 composeElementAttributes(element); 22440 xml.enter(FHIR_NS, name); 22441 composeClaimSpecialConditionComponentElements(element); 22442 composeElementClose(element); 22443 xml.exit(FHIR_NS, name); 22444 } 22445 } 22446 22447 protected void composeClaimSpecialConditionComponentElements(Claim.SpecialConditionComponent element) throws IOException { 22448 composeBackboneElements(element); 22449 if (element.hasSequenceElement()) { 22450 composePositiveInt("sequence", element.getSequenceElement()); 22451 } 22452 if (element.hasCategory()) { 22453 composeCodeableConcept("category", element.getCategory()); 22454 } 22455 if (element.hasCode()) { 22456 composeCodeableConcept("code", element.getCode()); 22457 } 22458 if (element.hasTiming()) { 22459 composeType("timing", element.getTiming()); 22460 } if (element.hasValue()) { 22461 composeType("value", element.getValue()); 22462 } if (element.hasReason()) { 22463 composeCodeableConcept("reason", element.getReason()); 22464 } 22465 } 22466 22467 protected void composeClaimDiagnosisComponent(String name, Claim.DiagnosisComponent element) throws IOException { 22468 if (element != null) { 22469 composeElementAttributes(element); 22470 xml.enter(FHIR_NS, name); 22471 composeClaimDiagnosisComponentElements(element); 22472 composeElementClose(element); 22473 xml.exit(FHIR_NS, name); 22474 } 22475 } 22476 22477 protected void composeClaimDiagnosisComponentElements(Claim.DiagnosisComponent element) throws IOException { 22478 composeBackboneElements(element); 22479 if (element.hasSequenceElement()) { 22480 composePositiveInt("sequence", element.getSequenceElement()); 22481 } 22482 if (element.hasDiagnosis()) { 22483 composeType("diagnosis", element.getDiagnosis()); 22484 } if (element.hasType()) { 22485 for (CodeableConcept e : element.getType()) 22486 composeCodeableConcept("type", e); 22487 } 22488 if (element.hasPackageCode()) { 22489 composeCodeableConcept("packageCode", element.getPackageCode()); 22490 } 22491 } 22492 22493 protected void composeClaimProcedureComponent(String name, Claim.ProcedureComponent element) throws IOException { 22494 if (element != null) { 22495 composeElementAttributes(element); 22496 xml.enter(FHIR_NS, name); 22497 composeClaimProcedureComponentElements(element); 22498 composeElementClose(element); 22499 xml.exit(FHIR_NS, name); 22500 } 22501 } 22502 22503 protected void composeClaimProcedureComponentElements(Claim.ProcedureComponent element) throws IOException { 22504 composeBackboneElements(element); 22505 if (element.hasSequenceElement()) { 22506 composePositiveInt("sequence", element.getSequenceElement()); 22507 } 22508 if (element.hasDateElement()) { 22509 composeDateTime("date", element.getDateElement()); 22510 } 22511 if (element.hasProcedure()) { 22512 composeType("procedure", element.getProcedure()); 22513 } } 22514 22515 protected void composeClaimInsuranceComponent(String name, Claim.InsuranceComponent element) throws IOException { 22516 if (element != null) { 22517 composeElementAttributes(element); 22518 xml.enter(FHIR_NS, name); 22519 composeClaimInsuranceComponentElements(element); 22520 composeElementClose(element); 22521 xml.exit(FHIR_NS, name); 22522 } 22523 } 22524 22525 protected void composeClaimInsuranceComponentElements(Claim.InsuranceComponent element) throws IOException { 22526 composeBackboneElements(element); 22527 if (element.hasSequenceElement()) { 22528 composePositiveInt("sequence", element.getSequenceElement()); 22529 } 22530 if (element.hasFocalElement()) { 22531 composeBoolean("focal", element.getFocalElement()); 22532 } 22533 if (element.hasCoverage()) { 22534 composeReference("coverage", element.getCoverage()); 22535 } 22536 if (element.hasBusinessArrangementElement()) { 22537 composeString("businessArrangement", element.getBusinessArrangementElement()); 22538 } 22539 if (element.hasPreAuthRef()) { 22540 for (StringType e : element.getPreAuthRef()) 22541 composeString("preAuthRef", e); 22542 } 22543 if (element.hasClaimResponse()) { 22544 composeReference("claimResponse", element.getClaimResponse()); 22545 } 22546 } 22547 22548 protected void composeClaimAccidentComponent(String name, Claim.AccidentComponent element) throws IOException { 22549 if (element != null) { 22550 composeElementAttributes(element); 22551 xml.enter(FHIR_NS, name); 22552 composeClaimAccidentComponentElements(element); 22553 composeElementClose(element); 22554 xml.exit(FHIR_NS, name); 22555 } 22556 } 22557 22558 protected void composeClaimAccidentComponentElements(Claim.AccidentComponent element) throws IOException { 22559 composeBackboneElements(element); 22560 if (element.hasDateElement()) { 22561 composeDate("date", element.getDateElement()); 22562 } 22563 if (element.hasType()) { 22564 composeCodeableConcept("type", element.getType()); 22565 } 22566 if (element.hasLocation()) { 22567 composeType("location", element.getLocation()); 22568 } } 22569 22570 protected void composeClaimItemComponent(String name, Claim.ItemComponent element) throws IOException { 22571 if (element != null) { 22572 composeElementAttributes(element); 22573 xml.enter(FHIR_NS, name); 22574 composeClaimItemComponentElements(element); 22575 composeElementClose(element); 22576 xml.exit(FHIR_NS, name); 22577 } 22578 } 22579 22580 protected void composeClaimItemComponentElements(Claim.ItemComponent element) throws IOException { 22581 composeBackboneElements(element); 22582 if (element.hasSequenceElement()) { 22583 composePositiveInt("sequence", element.getSequenceElement()); 22584 } 22585 if (element.hasCareTeamLinkId()) { 22586 for (PositiveIntType e : element.getCareTeamLinkId()) 22587 composePositiveInt("careTeamLinkId", e); 22588 } 22589 if (element.hasDiagnosisLinkId()) { 22590 for (PositiveIntType e : element.getDiagnosisLinkId()) 22591 composePositiveInt("diagnosisLinkId", e); 22592 } 22593 if (element.hasProcedureLinkId()) { 22594 for (PositiveIntType e : element.getProcedureLinkId()) 22595 composePositiveInt("procedureLinkId", e); 22596 } 22597 if (element.hasInformationLinkId()) { 22598 for (PositiveIntType e : element.getInformationLinkId()) 22599 composePositiveInt("informationLinkId", e); 22600 } 22601 if (element.hasRevenue()) { 22602 composeCodeableConcept("revenue", element.getRevenue()); 22603 } 22604 if (element.hasCategory()) { 22605 composeCodeableConcept("category", element.getCategory()); 22606 } 22607 if (element.hasService()) { 22608 composeCodeableConcept("service", element.getService()); 22609 } 22610 if (element.hasModifier()) { 22611 for (CodeableConcept e : element.getModifier()) 22612 composeCodeableConcept("modifier", e); 22613 } 22614 if (element.hasProgramCode()) { 22615 for (CodeableConcept e : element.getProgramCode()) 22616 composeCodeableConcept("programCode", e); 22617 } 22618 if (element.hasServiced()) { 22619 composeType("serviced", element.getServiced()); 22620 } if (element.hasLocation()) { 22621 composeType("location", element.getLocation()); 22622 } if (element.hasQuantity()) { 22623 composeSimpleQuantity("quantity", element.getQuantity()); 22624 } 22625 if (element.hasUnitPrice()) { 22626 composeMoney("unitPrice", element.getUnitPrice()); 22627 } 22628 if (element.hasFactorElement()) { 22629 composeDecimal("factor", element.getFactorElement()); 22630 } 22631 if (element.hasNet()) { 22632 composeMoney("net", element.getNet()); 22633 } 22634 if (element.hasUdi()) { 22635 for (Reference e : element.getUdi()) 22636 composeReference("udi", e); 22637 } 22638 if (element.hasBodySite()) { 22639 composeCodeableConcept("bodySite", element.getBodySite()); 22640 } 22641 if (element.hasSubSite()) { 22642 for (CodeableConcept e : element.getSubSite()) 22643 composeCodeableConcept("subSite", e); 22644 } 22645 if (element.hasEncounter()) { 22646 for (Reference e : element.getEncounter()) 22647 composeReference("encounter", e); 22648 } 22649 if (element.hasDetail()) { 22650 for (Claim.DetailComponent e : element.getDetail()) 22651 composeClaimDetailComponent("detail", e); 22652 } 22653 } 22654 22655 protected void composeClaimDetailComponent(String name, Claim.DetailComponent element) throws IOException { 22656 if (element != null) { 22657 composeElementAttributes(element); 22658 xml.enter(FHIR_NS, name); 22659 composeClaimDetailComponentElements(element); 22660 composeElementClose(element); 22661 xml.exit(FHIR_NS, name); 22662 } 22663 } 22664 22665 protected void composeClaimDetailComponentElements(Claim.DetailComponent element) throws IOException { 22666 composeBackboneElements(element); 22667 if (element.hasSequenceElement()) { 22668 composePositiveInt("sequence", element.getSequenceElement()); 22669 } 22670 if (element.hasRevenue()) { 22671 composeCodeableConcept("revenue", element.getRevenue()); 22672 } 22673 if (element.hasCategory()) { 22674 composeCodeableConcept("category", element.getCategory()); 22675 } 22676 if (element.hasService()) { 22677 composeCodeableConcept("service", element.getService()); 22678 } 22679 if (element.hasModifier()) { 22680 for (CodeableConcept e : element.getModifier()) 22681 composeCodeableConcept("modifier", e); 22682 } 22683 if (element.hasProgramCode()) { 22684 for (CodeableConcept e : element.getProgramCode()) 22685 composeCodeableConcept("programCode", e); 22686 } 22687 if (element.hasQuantity()) { 22688 composeSimpleQuantity("quantity", element.getQuantity()); 22689 } 22690 if (element.hasUnitPrice()) { 22691 composeMoney("unitPrice", element.getUnitPrice()); 22692 } 22693 if (element.hasFactorElement()) { 22694 composeDecimal("factor", element.getFactorElement()); 22695 } 22696 if (element.hasNet()) { 22697 composeMoney("net", element.getNet()); 22698 } 22699 if (element.hasUdi()) { 22700 for (Reference e : element.getUdi()) 22701 composeReference("udi", e); 22702 } 22703 if (element.hasSubDetail()) { 22704 for (Claim.SubDetailComponent e : element.getSubDetail()) 22705 composeClaimSubDetailComponent("subDetail", e); 22706 } 22707 } 22708 22709 protected void composeClaimSubDetailComponent(String name, Claim.SubDetailComponent element) throws IOException { 22710 if (element != null) { 22711 composeElementAttributes(element); 22712 xml.enter(FHIR_NS, name); 22713 composeClaimSubDetailComponentElements(element); 22714 composeElementClose(element); 22715 xml.exit(FHIR_NS, name); 22716 } 22717 } 22718 22719 protected void composeClaimSubDetailComponentElements(Claim.SubDetailComponent element) throws IOException { 22720 composeBackboneElements(element); 22721 if (element.hasSequenceElement()) { 22722 composePositiveInt("sequence", element.getSequenceElement()); 22723 } 22724 if (element.hasRevenue()) { 22725 composeCodeableConcept("revenue", element.getRevenue()); 22726 } 22727 if (element.hasCategory()) { 22728 composeCodeableConcept("category", element.getCategory()); 22729 } 22730 if (element.hasService()) { 22731 composeCodeableConcept("service", element.getService()); 22732 } 22733 if (element.hasModifier()) { 22734 for (CodeableConcept e : element.getModifier()) 22735 composeCodeableConcept("modifier", e); 22736 } 22737 if (element.hasProgramCode()) { 22738 for (CodeableConcept e : element.getProgramCode()) 22739 composeCodeableConcept("programCode", e); 22740 } 22741 if (element.hasQuantity()) { 22742 composeSimpleQuantity("quantity", element.getQuantity()); 22743 } 22744 if (element.hasUnitPrice()) { 22745 composeMoney("unitPrice", element.getUnitPrice()); 22746 } 22747 if (element.hasFactorElement()) { 22748 composeDecimal("factor", element.getFactorElement()); 22749 } 22750 if (element.hasNet()) { 22751 composeMoney("net", element.getNet()); 22752 } 22753 if (element.hasUdi()) { 22754 for (Reference e : element.getUdi()) 22755 composeReference("udi", e); 22756 } 22757 } 22758 22759 protected void composeClaimResponse(String name, ClaimResponse element) throws IOException { 22760 if (element != null) { 22761 composeDomainResourceAttributes(element); 22762 xml.enter(FHIR_NS, name); 22763 composeClaimResponseElements(element); 22764 composeElementClose(element); 22765 xml.exit(FHIR_NS, name); 22766 } 22767 } 22768 22769 protected void composeClaimResponseElements(ClaimResponse element) throws IOException { 22770 composeDomainResourceElements(element); 22771 if (element.hasIdentifier()) { 22772 for (Identifier e : element.getIdentifier()) 22773 composeIdentifier("identifier", e); 22774 } 22775 if (element.hasStatusElement()) 22776 composeEnumeration("status", element.getStatusElement(), new ClaimResponse.ClaimResponseStatusEnumFactory()); 22777 if (element.hasPatient()) { 22778 composeReference("patient", element.getPatient()); 22779 } 22780 if (element.hasCreatedElement()) { 22781 composeDateTime("created", element.getCreatedElement()); 22782 } 22783 if (element.hasInsurer()) { 22784 composeReference("insurer", element.getInsurer()); 22785 } 22786 if (element.hasRequestProvider()) { 22787 composeReference("requestProvider", element.getRequestProvider()); 22788 } 22789 if (element.hasRequestOrganization()) { 22790 composeReference("requestOrganization", element.getRequestOrganization()); 22791 } 22792 if (element.hasRequest()) { 22793 composeReference("request", element.getRequest()); 22794 } 22795 if (element.hasOutcome()) { 22796 composeCodeableConcept("outcome", element.getOutcome()); 22797 } 22798 if (element.hasDispositionElement()) { 22799 composeString("disposition", element.getDispositionElement()); 22800 } 22801 if (element.hasPayeeType()) { 22802 composeCodeableConcept("payeeType", element.getPayeeType()); 22803 } 22804 if (element.hasItem()) { 22805 for (ClaimResponse.ItemComponent e : element.getItem()) 22806 composeClaimResponseItemComponent("item", e); 22807 } 22808 if (element.hasAddItem()) { 22809 for (ClaimResponse.AddedItemComponent e : element.getAddItem()) 22810 composeClaimResponseAddedItemComponent("addItem", e); 22811 } 22812 if (element.hasError()) { 22813 for (ClaimResponse.ErrorComponent e : element.getError()) 22814 composeClaimResponseErrorComponent("error", e); 22815 } 22816 if (element.hasTotalCost()) { 22817 composeMoney("totalCost", element.getTotalCost()); 22818 } 22819 if (element.hasUnallocDeductable()) { 22820 composeMoney("unallocDeductable", element.getUnallocDeductable()); 22821 } 22822 if (element.hasTotalBenefit()) { 22823 composeMoney("totalBenefit", element.getTotalBenefit()); 22824 } 22825 if (element.hasPayment()) { 22826 composeClaimResponsePaymentComponent("payment", element.getPayment()); 22827 } 22828 if (element.hasReserved()) { 22829 composeCoding("reserved", element.getReserved()); 22830 } 22831 if (element.hasForm()) { 22832 composeCodeableConcept("form", element.getForm()); 22833 } 22834 if (element.hasProcessNote()) { 22835 for (ClaimResponse.NoteComponent e : element.getProcessNote()) 22836 composeClaimResponseNoteComponent("processNote", e); 22837 } 22838 if (element.hasCommunicationRequest()) { 22839 for (Reference e : element.getCommunicationRequest()) 22840 composeReference("communicationRequest", e); 22841 } 22842 if (element.hasInsurance()) { 22843 for (ClaimResponse.InsuranceComponent e : element.getInsurance()) 22844 composeClaimResponseInsuranceComponent("insurance", e); 22845 } 22846 } 22847 22848 protected void composeClaimResponseItemComponent(String name, ClaimResponse.ItemComponent element) throws IOException { 22849 if (element != null) { 22850 composeElementAttributes(element); 22851 xml.enter(FHIR_NS, name); 22852 composeClaimResponseItemComponentElements(element); 22853 composeElementClose(element); 22854 xml.exit(FHIR_NS, name); 22855 } 22856 } 22857 22858 protected void composeClaimResponseItemComponentElements(ClaimResponse.ItemComponent element) throws IOException { 22859 composeBackboneElements(element); 22860 if (element.hasSequenceLinkIdElement()) { 22861 composePositiveInt("sequenceLinkId", element.getSequenceLinkIdElement()); 22862 } 22863 if (element.hasNoteNumber()) { 22864 for (PositiveIntType e : element.getNoteNumber()) 22865 composePositiveInt("noteNumber", e); 22866 } 22867 if (element.hasAdjudication()) { 22868 for (ClaimResponse.AdjudicationComponent e : element.getAdjudication()) 22869 composeClaimResponseAdjudicationComponent("adjudication", e); 22870 } 22871 if (element.hasDetail()) { 22872 for (ClaimResponse.ItemDetailComponent e : element.getDetail()) 22873 composeClaimResponseItemDetailComponent("detail", e); 22874 } 22875 } 22876 22877 protected void composeClaimResponseAdjudicationComponent(String name, ClaimResponse.AdjudicationComponent element) throws IOException { 22878 if (element != null) { 22879 composeElementAttributes(element); 22880 xml.enter(FHIR_NS, name); 22881 composeClaimResponseAdjudicationComponentElements(element); 22882 composeElementClose(element); 22883 xml.exit(FHIR_NS, name); 22884 } 22885 } 22886 22887 protected void composeClaimResponseAdjudicationComponentElements(ClaimResponse.AdjudicationComponent element) throws IOException { 22888 composeBackboneElements(element); 22889 if (element.hasCategory()) { 22890 composeCodeableConcept("category", element.getCategory()); 22891 } 22892 if (element.hasReason()) { 22893 composeCodeableConcept("reason", element.getReason()); 22894 } 22895 if (element.hasAmount()) { 22896 composeMoney("amount", element.getAmount()); 22897 } 22898 if (element.hasValueElement()) { 22899 composeDecimal("value", element.getValueElement()); 22900 } 22901 } 22902 22903 protected void composeClaimResponseItemDetailComponent(String name, ClaimResponse.ItemDetailComponent element) throws IOException { 22904 if (element != null) { 22905 composeElementAttributes(element); 22906 xml.enter(FHIR_NS, name); 22907 composeClaimResponseItemDetailComponentElements(element); 22908 composeElementClose(element); 22909 xml.exit(FHIR_NS, name); 22910 } 22911 } 22912 22913 protected void composeClaimResponseItemDetailComponentElements(ClaimResponse.ItemDetailComponent element) throws IOException { 22914 composeBackboneElements(element); 22915 if (element.hasSequenceLinkIdElement()) { 22916 composePositiveInt("sequenceLinkId", element.getSequenceLinkIdElement()); 22917 } 22918 if (element.hasNoteNumber()) { 22919 for (PositiveIntType e : element.getNoteNumber()) 22920 composePositiveInt("noteNumber", e); 22921 } 22922 if (element.hasAdjudication()) { 22923 for (ClaimResponse.AdjudicationComponent e : element.getAdjudication()) 22924 composeClaimResponseAdjudicationComponent("adjudication", e); 22925 } 22926 if (element.hasSubDetail()) { 22927 for (ClaimResponse.SubDetailComponent e : element.getSubDetail()) 22928 composeClaimResponseSubDetailComponent("subDetail", e); 22929 } 22930 } 22931 22932 protected void composeClaimResponseSubDetailComponent(String name, ClaimResponse.SubDetailComponent element) throws IOException { 22933 if (element != null) { 22934 composeElementAttributes(element); 22935 xml.enter(FHIR_NS, name); 22936 composeClaimResponseSubDetailComponentElements(element); 22937 composeElementClose(element); 22938 xml.exit(FHIR_NS, name); 22939 } 22940 } 22941 22942 protected void composeClaimResponseSubDetailComponentElements(ClaimResponse.SubDetailComponent element) throws IOException { 22943 composeBackboneElements(element); 22944 if (element.hasSequenceLinkIdElement()) { 22945 composePositiveInt("sequenceLinkId", element.getSequenceLinkIdElement()); 22946 } 22947 if (element.hasNoteNumber()) { 22948 for (PositiveIntType e : element.getNoteNumber()) 22949 composePositiveInt("noteNumber", e); 22950 } 22951 if (element.hasAdjudication()) { 22952 for (ClaimResponse.AdjudicationComponent e : element.getAdjudication()) 22953 composeClaimResponseAdjudicationComponent("adjudication", e); 22954 } 22955 } 22956 22957 protected void composeClaimResponseAddedItemComponent(String name, ClaimResponse.AddedItemComponent element) throws IOException { 22958 if (element != null) { 22959 composeElementAttributes(element); 22960 xml.enter(FHIR_NS, name); 22961 composeClaimResponseAddedItemComponentElements(element); 22962 composeElementClose(element); 22963 xml.exit(FHIR_NS, name); 22964 } 22965 } 22966 22967 protected void composeClaimResponseAddedItemComponentElements(ClaimResponse.AddedItemComponent element) throws IOException { 22968 composeBackboneElements(element); 22969 if (element.hasSequenceLinkId()) { 22970 for (PositiveIntType e : element.getSequenceLinkId()) 22971 composePositiveInt("sequenceLinkId", e); 22972 } 22973 if (element.hasRevenue()) { 22974 composeCodeableConcept("revenue", element.getRevenue()); 22975 } 22976 if (element.hasCategory()) { 22977 composeCodeableConcept("category", element.getCategory()); 22978 } 22979 if (element.hasService()) { 22980 composeCodeableConcept("service", element.getService()); 22981 } 22982 if (element.hasModifier()) { 22983 for (CodeableConcept e : element.getModifier()) 22984 composeCodeableConcept("modifier", e); 22985 } 22986 if (element.hasFee()) { 22987 composeMoney("fee", element.getFee()); 22988 } 22989 if (element.hasNoteNumber()) { 22990 for (PositiveIntType e : element.getNoteNumber()) 22991 composePositiveInt("noteNumber", e); 22992 } 22993 if (element.hasAdjudication()) { 22994 for (ClaimResponse.AdjudicationComponent e : element.getAdjudication()) 22995 composeClaimResponseAdjudicationComponent("adjudication", e); 22996 } 22997 if (element.hasDetail()) { 22998 for (ClaimResponse.AddedItemsDetailComponent e : element.getDetail()) 22999 composeClaimResponseAddedItemsDetailComponent("detail", e); 23000 } 23001 } 23002 23003 protected void composeClaimResponseAddedItemsDetailComponent(String name, ClaimResponse.AddedItemsDetailComponent element) throws IOException { 23004 if (element != null) { 23005 composeElementAttributes(element); 23006 xml.enter(FHIR_NS, name); 23007 composeClaimResponseAddedItemsDetailComponentElements(element); 23008 composeElementClose(element); 23009 xml.exit(FHIR_NS, name); 23010 } 23011 } 23012 23013 protected void composeClaimResponseAddedItemsDetailComponentElements(ClaimResponse.AddedItemsDetailComponent element) throws IOException { 23014 composeBackboneElements(element); 23015 if (element.hasRevenue()) { 23016 composeCodeableConcept("revenue", element.getRevenue()); 23017 } 23018 if (element.hasCategory()) { 23019 composeCodeableConcept("category", element.getCategory()); 23020 } 23021 if (element.hasService()) { 23022 composeCodeableConcept("service", element.getService()); 23023 } 23024 if (element.hasModifier()) { 23025 for (CodeableConcept e : element.getModifier()) 23026 composeCodeableConcept("modifier", e); 23027 } 23028 if (element.hasFee()) { 23029 composeMoney("fee", element.getFee()); 23030 } 23031 if (element.hasNoteNumber()) { 23032 for (PositiveIntType e : element.getNoteNumber()) 23033 composePositiveInt("noteNumber", e); 23034 } 23035 if (element.hasAdjudication()) { 23036 for (ClaimResponse.AdjudicationComponent e : element.getAdjudication()) 23037 composeClaimResponseAdjudicationComponent("adjudication", e); 23038 } 23039 } 23040 23041 protected void composeClaimResponseErrorComponent(String name, ClaimResponse.ErrorComponent element) throws IOException { 23042 if (element != null) { 23043 composeElementAttributes(element); 23044 xml.enter(FHIR_NS, name); 23045 composeClaimResponseErrorComponentElements(element); 23046 composeElementClose(element); 23047 xml.exit(FHIR_NS, name); 23048 } 23049 } 23050 23051 protected void composeClaimResponseErrorComponentElements(ClaimResponse.ErrorComponent element) throws IOException { 23052 composeBackboneElements(element); 23053 if (element.hasSequenceLinkIdElement()) { 23054 composePositiveInt("sequenceLinkId", element.getSequenceLinkIdElement()); 23055 } 23056 if (element.hasDetailSequenceLinkIdElement()) { 23057 composePositiveInt("detailSequenceLinkId", element.getDetailSequenceLinkIdElement()); 23058 } 23059 if (element.hasSubdetailSequenceLinkIdElement()) { 23060 composePositiveInt("subdetailSequenceLinkId", element.getSubdetailSequenceLinkIdElement()); 23061 } 23062 if (element.hasCode()) { 23063 composeCodeableConcept("code", element.getCode()); 23064 } 23065 } 23066 23067 protected void composeClaimResponsePaymentComponent(String name, ClaimResponse.PaymentComponent element) throws IOException { 23068 if (element != null) { 23069 composeElementAttributes(element); 23070 xml.enter(FHIR_NS, name); 23071 composeClaimResponsePaymentComponentElements(element); 23072 composeElementClose(element); 23073 xml.exit(FHIR_NS, name); 23074 } 23075 } 23076 23077 protected void composeClaimResponsePaymentComponentElements(ClaimResponse.PaymentComponent element) throws IOException { 23078 composeBackboneElements(element); 23079 if (element.hasType()) { 23080 composeCodeableConcept("type", element.getType()); 23081 } 23082 if (element.hasAdjustment()) { 23083 composeMoney("adjustment", element.getAdjustment()); 23084 } 23085 if (element.hasAdjustmentReason()) { 23086 composeCodeableConcept("adjustmentReason", element.getAdjustmentReason()); 23087 } 23088 if (element.hasDateElement()) { 23089 composeDate("date", element.getDateElement()); 23090 } 23091 if (element.hasAmount()) { 23092 composeMoney("amount", element.getAmount()); 23093 } 23094 if (element.hasIdentifier()) { 23095 composeIdentifier("identifier", element.getIdentifier()); 23096 } 23097 } 23098 23099 protected void composeClaimResponseNoteComponent(String name, ClaimResponse.NoteComponent element) throws IOException { 23100 if (element != null) { 23101 composeElementAttributes(element); 23102 xml.enter(FHIR_NS, name); 23103 composeClaimResponseNoteComponentElements(element); 23104 composeElementClose(element); 23105 xml.exit(FHIR_NS, name); 23106 } 23107 } 23108 23109 protected void composeClaimResponseNoteComponentElements(ClaimResponse.NoteComponent element) throws IOException { 23110 composeBackboneElements(element); 23111 if (element.hasNumberElement()) { 23112 composePositiveInt("number", element.getNumberElement()); 23113 } 23114 if (element.hasType()) { 23115 composeCodeableConcept("type", element.getType()); 23116 } 23117 if (element.hasTextElement()) { 23118 composeString("text", element.getTextElement()); 23119 } 23120 if (element.hasLanguage()) { 23121 composeCodeableConcept("language", element.getLanguage()); 23122 } 23123 } 23124 23125 protected void composeClaimResponseInsuranceComponent(String name, ClaimResponse.InsuranceComponent element) throws IOException { 23126 if (element != null) { 23127 composeElementAttributes(element); 23128 xml.enter(FHIR_NS, name); 23129 composeClaimResponseInsuranceComponentElements(element); 23130 composeElementClose(element); 23131 xml.exit(FHIR_NS, name); 23132 } 23133 } 23134 23135 protected void composeClaimResponseInsuranceComponentElements(ClaimResponse.InsuranceComponent element) throws IOException { 23136 composeBackboneElements(element); 23137 if (element.hasSequenceElement()) { 23138 composePositiveInt("sequence", element.getSequenceElement()); 23139 } 23140 if (element.hasFocalElement()) { 23141 composeBoolean("focal", element.getFocalElement()); 23142 } 23143 if (element.hasCoverage()) { 23144 composeReference("coverage", element.getCoverage()); 23145 } 23146 if (element.hasBusinessArrangementElement()) { 23147 composeString("businessArrangement", element.getBusinessArrangementElement()); 23148 } 23149 if (element.hasPreAuthRef()) { 23150 for (StringType e : element.getPreAuthRef()) 23151 composeString("preAuthRef", e); 23152 } 23153 if (element.hasClaimResponse()) { 23154 composeReference("claimResponse", element.getClaimResponse()); 23155 } 23156 } 23157 23158 protected void composeClinicalImpression(String name, ClinicalImpression element) throws IOException { 23159 if (element != null) { 23160 composeDomainResourceAttributes(element); 23161 xml.enter(FHIR_NS, name); 23162 composeClinicalImpressionElements(element); 23163 composeElementClose(element); 23164 xml.exit(FHIR_NS, name); 23165 } 23166 } 23167 23168 protected void composeClinicalImpressionElements(ClinicalImpression element) throws IOException { 23169 composeDomainResourceElements(element); 23170 if (element.hasIdentifier()) { 23171 for (Identifier e : element.getIdentifier()) 23172 composeIdentifier("identifier", e); 23173 } 23174 if (element.hasStatusElement()) 23175 composeEnumeration("status", element.getStatusElement(), new ClinicalImpression.ClinicalImpressionStatusEnumFactory()); 23176 if (element.hasCode()) { 23177 composeCodeableConcept("code", element.getCode()); 23178 } 23179 if (element.hasDescriptionElement()) { 23180 composeString("description", element.getDescriptionElement()); 23181 } 23182 if (element.hasSubject()) { 23183 composeReference("subject", element.getSubject()); 23184 } 23185 if (element.hasContext()) { 23186 composeReference("context", element.getContext()); 23187 } 23188 if (element.hasEffective()) { 23189 composeType("effective", element.getEffective()); 23190 } if (element.hasDateElement()) { 23191 composeDateTime("date", element.getDateElement()); 23192 } 23193 if (element.hasAssessor()) { 23194 composeReference("assessor", element.getAssessor()); 23195 } 23196 if (element.hasPrevious()) { 23197 composeReference("previous", element.getPrevious()); 23198 } 23199 if (element.hasProblem()) { 23200 for (Reference e : element.getProblem()) 23201 composeReference("problem", e); 23202 } 23203 if (element.hasInvestigation()) { 23204 for (ClinicalImpression.ClinicalImpressionInvestigationComponent e : element.getInvestigation()) 23205 composeClinicalImpressionClinicalImpressionInvestigationComponent("investigation", e); 23206 } 23207 if (element.hasProtocol()) { 23208 for (UriType e : element.getProtocol()) 23209 composeUri("protocol", e); 23210 } 23211 if (element.hasSummaryElement()) { 23212 composeString("summary", element.getSummaryElement()); 23213 } 23214 if (element.hasFinding()) { 23215 for (ClinicalImpression.ClinicalImpressionFindingComponent e : element.getFinding()) 23216 composeClinicalImpressionClinicalImpressionFindingComponent("finding", e); 23217 } 23218 if (element.hasPrognosisCodeableConcept()) { 23219 for (CodeableConcept e : element.getPrognosisCodeableConcept()) 23220 composeCodeableConcept("prognosisCodeableConcept", e); 23221 } 23222 if (element.hasPrognosisReference()) { 23223 for (Reference e : element.getPrognosisReference()) 23224 composeReference("prognosisReference", e); 23225 } 23226 if (element.hasAction()) { 23227 for (Reference e : element.getAction()) 23228 composeReference("action", e); 23229 } 23230 if (element.hasNote()) { 23231 for (Annotation e : element.getNote()) 23232 composeAnnotation("note", e); 23233 } 23234 } 23235 23236 protected void composeClinicalImpressionClinicalImpressionInvestigationComponent(String name, ClinicalImpression.ClinicalImpressionInvestigationComponent element) throws IOException { 23237 if (element != null) { 23238 composeElementAttributes(element); 23239 xml.enter(FHIR_NS, name); 23240 composeClinicalImpressionClinicalImpressionInvestigationComponentElements(element); 23241 composeElementClose(element); 23242 xml.exit(FHIR_NS, name); 23243 } 23244 } 23245 23246 protected void composeClinicalImpressionClinicalImpressionInvestigationComponentElements(ClinicalImpression.ClinicalImpressionInvestigationComponent element) throws IOException { 23247 composeBackboneElements(element); 23248 if (element.hasCode()) { 23249 composeCodeableConcept("code", element.getCode()); 23250 } 23251 if (element.hasItem()) { 23252 for (Reference e : element.getItem()) 23253 composeReference("item", e); 23254 } 23255 } 23256 23257 protected void composeClinicalImpressionClinicalImpressionFindingComponent(String name, ClinicalImpression.ClinicalImpressionFindingComponent element) throws IOException { 23258 if (element != null) { 23259 composeElementAttributes(element); 23260 xml.enter(FHIR_NS, name); 23261 composeClinicalImpressionClinicalImpressionFindingComponentElements(element); 23262 composeElementClose(element); 23263 xml.exit(FHIR_NS, name); 23264 } 23265 } 23266 23267 protected void composeClinicalImpressionClinicalImpressionFindingComponentElements(ClinicalImpression.ClinicalImpressionFindingComponent element) throws IOException { 23268 composeBackboneElements(element); 23269 if (element.hasItem()) { 23270 composeType("item", element.getItem()); 23271 } if (element.hasBasisElement()) { 23272 composeString("basis", element.getBasisElement()); 23273 } 23274 } 23275 23276 protected void composeCodeSystem(String name, CodeSystem element) throws IOException { 23277 if (element != null) { 23278 composeDomainResourceAttributes(element); 23279 xml.enter(FHIR_NS, name); 23280 composeCodeSystemElements(element); 23281 composeElementClose(element); 23282 xml.exit(FHIR_NS, name); 23283 } 23284 } 23285 23286 protected void composeCodeSystemElements(CodeSystem element) throws IOException { 23287 composeDomainResourceElements(element); 23288 if (element.hasUrlElement()) { 23289 composeUri("url", element.getUrlElement()); 23290 } 23291 if (element.hasIdentifier()) { 23292 composeIdentifier("identifier", element.getIdentifier()); 23293 } 23294 if (element.hasVersionElement()) { 23295 composeString("version", element.getVersionElement()); 23296 } 23297 if (element.hasNameElement()) { 23298 composeString("name", element.getNameElement()); 23299 } 23300 if (element.hasTitleElement()) { 23301 composeString("title", element.getTitleElement()); 23302 } 23303 if (element.hasStatusElement()) 23304 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 23305 if (element.hasExperimentalElement()) { 23306 composeBoolean("experimental", element.getExperimentalElement()); 23307 } 23308 if (element.hasDateElement()) { 23309 composeDateTime("date", element.getDateElement()); 23310 } 23311 if (element.hasPublisherElement()) { 23312 composeString("publisher", element.getPublisherElement()); 23313 } 23314 if (element.hasContact()) { 23315 for (ContactDetail e : element.getContact()) 23316 composeContactDetail("contact", e); 23317 } 23318 if (element.hasDescriptionElement()) { 23319 composeMarkdown("description", element.getDescriptionElement()); 23320 } 23321 if (element.hasUseContext()) { 23322 for (UsageContext e : element.getUseContext()) 23323 composeUsageContext("useContext", e); 23324 } 23325 if (element.hasJurisdiction()) { 23326 for (CodeableConcept e : element.getJurisdiction()) 23327 composeCodeableConcept("jurisdiction", e); 23328 } 23329 if (element.hasPurposeElement()) { 23330 composeMarkdown("purpose", element.getPurposeElement()); 23331 } 23332 if (element.hasCopyrightElement()) { 23333 composeMarkdown("copyright", element.getCopyrightElement()); 23334 } 23335 if (element.hasCaseSensitiveElement()) { 23336 composeBoolean("caseSensitive", element.getCaseSensitiveElement()); 23337 } 23338 if (element.hasValueSetElement()) { 23339 composeUri("valueSet", element.getValueSetElement()); 23340 } 23341 if (element.hasHierarchyMeaningElement()) 23342 composeEnumeration("hierarchyMeaning", element.getHierarchyMeaningElement(), new CodeSystem.CodeSystemHierarchyMeaningEnumFactory()); 23343 if (element.hasCompositionalElement()) { 23344 composeBoolean("compositional", element.getCompositionalElement()); 23345 } 23346 if (element.hasVersionNeededElement()) { 23347 composeBoolean("versionNeeded", element.getVersionNeededElement()); 23348 } 23349 if (element.hasContentElement()) 23350 composeEnumeration("content", element.getContentElement(), new CodeSystem.CodeSystemContentModeEnumFactory()); 23351 if (element.hasCountElement()) { 23352 composeUnsignedInt("count", element.getCountElement()); 23353 } 23354 if (element.hasFilter()) { 23355 for (CodeSystem.CodeSystemFilterComponent e : element.getFilter()) 23356 composeCodeSystemCodeSystemFilterComponent("filter", e); 23357 } 23358 if (element.hasProperty()) { 23359 for (CodeSystem.PropertyComponent e : element.getProperty()) 23360 composeCodeSystemPropertyComponent("property", e); 23361 } 23362 if (element.hasConcept()) { 23363 for (CodeSystem.ConceptDefinitionComponent e : element.getConcept()) 23364 composeCodeSystemConceptDefinitionComponent("concept", e); 23365 } 23366 } 23367 23368 protected void composeCodeSystemCodeSystemFilterComponent(String name, CodeSystem.CodeSystemFilterComponent element) throws IOException { 23369 if (element != null) { 23370 composeElementAttributes(element); 23371 xml.enter(FHIR_NS, name); 23372 composeCodeSystemCodeSystemFilterComponentElements(element); 23373 composeElementClose(element); 23374 xml.exit(FHIR_NS, name); 23375 } 23376 } 23377 23378 protected void composeCodeSystemCodeSystemFilterComponentElements(CodeSystem.CodeSystemFilterComponent element) throws IOException { 23379 composeBackboneElements(element); 23380 if (element.hasCodeElement()) { 23381 composeCode("code", element.getCodeElement()); 23382 } 23383 if (element.hasDescriptionElement()) { 23384 composeString("description", element.getDescriptionElement()); 23385 } 23386 if (element.hasOperator()) 23387 for (Enumeration<CodeSystem.FilterOperator> e : element.getOperator()) 23388 composeEnumeration("operator", e, new CodeSystem.FilterOperatorEnumFactory()); 23389 if (element.hasValueElement()) { 23390 composeString("value", element.getValueElement()); 23391 } 23392 } 23393 23394 protected void composeCodeSystemPropertyComponent(String name, CodeSystem.PropertyComponent element) throws IOException { 23395 if (element != null) { 23396 composeElementAttributes(element); 23397 xml.enter(FHIR_NS, name); 23398 composeCodeSystemPropertyComponentElements(element); 23399 composeElementClose(element); 23400 xml.exit(FHIR_NS, name); 23401 } 23402 } 23403 23404 protected void composeCodeSystemPropertyComponentElements(CodeSystem.PropertyComponent element) throws IOException { 23405 composeBackboneElements(element); 23406 if (element.hasCodeElement()) { 23407 composeCode("code", element.getCodeElement()); 23408 } 23409 if (element.hasUriElement()) { 23410 composeUri("uri", element.getUriElement()); 23411 } 23412 if (element.hasDescriptionElement()) { 23413 composeString("description", element.getDescriptionElement()); 23414 } 23415 if (element.hasTypeElement()) 23416 composeEnumeration("type", element.getTypeElement(), new CodeSystem.PropertyTypeEnumFactory()); 23417 } 23418 23419 protected void composeCodeSystemConceptDefinitionComponent(String name, CodeSystem.ConceptDefinitionComponent element) throws IOException { 23420 if (element != null) { 23421 composeElementAttributes(element); 23422 xml.enter(FHIR_NS, name); 23423 composeCodeSystemConceptDefinitionComponentElements(element); 23424 composeElementClose(element); 23425 xml.exit(FHIR_NS, name); 23426 } 23427 } 23428 23429 protected void composeCodeSystemConceptDefinitionComponentElements(CodeSystem.ConceptDefinitionComponent element) throws IOException { 23430 composeBackboneElements(element); 23431 if (element.hasCodeElement()) { 23432 composeCode("code", element.getCodeElement()); 23433 } 23434 if (element.hasDisplayElement()) { 23435 composeString("display", element.getDisplayElement()); 23436 } 23437 if (element.hasDefinitionElement()) { 23438 composeString("definition", element.getDefinitionElement()); 23439 } 23440 if (element.hasDesignation()) { 23441 for (CodeSystem.ConceptDefinitionDesignationComponent e : element.getDesignation()) 23442 composeCodeSystemConceptDefinitionDesignationComponent("designation", e); 23443 } 23444 if (element.hasProperty()) { 23445 for (CodeSystem.ConceptPropertyComponent e : element.getProperty()) 23446 composeCodeSystemConceptPropertyComponent("property", e); 23447 } 23448 if (element.hasConcept()) { 23449 for (CodeSystem.ConceptDefinitionComponent e : element.getConcept()) 23450 composeCodeSystemConceptDefinitionComponent("concept", e); 23451 } 23452 } 23453 23454 protected void composeCodeSystemConceptDefinitionDesignationComponent(String name, CodeSystem.ConceptDefinitionDesignationComponent element) throws IOException { 23455 if (element != null) { 23456 composeElementAttributes(element); 23457 xml.enter(FHIR_NS, name); 23458 composeCodeSystemConceptDefinitionDesignationComponentElements(element); 23459 composeElementClose(element); 23460 xml.exit(FHIR_NS, name); 23461 } 23462 } 23463 23464 protected void composeCodeSystemConceptDefinitionDesignationComponentElements(CodeSystem.ConceptDefinitionDesignationComponent element) throws IOException { 23465 composeBackboneElements(element); 23466 if (element.hasLanguageElement()) { 23467 composeCode("language", element.getLanguageElement()); 23468 } 23469 if (element.hasUse()) { 23470 composeCoding("use", element.getUse()); 23471 } 23472 if (element.hasValueElement()) { 23473 composeString("value", element.getValueElement()); 23474 } 23475 } 23476 23477 protected void composeCodeSystemConceptPropertyComponent(String name, CodeSystem.ConceptPropertyComponent element) throws IOException { 23478 if (element != null) { 23479 composeElementAttributes(element); 23480 xml.enter(FHIR_NS, name); 23481 composeCodeSystemConceptPropertyComponentElements(element); 23482 composeElementClose(element); 23483 xml.exit(FHIR_NS, name); 23484 } 23485 } 23486 23487 protected void composeCodeSystemConceptPropertyComponentElements(CodeSystem.ConceptPropertyComponent element) throws IOException { 23488 composeBackboneElements(element); 23489 if (element.hasCodeElement()) { 23490 composeCode("code", element.getCodeElement()); 23491 } 23492 if (element.hasValue()) { 23493 composeType("value", element.getValue()); 23494 } } 23495 23496 protected void composeCommunication(String name, Communication element) throws IOException { 23497 if (element != null) { 23498 composeDomainResourceAttributes(element); 23499 xml.enter(FHIR_NS, name); 23500 composeCommunicationElements(element); 23501 composeElementClose(element); 23502 xml.exit(FHIR_NS, name); 23503 } 23504 } 23505 23506 protected void composeCommunicationElements(Communication element) throws IOException { 23507 composeDomainResourceElements(element); 23508 if (element.hasIdentifier()) { 23509 for (Identifier e : element.getIdentifier()) 23510 composeIdentifier("identifier", e); 23511 } 23512 if (element.hasDefinition()) { 23513 for (Reference e : element.getDefinition()) 23514 composeReference("definition", e); 23515 } 23516 if (element.hasBasedOn()) { 23517 for (Reference e : element.getBasedOn()) 23518 composeReference("basedOn", e); 23519 } 23520 if (element.hasPartOf()) { 23521 for (Reference e : element.getPartOf()) 23522 composeReference("partOf", e); 23523 } 23524 if (element.hasStatusElement()) 23525 composeEnumeration("status", element.getStatusElement(), new Communication.CommunicationStatusEnumFactory()); 23526 if (element.hasNotDoneElement()) { 23527 composeBoolean("notDone", element.getNotDoneElement()); 23528 } 23529 if (element.hasNotDoneReason()) { 23530 composeCodeableConcept("notDoneReason", element.getNotDoneReason()); 23531 } 23532 if (element.hasCategory()) { 23533 for (CodeableConcept e : element.getCategory()) 23534 composeCodeableConcept("category", e); 23535 } 23536 if (element.hasMedium()) { 23537 for (CodeableConcept e : element.getMedium()) 23538 composeCodeableConcept("medium", e); 23539 } 23540 if (element.hasSubject()) { 23541 composeReference("subject", element.getSubject()); 23542 } 23543 if (element.hasRecipient()) { 23544 for (Reference e : element.getRecipient()) 23545 composeReference("recipient", e); 23546 } 23547 if (element.hasTopic()) { 23548 for (Reference e : element.getTopic()) 23549 composeReference("topic", e); 23550 } 23551 if (element.hasContext()) { 23552 composeReference("context", element.getContext()); 23553 } 23554 if (element.hasSentElement()) { 23555 composeDateTime("sent", element.getSentElement()); 23556 } 23557 if (element.hasReceivedElement()) { 23558 composeDateTime("received", element.getReceivedElement()); 23559 } 23560 if (element.hasSender()) { 23561 composeReference("sender", element.getSender()); 23562 } 23563 if (element.hasReasonCode()) { 23564 for (CodeableConcept e : element.getReasonCode()) 23565 composeCodeableConcept("reasonCode", e); 23566 } 23567 if (element.hasReasonReference()) { 23568 for (Reference e : element.getReasonReference()) 23569 composeReference("reasonReference", e); 23570 } 23571 if (element.hasPayload()) { 23572 for (Communication.CommunicationPayloadComponent e : element.getPayload()) 23573 composeCommunicationCommunicationPayloadComponent("payload", e); 23574 } 23575 if (element.hasNote()) { 23576 for (Annotation e : element.getNote()) 23577 composeAnnotation("note", e); 23578 } 23579 } 23580 23581 protected void composeCommunicationCommunicationPayloadComponent(String name, Communication.CommunicationPayloadComponent element) throws IOException { 23582 if (element != null) { 23583 composeElementAttributes(element); 23584 xml.enter(FHIR_NS, name); 23585 composeCommunicationCommunicationPayloadComponentElements(element); 23586 composeElementClose(element); 23587 xml.exit(FHIR_NS, name); 23588 } 23589 } 23590 23591 protected void composeCommunicationCommunicationPayloadComponentElements(Communication.CommunicationPayloadComponent element) throws IOException { 23592 composeBackboneElements(element); 23593 if (element.hasContent()) { 23594 composeType("content", element.getContent()); 23595 } } 23596 23597 protected void composeCommunicationRequest(String name, CommunicationRequest element) throws IOException { 23598 if (element != null) { 23599 composeDomainResourceAttributes(element); 23600 xml.enter(FHIR_NS, name); 23601 composeCommunicationRequestElements(element); 23602 composeElementClose(element); 23603 xml.exit(FHIR_NS, name); 23604 } 23605 } 23606 23607 protected void composeCommunicationRequestElements(CommunicationRequest element) throws IOException { 23608 composeDomainResourceElements(element); 23609 if (element.hasIdentifier()) { 23610 for (Identifier e : element.getIdentifier()) 23611 composeIdentifier("identifier", e); 23612 } 23613 if (element.hasBasedOn()) { 23614 for (Reference e : element.getBasedOn()) 23615 composeReference("basedOn", e); 23616 } 23617 if (element.hasReplaces()) { 23618 for (Reference e : element.getReplaces()) 23619 composeReference("replaces", e); 23620 } 23621 if (element.hasGroupIdentifier()) { 23622 composeIdentifier("groupIdentifier", element.getGroupIdentifier()); 23623 } 23624 if (element.hasStatusElement()) 23625 composeEnumeration("status", element.getStatusElement(), new CommunicationRequest.CommunicationRequestStatusEnumFactory()); 23626 if (element.hasCategory()) { 23627 for (CodeableConcept e : element.getCategory()) 23628 composeCodeableConcept("category", e); 23629 } 23630 if (element.hasPriorityElement()) 23631 composeEnumeration("priority", element.getPriorityElement(), new CommunicationRequest.CommunicationPriorityEnumFactory()); 23632 if (element.hasMedium()) { 23633 for (CodeableConcept e : element.getMedium()) 23634 composeCodeableConcept("medium", e); 23635 } 23636 if (element.hasSubject()) { 23637 composeReference("subject", element.getSubject()); 23638 } 23639 if (element.hasRecipient()) { 23640 for (Reference e : element.getRecipient()) 23641 composeReference("recipient", e); 23642 } 23643 if (element.hasTopic()) { 23644 for (Reference e : element.getTopic()) 23645 composeReference("topic", e); 23646 } 23647 if (element.hasContext()) { 23648 composeReference("context", element.getContext()); 23649 } 23650 if (element.hasPayload()) { 23651 for (CommunicationRequest.CommunicationRequestPayloadComponent e : element.getPayload()) 23652 composeCommunicationRequestCommunicationRequestPayloadComponent("payload", e); 23653 } 23654 if (element.hasOccurrence()) { 23655 composeType("occurrence", element.getOccurrence()); 23656 } if (element.hasAuthoredOnElement()) { 23657 composeDateTime("authoredOn", element.getAuthoredOnElement()); 23658 } 23659 if (element.hasSender()) { 23660 composeReference("sender", element.getSender()); 23661 } 23662 if (element.hasRequester()) { 23663 composeCommunicationRequestCommunicationRequestRequesterComponent("requester", element.getRequester()); 23664 } 23665 if (element.hasReasonCode()) { 23666 for (CodeableConcept e : element.getReasonCode()) 23667 composeCodeableConcept("reasonCode", e); 23668 } 23669 if (element.hasReasonReference()) { 23670 for (Reference e : element.getReasonReference()) 23671 composeReference("reasonReference", e); 23672 } 23673 if (element.hasNote()) { 23674 for (Annotation e : element.getNote()) 23675 composeAnnotation("note", e); 23676 } 23677 } 23678 23679 protected void composeCommunicationRequestCommunicationRequestPayloadComponent(String name, CommunicationRequest.CommunicationRequestPayloadComponent element) throws IOException { 23680 if (element != null) { 23681 composeElementAttributes(element); 23682 xml.enter(FHIR_NS, name); 23683 composeCommunicationRequestCommunicationRequestPayloadComponentElements(element); 23684 composeElementClose(element); 23685 xml.exit(FHIR_NS, name); 23686 } 23687 } 23688 23689 protected void composeCommunicationRequestCommunicationRequestPayloadComponentElements(CommunicationRequest.CommunicationRequestPayloadComponent element) throws IOException { 23690 composeBackboneElements(element); 23691 if (element.hasContent()) { 23692 composeType("content", element.getContent()); 23693 } } 23694 23695 protected void composeCommunicationRequestCommunicationRequestRequesterComponent(String name, CommunicationRequest.CommunicationRequestRequesterComponent element) throws IOException { 23696 if (element != null) { 23697 composeElementAttributes(element); 23698 xml.enter(FHIR_NS, name); 23699 composeCommunicationRequestCommunicationRequestRequesterComponentElements(element); 23700 composeElementClose(element); 23701 xml.exit(FHIR_NS, name); 23702 } 23703 } 23704 23705 protected void composeCommunicationRequestCommunicationRequestRequesterComponentElements(CommunicationRequest.CommunicationRequestRequesterComponent element) throws IOException { 23706 composeBackboneElements(element); 23707 if (element.hasAgent()) { 23708 composeReference("agent", element.getAgent()); 23709 } 23710 if (element.hasOnBehalfOf()) { 23711 composeReference("onBehalfOf", element.getOnBehalfOf()); 23712 } 23713 } 23714 23715 protected void composeCompartmentDefinition(String name, CompartmentDefinition element) throws IOException { 23716 if (element != null) { 23717 composeDomainResourceAttributes(element); 23718 xml.enter(FHIR_NS, name); 23719 composeCompartmentDefinitionElements(element); 23720 composeElementClose(element); 23721 xml.exit(FHIR_NS, name); 23722 } 23723 } 23724 23725 protected void composeCompartmentDefinitionElements(CompartmentDefinition element) throws IOException { 23726 composeDomainResourceElements(element); 23727 if (element.hasUrlElement()) { 23728 composeUri("url", element.getUrlElement()); 23729 } 23730 if (element.hasNameElement()) { 23731 composeString("name", element.getNameElement()); 23732 } 23733 if (element.hasTitleElement()) { 23734 composeString("title", element.getTitleElement()); 23735 } 23736 if (element.hasStatusElement()) 23737 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 23738 if (element.hasExperimentalElement()) { 23739 composeBoolean("experimental", element.getExperimentalElement()); 23740 } 23741 if (element.hasDateElement()) { 23742 composeDateTime("date", element.getDateElement()); 23743 } 23744 if (element.hasPublisherElement()) { 23745 composeString("publisher", element.getPublisherElement()); 23746 } 23747 if (element.hasContact()) { 23748 for (ContactDetail e : element.getContact()) 23749 composeContactDetail("contact", e); 23750 } 23751 if (element.hasDescriptionElement()) { 23752 composeMarkdown("description", element.getDescriptionElement()); 23753 } 23754 if (element.hasPurposeElement()) { 23755 composeMarkdown("purpose", element.getPurposeElement()); 23756 } 23757 if (element.hasUseContext()) { 23758 for (UsageContext e : element.getUseContext()) 23759 composeUsageContext("useContext", e); 23760 } 23761 if (element.hasJurisdiction()) { 23762 for (CodeableConcept e : element.getJurisdiction()) 23763 composeCodeableConcept("jurisdiction", e); 23764 } 23765 if (element.hasCodeElement()) 23766 composeEnumeration("code", element.getCodeElement(), new CompartmentDefinition.CompartmentTypeEnumFactory()); 23767 if (element.hasSearchElement()) { 23768 composeBoolean("search", element.getSearchElement()); 23769 } 23770 if (element.hasResource()) { 23771 for (CompartmentDefinition.CompartmentDefinitionResourceComponent e : element.getResource()) 23772 composeCompartmentDefinitionCompartmentDefinitionResourceComponent("resource", e); 23773 } 23774 } 23775 23776 protected void composeCompartmentDefinitionCompartmentDefinitionResourceComponent(String name, CompartmentDefinition.CompartmentDefinitionResourceComponent element) throws IOException { 23777 if (element != null) { 23778 composeElementAttributes(element); 23779 xml.enter(FHIR_NS, name); 23780 composeCompartmentDefinitionCompartmentDefinitionResourceComponentElements(element); 23781 composeElementClose(element); 23782 xml.exit(FHIR_NS, name); 23783 } 23784 } 23785 23786 protected void composeCompartmentDefinitionCompartmentDefinitionResourceComponentElements(CompartmentDefinition.CompartmentDefinitionResourceComponent element) throws IOException { 23787 composeBackboneElements(element); 23788 if (element.hasCodeElement()) { 23789 composeCode("code", element.getCodeElement()); 23790 } 23791 if (element.hasParam()) { 23792 for (StringType e : element.getParam()) 23793 composeString("param", e); 23794 } 23795 if (element.hasDocumentationElement()) { 23796 composeString("documentation", element.getDocumentationElement()); 23797 } 23798 } 23799 23800 protected void composeComposition(String name, Composition element) throws IOException { 23801 if (element != null) { 23802 composeDomainResourceAttributes(element); 23803 xml.enter(FHIR_NS, name); 23804 composeCompositionElements(element); 23805 composeElementClose(element); 23806 xml.exit(FHIR_NS, name); 23807 } 23808 } 23809 23810 protected void composeCompositionElements(Composition element) throws IOException { 23811 composeDomainResourceElements(element); 23812 if (element.hasIdentifier()) { 23813 composeIdentifier("identifier", element.getIdentifier()); 23814 } 23815 if (element.hasStatusElement()) 23816 composeEnumeration("status", element.getStatusElement(), new Composition.CompositionStatusEnumFactory()); 23817 if (element.hasType()) { 23818 composeCodeableConcept("type", element.getType()); 23819 } 23820 if (element.hasClass_()) { 23821 composeCodeableConcept("class", element.getClass_()); 23822 } 23823 if (element.hasSubject()) { 23824 composeReference("subject", element.getSubject()); 23825 } 23826 if (element.hasEncounter()) { 23827 composeReference("encounter", element.getEncounter()); 23828 } 23829 if (element.hasDateElement()) { 23830 composeDateTime("date", element.getDateElement()); 23831 } 23832 if (element.hasAuthor()) { 23833 for (Reference e : element.getAuthor()) 23834 composeReference("author", e); 23835 } 23836 if (element.hasTitleElement()) { 23837 composeString("title", element.getTitleElement()); 23838 } 23839 if (element.hasConfidentialityElement()) 23840 composeEnumeration("confidentiality", element.getConfidentialityElement(), new Composition.DocumentConfidentialityEnumFactory()); 23841 if (element.hasAttester()) { 23842 for (Composition.CompositionAttesterComponent e : element.getAttester()) 23843 composeCompositionCompositionAttesterComponent("attester", e); 23844 } 23845 if (element.hasCustodian()) { 23846 composeReference("custodian", element.getCustodian()); 23847 } 23848 if (element.hasRelatesTo()) { 23849 for (Composition.CompositionRelatesToComponent e : element.getRelatesTo()) 23850 composeCompositionCompositionRelatesToComponent("relatesTo", e); 23851 } 23852 if (element.hasEvent()) { 23853 for (Composition.CompositionEventComponent e : element.getEvent()) 23854 composeCompositionCompositionEventComponent("event", e); 23855 } 23856 if (element.hasSection()) { 23857 for (Composition.SectionComponent e : element.getSection()) 23858 composeCompositionSectionComponent("section", e); 23859 } 23860 } 23861 23862 protected void composeCompositionCompositionAttesterComponent(String name, Composition.CompositionAttesterComponent element) throws IOException { 23863 if (element != null) { 23864 composeElementAttributes(element); 23865 xml.enter(FHIR_NS, name); 23866 composeCompositionCompositionAttesterComponentElements(element); 23867 composeElementClose(element); 23868 xml.exit(FHIR_NS, name); 23869 } 23870 } 23871 23872 protected void composeCompositionCompositionAttesterComponentElements(Composition.CompositionAttesterComponent element) throws IOException { 23873 composeBackboneElements(element); 23874 if (element.hasMode()) 23875 for (Enumeration<Composition.CompositionAttestationMode> e : element.getMode()) 23876 composeEnumeration("mode", e, new Composition.CompositionAttestationModeEnumFactory()); 23877 if (element.hasTimeElement()) { 23878 composeDateTime("time", element.getTimeElement()); 23879 } 23880 if (element.hasParty()) { 23881 composeReference("party", element.getParty()); 23882 } 23883 } 23884 23885 protected void composeCompositionCompositionRelatesToComponent(String name, Composition.CompositionRelatesToComponent element) throws IOException { 23886 if (element != null) { 23887 composeElementAttributes(element); 23888 xml.enter(FHIR_NS, name); 23889 composeCompositionCompositionRelatesToComponentElements(element); 23890 composeElementClose(element); 23891 xml.exit(FHIR_NS, name); 23892 } 23893 } 23894 23895 protected void composeCompositionCompositionRelatesToComponentElements(Composition.CompositionRelatesToComponent element) throws IOException { 23896 composeBackboneElements(element); 23897 if (element.hasCodeElement()) 23898 composeEnumeration("code", element.getCodeElement(), new Composition.DocumentRelationshipTypeEnumFactory()); 23899 if (element.hasTarget()) { 23900 composeType("target", element.getTarget()); 23901 } } 23902 23903 protected void composeCompositionCompositionEventComponent(String name, Composition.CompositionEventComponent element) throws IOException { 23904 if (element != null) { 23905 composeElementAttributes(element); 23906 xml.enter(FHIR_NS, name); 23907 composeCompositionCompositionEventComponentElements(element); 23908 composeElementClose(element); 23909 xml.exit(FHIR_NS, name); 23910 } 23911 } 23912 23913 protected void composeCompositionCompositionEventComponentElements(Composition.CompositionEventComponent element) throws IOException { 23914 composeBackboneElements(element); 23915 if (element.hasCode()) { 23916 for (CodeableConcept e : element.getCode()) 23917 composeCodeableConcept("code", e); 23918 } 23919 if (element.hasPeriod()) { 23920 composePeriod("period", element.getPeriod()); 23921 } 23922 if (element.hasDetail()) { 23923 for (Reference e : element.getDetail()) 23924 composeReference("detail", e); 23925 } 23926 } 23927 23928 protected void composeCompositionSectionComponent(String name, Composition.SectionComponent element) throws IOException { 23929 if (element != null) { 23930 composeElementAttributes(element); 23931 xml.enter(FHIR_NS, name); 23932 composeCompositionSectionComponentElements(element); 23933 composeElementClose(element); 23934 xml.exit(FHIR_NS, name); 23935 } 23936 } 23937 23938 protected void composeCompositionSectionComponentElements(Composition.SectionComponent element) throws IOException { 23939 composeBackboneElements(element); 23940 if (element.hasTitleElement()) { 23941 composeString("title", element.getTitleElement()); 23942 } 23943 if (element.hasCode()) { 23944 composeCodeableConcept("code", element.getCode()); 23945 } 23946 if (element.hasText()) { 23947 composeNarrative("text", element.getText()); 23948 } 23949 if (element.hasModeElement()) 23950 composeEnumeration("mode", element.getModeElement(), new Composition.SectionModeEnumFactory()); 23951 if (element.hasOrderedBy()) { 23952 composeCodeableConcept("orderedBy", element.getOrderedBy()); 23953 } 23954 if (element.hasEntry()) { 23955 for (Reference e : element.getEntry()) 23956 composeReference("entry", e); 23957 } 23958 if (element.hasEmptyReason()) { 23959 composeCodeableConcept("emptyReason", element.getEmptyReason()); 23960 } 23961 if (element.hasSection()) { 23962 for (Composition.SectionComponent e : element.getSection()) 23963 composeCompositionSectionComponent("section", e); 23964 } 23965 } 23966 23967 protected void composeConceptMap(String name, ConceptMap element) throws IOException { 23968 if (element != null) { 23969 composeDomainResourceAttributes(element); 23970 xml.enter(FHIR_NS, name); 23971 composeConceptMapElements(element); 23972 composeElementClose(element); 23973 xml.exit(FHIR_NS, name); 23974 } 23975 } 23976 23977 protected void composeConceptMapElements(ConceptMap element) throws IOException { 23978 composeDomainResourceElements(element); 23979 if (element.hasUrlElement()) { 23980 composeUri("url", element.getUrlElement()); 23981 } 23982 if (element.hasIdentifier()) { 23983 composeIdentifier("identifier", element.getIdentifier()); 23984 } 23985 if (element.hasVersionElement()) { 23986 composeString("version", element.getVersionElement()); 23987 } 23988 if (element.hasNameElement()) { 23989 composeString("name", element.getNameElement()); 23990 } 23991 if (element.hasTitleElement()) { 23992 composeString("title", element.getTitleElement()); 23993 } 23994 if (element.hasStatusElement()) 23995 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 23996 if (element.hasExperimentalElement()) { 23997 composeBoolean("experimental", element.getExperimentalElement()); 23998 } 23999 if (element.hasDateElement()) { 24000 composeDateTime("date", element.getDateElement()); 24001 } 24002 if (element.hasPublisherElement()) { 24003 composeString("publisher", element.getPublisherElement()); 24004 } 24005 if (element.hasContact()) { 24006 for (ContactDetail e : element.getContact()) 24007 composeContactDetail("contact", e); 24008 } 24009 if (element.hasDescriptionElement()) { 24010 composeMarkdown("description", element.getDescriptionElement()); 24011 } 24012 if (element.hasUseContext()) { 24013 for (UsageContext e : element.getUseContext()) 24014 composeUsageContext("useContext", e); 24015 } 24016 if (element.hasJurisdiction()) { 24017 for (CodeableConcept e : element.getJurisdiction()) 24018 composeCodeableConcept("jurisdiction", e); 24019 } 24020 if (element.hasPurposeElement()) { 24021 composeMarkdown("purpose", element.getPurposeElement()); 24022 } 24023 if (element.hasCopyrightElement()) { 24024 composeMarkdown("copyright", element.getCopyrightElement()); 24025 } 24026 if (element.hasSource()) { 24027 composeType("source", element.getSource()); 24028 } if (element.hasTarget()) { 24029 composeType("target", element.getTarget()); 24030 } if (element.hasGroup()) { 24031 for (ConceptMap.ConceptMapGroupComponent e : element.getGroup()) 24032 composeConceptMapConceptMapGroupComponent("group", e); 24033 } 24034 } 24035 24036 protected void composeConceptMapConceptMapGroupComponent(String name, ConceptMap.ConceptMapGroupComponent element) throws IOException { 24037 if (element != null) { 24038 composeElementAttributes(element); 24039 xml.enter(FHIR_NS, name); 24040 composeConceptMapConceptMapGroupComponentElements(element); 24041 composeElementClose(element); 24042 xml.exit(FHIR_NS, name); 24043 } 24044 } 24045 24046 protected void composeConceptMapConceptMapGroupComponentElements(ConceptMap.ConceptMapGroupComponent element) throws IOException { 24047 composeBackboneElements(element); 24048 if (element.hasSourceElement()) { 24049 composeUri("source", element.getSourceElement()); 24050 } 24051 if (element.hasSourceVersionElement()) { 24052 composeString("sourceVersion", element.getSourceVersionElement()); 24053 } 24054 if (element.hasTargetElement()) { 24055 composeUri("target", element.getTargetElement()); 24056 } 24057 if (element.hasTargetVersionElement()) { 24058 composeString("targetVersion", element.getTargetVersionElement()); 24059 } 24060 if (element.hasElement()) { 24061 for (ConceptMap.SourceElementComponent e : element.getElement()) 24062 composeConceptMapSourceElementComponent("element", e); 24063 } 24064 if (element.hasUnmapped()) { 24065 composeConceptMapConceptMapGroupUnmappedComponent("unmapped", element.getUnmapped()); 24066 } 24067 } 24068 24069 protected void composeConceptMapSourceElementComponent(String name, ConceptMap.SourceElementComponent element) throws IOException { 24070 if (element != null) { 24071 composeElementAttributes(element); 24072 xml.enter(FHIR_NS, name); 24073 composeConceptMapSourceElementComponentElements(element); 24074 composeElementClose(element); 24075 xml.exit(FHIR_NS, name); 24076 } 24077 } 24078 24079 protected void composeConceptMapSourceElementComponentElements(ConceptMap.SourceElementComponent element) throws IOException { 24080 composeBackboneElements(element); 24081 if (element.hasCodeElement()) { 24082 composeCode("code", element.getCodeElement()); 24083 } 24084 if (element.hasDisplayElement()) { 24085 composeString("display", element.getDisplayElement()); 24086 } 24087 if (element.hasTarget()) { 24088 for (ConceptMap.TargetElementComponent e : element.getTarget()) 24089 composeConceptMapTargetElementComponent("target", e); 24090 } 24091 } 24092 24093 protected void composeConceptMapTargetElementComponent(String name, ConceptMap.TargetElementComponent element) throws IOException { 24094 if (element != null) { 24095 composeElementAttributes(element); 24096 xml.enter(FHIR_NS, name); 24097 composeConceptMapTargetElementComponentElements(element); 24098 composeElementClose(element); 24099 xml.exit(FHIR_NS, name); 24100 } 24101 } 24102 24103 protected void composeConceptMapTargetElementComponentElements(ConceptMap.TargetElementComponent element) throws IOException { 24104 composeBackboneElements(element); 24105 if (element.hasCodeElement()) { 24106 composeCode("code", element.getCodeElement()); 24107 } 24108 if (element.hasDisplayElement()) { 24109 composeString("display", element.getDisplayElement()); 24110 } 24111 if (element.hasEquivalenceElement()) 24112 composeEnumeration("equivalence", element.getEquivalenceElement(), new Enumerations.ConceptMapEquivalenceEnumFactory()); 24113 if (element.hasCommentElement()) { 24114 composeString("comment", element.getCommentElement()); 24115 } 24116 if (element.hasDependsOn()) { 24117 for (ConceptMap.OtherElementComponent e : element.getDependsOn()) 24118 composeConceptMapOtherElementComponent("dependsOn", e); 24119 } 24120 if (element.hasProduct()) { 24121 for (ConceptMap.OtherElementComponent e : element.getProduct()) 24122 composeConceptMapOtherElementComponent("product", e); 24123 } 24124 } 24125 24126 protected void composeConceptMapOtherElementComponent(String name, ConceptMap.OtherElementComponent element) throws IOException { 24127 if (element != null) { 24128 composeElementAttributes(element); 24129 xml.enter(FHIR_NS, name); 24130 composeConceptMapOtherElementComponentElements(element); 24131 composeElementClose(element); 24132 xml.exit(FHIR_NS, name); 24133 } 24134 } 24135 24136 protected void composeConceptMapOtherElementComponentElements(ConceptMap.OtherElementComponent element) throws IOException { 24137 composeBackboneElements(element); 24138 if (element.hasPropertyElement()) { 24139 composeUri("property", element.getPropertyElement()); 24140 } 24141 if (element.hasSystemElement()) { 24142 composeUri("system", element.getSystemElement()); 24143 } 24144 if (element.hasCodeElement()) { 24145 composeString("code", element.getCodeElement()); 24146 } 24147 if (element.hasDisplayElement()) { 24148 composeString("display", element.getDisplayElement()); 24149 } 24150 } 24151 24152 protected void composeConceptMapConceptMapGroupUnmappedComponent(String name, ConceptMap.ConceptMapGroupUnmappedComponent element) throws IOException { 24153 if (element != null) { 24154 composeElementAttributes(element); 24155 xml.enter(FHIR_NS, name); 24156 composeConceptMapConceptMapGroupUnmappedComponentElements(element); 24157 composeElementClose(element); 24158 xml.exit(FHIR_NS, name); 24159 } 24160 } 24161 24162 protected void composeConceptMapConceptMapGroupUnmappedComponentElements(ConceptMap.ConceptMapGroupUnmappedComponent element) throws IOException { 24163 composeBackboneElements(element); 24164 if (element.hasModeElement()) 24165 composeEnumeration("mode", element.getModeElement(), new ConceptMap.ConceptMapGroupUnmappedModeEnumFactory()); 24166 if (element.hasCodeElement()) { 24167 composeCode("code", element.getCodeElement()); 24168 } 24169 if (element.hasDisplayElement()) { 24170 composeString("display", element.getDisplayElement()); 24171 } 24172 if (element.hasUrlElement()) { 24173 composeUri("url", element.getUrlElement()); 24174 } 24175 } 24176 24177 protected void composeCondition(String name, Condition element) throws IOException { 24178 if (element != null) { 24179 composeDomainResourceAttributes(element); 24180 xml.enter(FHIR_NS, name); 24181 composeConditionElements(element); 24182 composeElementClose(element); 24183 xml.exit(FHIR_NS, name); 24184 } 24185 } 24186 24187 protected void composeConditionElements(Condition element) throws IOException { 24188 composeDomainResourceElements(element); 24189 if (element.hasIdentifier()) { 24190 for (Identifier e : element.getIdentifier()) 24191 composeIdentifier("identifier", e); 24192 } 24193 if (element.hasClinicalStatusElement()) 24194 composeEnumeration("clinicalStatus", element.getClinicalStatusElement(), new Condition.ConditionClinicalStatusEnumFactory()); 24195 if (element.hasVerificationStatusElement()) 24196 composeEnumeration("verificationStatus", element.getVerificationStatusElement(), new Condition.ConditionVerificationStatusEnumFactory()); 24197 if (element.hasCategory()) { 24198 for (CodeableConcept e : element.getCategory()) 24199 composeCodeableConcept("category", e); 24200 } 24201 if (element.hasSeverity()) { 24202 composeCodeableConcept("severity", element.getSeverity()); 24203 } 24204 if (element.hasCode()) { 24205 composeCodeableConcept("code", element.getCode()); 24206 } 24207 if (element.hasBodySite()) { 24208 for (CodeableConcept e : element.getBodySite()) 24209 composeCodeableConcept("bodySite", e); 24210 } 24211 if (element.hasSubject()) { 24212 composeReference("subject", element.getSubject()); 24213 } 24214 if (element.hasContext()) { 24215 composeReference("context", element.getContext()); 24216 } 24217 if (element.hasOnset()) { 24218 composeType("onset", element.getOnset()); 24219 } if (element.hasAbatement()) { 24220 composeType("abatement", element.getAbatement()); 24221 } if (element.hasAssertedDateElement()) { 24222 composeDateTime("assertedDate", element.getAssertedDateElement()); 24223 } 24224 if (element.hasAsserter()) { 24225 composeReference("asserter", element.getAsserter()); 24226 } 24227 if (element.hasStage()) { 24228 composeConditionConditionStageComponent("stage", element.getStage()); 24229 } 24230 if (element.hasEvidence()) { 24231 for (Condition.ConditionEvidenceComponent e : element.getEvidence()) 24232 composeConditionConditionEvidenceComponent("evidence", e); 24233 } 24234 if (element.hasNote()) { 24235 for (Annotation e : element.getNote()) 24236 composeAnnotation("note", e); 24237 } 24238 } 24239 24240 protected void composeConditionConditionStageComponent(String name, Condition.ConditionStageComponent element) throws IOException { 24241 if (element != null) { 24242 composeElementAttributes(element); 24243 xml.enter(FHIR_NS, name); 24244 composeConditionConditionStageComponentElements(element); 24245 composeElementClose(element); 24246 xml.exit(FHIR_NS, name); 24247 } 24248 } 24249 24250 protected void composeConditionConditionStageComponentElements(Condition.ConditionStageComponent element) throws IOException { 24251 composeBackboneElements(element); 24252 if (element.hasSummary()) { 24253 composeCodeableConcept("summary", element.getSummary()); 24254 } 24255 if (element.hasAssessment()) { 24256 for (Reference e : element.getAssessment()) 24257 composeReference("assessment", e); 24258 } 24259 } 24260 24261 protected void composeConditionConditionEvidenceComponent(String name, Condition.ConditionEvidenceComponent element) throws IOException { 24262 if (element != null) { 24263 composeElementAttributes(element); 24264 xml.enter(FHIR_NS, name); 24265 composeConditionConditionEvidenceComponentElements(element); 24266 composeElementClose(element); 24267 xml.exit(FHIR_NS, name); 24268 } 24269 } 24270 24271 protected void composeConditionConditionEvidenceComponentElements(Condition.ConditionEvidenceComponent element) throws IOException { 24272 composeBackboneElements(element); 24273 if (element.hasCode()) { 24274 for (CodeableConcept e : element.getCode()) 24275 composeCodeableConcept("code", e); 24276 } 24277 if (element.hasDetail()) { 24278 for (Reference e : element.getDetail()) 24279 composeReference("detail", e); 24280 } 24281 } 24282 24283 protected void composeConsent(String name, Consent element) throws IOException { 24284 if (element != null) { 24285 composeDomainResourceAttributes(element); 24286 xml.enter(FHIR_NS, name); 24287 composeConsentElements(element); 24288 composeElementClose(element); 24289 xml.exit(FHIR_NS, name); 24290 } 24291 } 24292 24293 protected void composeConsentElements(Consent element) throws IOException { 24294 composeDomainResourceElements(element); 24295 if (element.hasIdentifier()) { 24296 composeIdentifier("identifier", element.getIdentifier()); 24297 } 24298 if (element.hasStatusElement()) 24299 composeEnumeration("status", element.getStatusElement(), new Consent.ConsentStateEnumFactory()); 24300 if (element.hasCategory()) { 24301 for (CodeableConcept e : element.getCategory()) 24302 composeCodeableConcept("category", e); 24303 } 24304 if (element.hasPatient()) { 24305 composeReference("patient", element.getPatient()); 24306 } 24307 if (element.hasPeriod()) { 24308 composePeriod("period", element.getPeriod()); 24309 } 24310 if (element.hasDateTimeElement()) { 24311 composeDateTime("dateTime", element.getDateTimeElement()); 24312 } 24313 if (element.hasConsentingParty()) { 24314 for (Reference e : element.getConsentingParty()) 24315 composeReference("consentingParty", e); 24316 } 24317 if (element.hasActor()) { 24318 for (Consent.ConsentActorComponent e : element.getActor()) 24319 composeConsentConsentActorComponent("actor", e); 24320 } 24321 if (element.hasAction()) { 24322 for (CodeableConcept e : element.getAction()) 24323 composeCodeableConcept("action", e); 24324 } 24325 if (element.hasOrganization()) { 24326 for (Reference e : element.getOrganization()) 24327 composeReference("organization", e); 24328 } 24329 if (element.hasSource()) { 24330 composeType("source", element.getSource()); 24331 } if (element.hasPolicy()) { 24332 for (Consent.ConsentPolicyComponent e : element.getPolicy()) 24333 composeConsentConsentPolicyComponent("policy", e); 24334 } 24335 if (element.hasPolicyRuleElement()) { 24336 composeUri("policyRule", element.getPolicyRuleElement()); 24337 } 24338 if (element.hasSecurityLabel()) { 24339 for (Coding e : element.getSecurityLabel()) 24340 composeCoding("securityLabel", e); 24341 } 24342 if (element.hasPurpose()) { 24343 for (Coding e : element.getPurpose()) 24344 composeCoding("purpose", e); 24345 } 24346 if (element.hasDataPeriod()) { 24347 composePeriod("dataPeriod", element.getDataPeriod()); 24348 } 24349 if (element.hasData()) { 24350 for (Consent.ConsentDataComponent e : element.getData()) 24351 composeConsentConsentDataComponent("data", e); 24352 } 24353 if (element.hasExcept()) { 24354 for (Consent.ExceptComponent e : element.getExcept()) 24355 composeConsentExceptComponent("except", e); 24356 } 24357 } 24358 24359 protected void composeConsentConsentActorComponent(String name, Consent.ConsentActorComponent element) throws IOException { 24360 if (element != null) { 24361 composeElementAttributes(element); 24362 xml.enter(FHIR_NS, name); 24363 composeConsentConsentActorComponentElements(element); 24364 composeElementClose(element); 24365 xml.exit(FHIR_NS, name); 24366 } 24367 } 24368 24369 protected void composeConsentConsentActorComponentElements(Consent.ConsentActorComponent element) throws IOException { 24370 composeBackboneElements(element); 24371 if (element.hasRole()) { 24372 composeCodeableConcept("role", element.getRole()); 24373 } 24374 if (element.hasReference()) { 24375 composeReference("reference", element.getReference()); 24376 } 24377 } 24378 24379 protected void composeConsentConsentPolicyComponent(String name, Consent.ConsentPolicyComponent element) throws IOException { 24380 if (element != null) { 24381 composeElementAttributes(element); 24382 xml.enter(FHIR_NS, name); 24383 composeConsentConsentPolicyComponentElements(element); 24384 composeElementClose(element); 24385 xml.exit(FHIR_NS, name); 24386 } 24387 } 24388 24389 protected void composeConsentConsentPolicyComponentElements(Consent.ConsentPolicyComponent element) throws IOException { 24390 composeBackboneElements(element); 24391 if (element.hasAuthorityElement()) { 24392 composeUri("authority", element.getAuthorityElement()); 24393 } 24394 if (element.hasUriElement()) { 24395 composeUri("uri", element.getUriElement()); 24396 } 24397 } 24398 24399 protected void composeConsentConsentDataComponent(String name, Consent.ConsentDataComponent element) throws IOException { 24400 if (element != null) { 24401 composeElementAttributes(element); 24402 xml.enter(FHIR_NS, name); 24403 composeConsentConsentDataComponentElements(element); 24404 composeElementClose(element); 24405 xml.exit(FHIR_NS, name); 24406 } 24407 } 24408 24409 protected void composeConsentConsentDataComponentElements(Consent.ConsentDataComponent element) throws IOException { 24410 composeBackboneElements(element); 24411 if (element.hasMeaningElement()) 24412 composeEnumeration("meaning", element.getMeaningElement(), new Consent.ConsentDataMeaningEnumFactory()); 24413 if (element.hasReference()) { 24414 composeReference("reference", element.getReference()); 24415 } 24416 } 24417 24418 protected void composeConsentExceptComponent(String name, Consent.ExceptComponent element) throws IOException { 24419 if (element != null) { 24420 composeElementAttributes(element); 24421 xml.enter(FHIR_NS, name); 24422 composeConsentExceptComponentElements(element); 24423 composeElementClose(element); 24424 xml.exit(FHIR_NS, name); 24425 } 24426 } 24427 24428 protected void composeConsentExceptComponentElements(Consent.ExceptComponent element) throws IOException { 24429 composeBackboneElements(element); 24430 if (element.hasTypeElement()) 24431 composeEnumeration("type", element.getTypeElement(), new Consent.ConsentExceptTypeEnumFactory()); 24432 if (element.hasPeriod()) { 24433 composePeriod("period", element.getPeriod()); 24434 } 24435 if (element.hasActor()) { 24436 for (Consent.ExceptActorComponent e : element.getActor()) 24437 composeConsentExceptActorComponent("actor", e); 24438 } 24439 if (element.hasAction()) { 24440 for (CodeableConcept e : element.getAction()) 24441 composeCodeableConcept("action", e); 24442 } 24443 if (element.hasSecurityLabel()) { 24444 for (Coding e : element.getSecurityLabel()) 24445 composeCoding("securityLabel", e); 24446 } 24447 if (element.hasPurpose()) { 24448 for (Coding e : element.getPurpose()) 24449 composeCoding("purpose", e); 24450 } 24451 if (element.hasClass_()) { 24452 for (Coding e : element.getClass_()) 24453 composeCoding("class", e); 24454 } 24455 if (element.hasCode()) { 24456 for (Coding e : element.getCode()) 24457 composeCoding("code", e); 24458 } 24459 if (element.hasDataPeriod()) { 24460 composePeriod("dataPeriod", element.getDataPeriod()); 24461 } 24462 if (element.hasData()) { 24463 for (Consent.ExceptDataComponent e : element.getData()) 24464 composeConsentExceptDataComponent("data", e); 24465 } 24466 } 24467 24468 protected void composeConsentExceptActorComponent(String name, Consent.ExceptActorComponent element) throws IOException { 24469 if (element != null) { 24470 composeElementAttributes(element); 24471 xml.enter(FHIR_NS, name); 24472 composeConsentExceptActorComponentElements(element); 24473 composeElementClose(element); 24474 xml.exit(FHIR_NS, name); 24475 } 24476 } 24477 24478 protected void composeConsentExceptActorComponentElements(Consent.ExceptActorComponent element) throws IOException { 24479 composeBackboneElements(element); 24480 if (element.hasRole()) { 24481 composeCodeableConcept("role", element.getRole()); 24482 } 24483 if (element.hasReference()) { 24484 composeReference("reference", element.getReference()); 24485 } 24486 } 24487 24488 protected void composeConsentExceptDataComponent(String name, Consent.ExceptDataComponent element) throws IOException { 24489 if (element != null) { 24490 composeElementAttributes(element); 24491 xml.enter(FHIR_NS, name); 24492 composeConsentExceptDataComponentElements(element); 24493 composeElementClose(element); 24494 xml.exit(FHIR_NS, name); 24495 } 24496 } 24497 24498 protected void composeConsentExceptDataComponentElements(Consent.ExceptDataComponent element) throws IOException { 24499 composeBackboneElements(element); 24500 if (element.hasMeaningElement()) 24501 composeEnumeration("meaning", element.getMeaningElement(), new Consent.ConsentDataMeaningEnumFactory()); 24502 if (element.hasReference()) { 24503 composeReference("reference", element.getReference()); 24504 } 24505 } 24506 24507 protected void composeContract(String name, Contract element) throws IOException { 24508 if (element != null) { 24509 composeDomainResourceAttributes(element); 24510 xml.enter(FHIR_NS, name); 24511 composeContractElements(element); 24512 composeElementClose(element); 24513 xml.exit(FHIR_NS, name); 24514 } 24515 } 24516 24517 protected void composeContractElements(Contract element) throws IOException { 24518 composeDomainResourceElements(element); 24519 if (element.hasIdentifier()) { 24520 composeIdentifier("identifier", element.getIdentifier()); 24521 } 24522 if (element.hasStatusElement()) 24523 composeEnumeration("status", element.getStatusElement(), new Contract.ContractStatusEnumFactory()); 24524 if (element.hasIssuedElement()) { 24525 composeDateTime("issued", element.getIssuedElement()); 24526 } 24527 if (element.hasApplies()) { 24528 composePeriod("applies", element.getApplies()); 24529 } 24530 if (element.hasSubject()) { 24531 for (Reference e : element.getSubject()) 24532 composeReference("subject", e); 24533 } 24534 if (element.hasTopic()) { 24535 for (Reference e : element.getTopic()) 24536 composeReference("topic", e); 24537 } 24538 if (element.hasAuthority()) { 24539 for (Reference e : element.getAuthority()) 24540 composeReference("authority", e); 24541 } 24542 if (element.hasDomain()) { 24543 for (Reference e : element.getDomain()) 24544 composeReference("domain", e); 24545 } 24546 if (element.hasType()) { 24547 composeCodeableConcept("type", element.getType()); 24548 } 24549 if (element.hasSubType()) { 24550 for (CodeableConcept e : element.getSubType()) 24551 composeCodeableConcept("subType", e); 24552 } 24553 if (element.hasAction()) { 24554 for (CodeableConcept e : element.getAction()) 24555 composeCodeableConcept("action", e); 24556 } 24557 if (element.hasActionReason()) { 24558 for (CodeableConcept e : element.getActionReason()) 24559 composeCodeableConcept("actionReason", e); 24560 } 24561 if (element.hasDecisionType()) { 24562 composeCodeableConcept("decisionType", element.getDecisionType()); 24563 } 24564 if (element.hasContentDerivative()) { 24565 composeCodeableConcept("contentDerivative", element.getContentDerivative()); 24566 } 24567 if (element.hasSecurityLabel()) { 24568 for (Coding e : element.getSecurityLabel()) 24569 composeCoding("securityLabel", e); 24570 } 24571 if (element.hasAgent()) { 24572 for (Contract.AgentComponent e : element.getAgent()) 24573 composeContractAgentComponent("agent", e); 24574 } 24575 if (element.hasSigner()) { 24576 for (Contract.SignatoryComponent e : element.getSigner()) 24577 composeContractSignatoryComponent("signer", e); 24578 } 24579 if (element.hasValuedItem()) { 24580 for (Contract.ValuedItemComponent e : element.getValuedItem()) 24581 composeContractValuedItemComponent("valuedItem", e); 24582 } 24583 if (element.hasTerm()) { 24584 for (Contract.TermComponent e : element.getTerm()) 24585 composeContractTermComponent("term", e); 24586 } 24587 if (element.hasBinding()) { 24588 composeType("binding", element.getBinding()); 24589 } if (element.hasFriendly()) { 24590 for (Contract.FriendlyLanguageComponent e : element.getFriendly()) 24591 composeContractFriendlyLanguageComponent("friendly", e); 24592 } 24593 if (element.hasLegal()) { 24594 for (Contract.LegalLanguageComponent e : element.getLegal()) 24595 composeContractLegalLanguageComponent("legal", e); 24596 } 24597 if (element.hasRule()) { 24598 for (Contract.ComputableLanguageComponent e : element.getRule()) 24599 composeContractComputableLanguageComponent("rule", e); 24600 } 24601 } 24602 24603 protected void composeContractAgentComponent(String name, Contract.AgentComponent element) throws IOException { 24604 if (element != null) { 24605 composeElementAttributes(element); 24606 xml.enter(FHIR_NS, name); 24607 composeContractAgentComponentElements(element); 24608 composeElementClose(element); 24609 xml.exit(FHIR_NS, name); 24610 } 24611 } 24612 24613 protected void composeContractAgentComponentElements(Contract.AgentComponent element) throws IOException { 24614 composeBackboneElements(element); 24615 if (element.hasActor()) { 24616 composeReference("actor", element.getActor()); 24617 } 24618 if (element.hasRole()) { 24619 for (CodeableConcept e : element.getRole()) 24620 composeCodeableConcept("role", e); 24621 } 24622 } 24623 24624 protected void composeContractSignatoryComponent(String name, Contract.SignatoryComponent element) throws IOException { 24625 if (element != null) { 24626 composeElementAttributes(element); 24627 xml.enter(FHIR_NS, name); 24628 composeContractSignatoryComponentElements(element); 24629 composeElementClose(element); 24630 xml.exit(FHIR_NS, name); 24631 } 24632 } 24633 24634 protected void composeContractSignatoryComponentElements(Contract.SignatoryComponent element) throws IOException { 24635 composeBackboneElements(element); 24636 if (element.hasType()) { 24637 composeCoding("type", element.getType()); 24638 } 24639 if (element.hasParty()) { 24640 composeReference("party", element.getParty()); 24641 } 24642 if (element.hasSignature()) { 24643 for (Signature e : element.getSignature()) 24644 composeSignature("signature", e); 24645 } 24646 } 24647 24648 protected void composeContractValuedItemComponent(String name, Contract.ValuedItemComponent element) throws IOException { 24649 if (element != null) { 24650 composeElementAttributes(element); 24651 xml.enter(FHIR_NS, name); 24652 composeContractValuedItemComponentElements(element); 24653 composeElementClose(element); 24654 xml.exit(FHIR_NS, name); 24655 } 24656 } 24657 24658 protected void composeContractValuedItemComponentElements(Contract.ValuedItemComponent element) throws IOException { 24659 composeBackboneElements(element); 24660 if (element.hasEntity()) { 24661 composeType("entity", element.getEntity()); 24662 } if (element.hasIdentifier()) { 24663 composeIdentifier("identifier", element.getIdentifier()); 24664 } 24665 if (element.hasEffectiveTimeElement()) { 24666 composeDateTime("effectiveTime", element.getEffectiveTimeElement()); 24667 } 24668 if (element.hasQuantity()) { 24669 composeSimpleQuantity("quantity", element.getQuantity()); 24670 } 24671 if (element.hasUnitPrice()) { 24672 composeMoney("unitPrice", element.getUnitPrice()); 24673 } 24674 if (element.hasFactorElement()) { 24675 composeDecimal("factor", element.getFactorElement()); 24676 } 24677 if (element.hasPointsElement()) { 24678 composeDecimal("points", element.getPointsElement()); 24679 } 24680 if (element.hasNet()) { 24681 composeMoney("net", element.getNet()); 24682 } 24683 } 24684 24685 protected void composeContractTermComponent(String name, Contract.TermComponent element) throws IOException { 24686 if (element != null) { 24687 composeElementAttributes(element); 24688 xml.enter(FHIR_NS, name); 24689 composeContractTermComponentElements(element); 24690 composeElementClose(element); 24691 xml.exit(FHIR_NS, name); 24692 } 24693 } 24694 24695 protected void composeContractTermComponentElements(Contract.TermComponent element) throws IOException { 24696 composeBackboneElements(element); 24697 if (element.hasIdentifier()) { 24698 composeIdentifier("identifier", element.getIdentifier()); 24699 } 24700 if (element.hasIssuedElement()) { 24701 composeDateTime("issued", element.getIssuedElement()); 24702 } 24703 if (element.hasApplies()) { 24704 composePeriod("applies", element.getApplies()); 24705 } 24706 if (element.hasType()) { 24707 composeCodeableConcept("type", element.getType()); 24708 } 24709 if (element.hasSubType()) { 24710 composeCodeableConcept("subType", element.getSubType()); 24711 } 24712 if (element.hasTopic()) { 24713 for (Reference e : element.getTopic()) 24714 composeReference("topic", e); 24715 } 24716 if (element.hasAction()) { 24717 for (CodeableConcept e : element.getAction()) 24718 composeCodeableConcept("action", e); 24719 } 24720 if (element.hasActionReason()) { 24721 for (CodeableConcept e : element.getActionReason()) 24722 composeCodeableConcept("actionReason", e); 24723 } 24724 if (element.hasSecurityLabel()) { 24725 for (Coding e : element.getSecurityLabel()) 24726 composeCoding("securityLabel", e); 24727 } 24728 if (element.hasAgent()) { 24729 for (Contract.TermAgentComponent e : element.getAgent()) 24730 composeContractTermAgentComponent("agent", e); 24731 } 24732 if (element.hasTextElement()) { 24733 composeString("text", element.getTextElement()); 24734 } 24735 if (element.hasValuedItem()) { 24736 for (Contract.TermValuedItemComponent e : element.getValuedItem()) 24737 composeContractTermValuedItemComponent("valuedItem", e); 24738 } 24739 if (element.hasGroup()) { 24740 for (Contract.TermComponent e : element.getGroup()) 24741 composeContractTermComponent("group", e); 24742 } 24743 } 24744 24745 protected void composeContractTermAgentComponent(String name, Contract.TermAgentComponent element) throws IOException { 24746 if (element != null) { 24747 composeElementAttributes(element); 24748 xml.enter(FHIR_NS, name); 24749 composeContractTermAgentComponentElements(element); 24750 composeElementClose(element); 24751 xml.exit(FHIR_NS, name); 24752 } 24753 } 24754 24755 protected void composeContractTermAgentComponentElements(Contract.TermAgentComponent element) throws IOException { 24756 composeBackboneElements(element); 24757 if (element.hasActor()) { 24758 composeReference("actor", element.getActor()); 24759 } 24760 if (element.hasRole()) { 24761 for (CodeableConcept e : element.getRole()) 24762 composeCodeableConcept("role", e); 24763 } 24764 } 24765 24766 protected void composeContractTermValuedItemComponent(String name, Contract.TermValuedItemComponent element) throws IOException { 24767 if (element != null) { 24768 composeElementAttributes(element); 24769 xml.enter(FHIR_NS, name); 24770 composeContractTermValuedItemComponentElements(element); 24771 composeElementClose(element); 24772 xml.exit(FHIR_NS, name); 24773 } 24774 } 24775 24776 protected void composeContractTermValuedItemComponentElements(Contract.TermValuedItemComponent element) throws IOException { 24777 composeBackboneElements(element); 24778 if (element.hasEntity()) { 24779 composeType("entity", element.getEntity()); 24780 } if (element.hasIdentifier()) { 24781 composeIdentifier("identifier", element.getIdentifier()); 24782 } 24783 if (element.hasEffectiveTimeElement()) { 24784 composeDateTime("effectiveTime", element.getEffectiveTimeElement()); 24785 } 24786 if (element.hasQuantity()) { 24787 composeSimpleQuantity("quantity", element.getQuantity()); 24788 } 24789 if (element.hasUnitPrice()) { 24790 composeMoney("unitPrice", element.getUnitPrice()); 24791 } 24792 if (element.hasFactorElement()) { 24793 composeDecimal("factor", element.getFactorElement()); 24794 } 24795 if (element.hasPointsElement()) { 24796 composeDecimal("points", element.getPointsElement()); 24797 } 24798 if (element.hasNet()) { 24799 composeMoney("net", element.getNet()); 24800 } 24801 } 24802 24803 protected void composeContractFriendlyLanguageComponent(String name, Contract.FriendlyLanguageComponent element) throws IOException { 24804 if (element != null) { 24805 composeElementAttributes(element); 24806 xml.enter(FHIR_NS, name); 24807 composeContractFriendlyLanguageComponentElements(element); 24808 composeElementClose(element); 24809 xml.exit(FHIR_NS, name); 24810 } 24811 } 24812 24813 protected void composeContractFriendlyLanguageComponentElements(Contract.FriendlyLanguageComponent element) throws IOException { 24814 composeBackboneElements(element); 24815 if (element.hasContent()) { 24816 composeType("content", element.getContent()); 24817 } } 24818 24819 protected void composeContractLegalLanguageComponent(String name, Contract.LegalLanguageComponent element) throws IOException { 24820 if (element != null) { 24821 composeElementAttributes(element); 24822 xml.enter(FHIR_NS, name); 24823 composeContractLegalLanguageComponentElements(element); 24824 composeElementClose(element); 24825 xml.exit(FHIR_NS, name); 24826 } 24827 } 24828 24829 protected void composeContractLegalLanguageComponentElements(Contract.LegalLanguageComponent element) throws IOException { 24830 composeBackboneElements(element); 24831 if (element.hasContent()) { 24832 composeType("content", element.getContent()); 24833 } } 24834 24835 protected void composeContractComputableLanguageComponent(String name, Contract.ComputableLanguageComponent element) throws IOException { 24836 if (element != null) { 24837 composeElementAttributes(element); 24838 xml.enter(FHIR_NS, name); 24839 composeContractComputableLanguageComponentElements(element); 24840 composeElementClose(element); 24841 xml.exit(FHIR_NS, name); 24842 } 24843 } 24844 24845 protected void composeContractComputableLanguageComponentElements(Contract.ComputableLanguageComponent element) throws IOException { 24846 composeBackboneElements(element); 24847 if (element.hasContent()) { 24848 composeType("content", element.getContent()); 24849 } } 24850 24851 protected void composeCoverage(String name, Coverage element) throws IOException { 24852 if (element != null) { 24853 composeDomainResourceAttributes(element); 24854 xml.enter(FHIR_NS, name); 24855 composeCoverageElements(element); 24856 composeElementClose(element); 24857 xml.exit(FHIR_NS, name); 24858 } 24859 } 24860 24861 protected void composeCoverageElements(Coverage element) throws IOException { 24862 composeDomainResourceElements(element); 24863 if (element.hasIdentifier()) { 24864 for (Identifier e : element.getIdentifier()) 24865 composeIdentifier("identifier", e); 24866 } 24867 if (element.hasStatusElement()) 24868 composeEnumeration("status", element.getStatusElement(), new Coverage.CoverageStatusEnumFactory()); 24869 if (element.hasType()) { 24870 composeCodeableConcept("type", element.getType()); 24871 } 24872 if (element.hasPolicyHolder()) { 24873 composeReference("policyHolder", element.getPolicyHolder()); 24874 } 24875 if (element.hasSubscriber()) { 24876 composeReference("subscriber", element.getSubscriber()); 24877 } 24878 if (element.hasSubscriberIdElement()) { 24879 composeString("subscriberId", element.getSubscriberIdElement()); 24880 } 24881 if (element.hasBeneficiary()) { 24882 composeReference("beneficiary", element.getBeneficiary()); 24883 } 24884 if (element.hasRelationship()) { 24885 composeCodeableConcept("relationship", element.getRelationship()); 24886 } 24887 if (element.hasPeriod()) { 24888 composePeriod("period", element.getPeriod()); 24889 } 24890 if (element.hasPayor()) { 24891 for (Reference e : element.getPayor()) 24892 composeReference("payor", e); 24893 } 24894 if (element.hasGrouping()) { 24895 composeCoverageGroupComponent("grouping", element.getGrouping()); 24896 } 24897 if (element.hasDependentElement()) { 24898 composeString("dependent", element.getDependentElement()); 24899 } 24900 if (element.hasSequenceElement()) { 24901 composeString("sequence", element.getSequenceElement()); 24902 } 24903 if (element.hasOrderElement()) { 24904 composePositiveInt("order", element.getOrderElement()); 24905 } 24906 if (element.hasNetworkElement()) { 24907 composeString("network", element.getNetworkElement()); 24908 } 24909 if (element.hasContract()) { 24910 for (Reference e : element.getContract()) 24911 composeReference("contract", e); 24912 } 24913 } 24914 24915 protected void composeCoverageGroupComponent(String name, Coverage.GroupComponent element) throws IOException { 24916 if (element != null) { 24917 composeElementAttributes(element); 24918 xml.enter(FHIR_NS, name); 24919 composeCoverageGroupComponentElements(element); 24920 composeElementClose(element); 24921 xml.exit(FHIR_NS, name); 24922 } 24923 } 24924 24925 protected void composeCoverageGroupComponentElements(Coverage.GroupComponent element) throws IOException { 24926 composeBackboneElements(element); 24927 if (element.hasGroupElement()) { 24928 composeString("group", element.getGroupElement()); 24929 } 24930 if (element.hasGroupDisplayElement()) { 24931 composeString("groupDisplay", element.getGroupDisplayElement()); 24932 } 24933 if (element.hasSubGroupElement()) { 24934 composeString("subGroup", element.getSubGroupElement()); 24935 } 24936 if (element.hasSubGroupDisplayElement()) { 24937 composeString("subGroupDisplay", element.getSubGroupDisplayElement()); 24938 } 24939 if (element.hasPlanElement()) { 24940 composeString("plan", element.getPlanElement()); 24941 } 24942 if (element.hasPlanDisplayElement()) { 24943 composeString("planDisplay", element.getPlanDisplayElement()); 24944 } 24945 if (element.hasSubPlanElement()) { 24946 composeString("subPlan", element.getSubPlanElement()); 24947 } 24948 if (element.hasSubPlanDisplayElement()) { 24949 composeString("subPlanDisplay", element.getSubPlanDisplayElement()); 24950 } 24951 if (element.hasClass_Element()) { 24952 composeString("class", element.getClass_Element()); 24953 } 24954 if (element.hasClassDisplayElement()) { 24955 composeString("classDisplay", element.getClassDisplayElement()); 24956 } 24957 if (element.hasSubClassElement()) { 24958 composeString("subClass", element.getSubClassElement()); 24959 } 24960 if (element.hasSubClassDisplayElement()) { 24961 composeString("subClassDisplay", element.getSubClassDisplayElement()); 24962 } 24963 } 24964 24965 protected void composeDataElement(String name, DataElement element) throws IOException { 24966 if (element != null) { 24967 composeDomainResourceAttributes(element); 24968 xml.enter(FHIR_NS, name); 24969 composeDataElementElements(element); 24970 composeElementClose(element); 24971 xml.exit(FHIR_NS, name); 24972 } 24973 } 24974 24975 protected void composeDataElementElements(DataElement element) throws IOException { 24976 composeDomainResourceElements(element); 24977 if (element.hasUrlElement()) { 24978 composeUri("url", element.getUrlElement()); 24979 } 24980 if (element.hasIdentifier()) { 24981 for (Identifier e : element.getIdentifier()) 24982 composeIdentifier("identifier", e); 24983 } 24984 if (element.hasVersionElement()) { 24985 composeString("version", element.getVersionElement()); 24986 } 24987 if (element.hasStatusElement()) 24988 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 24989 if (element.hasExperimentalElement()) { 24990 composeBoolean("experimental", element.getExperimentalElement()); 24991 } 24992 if (element.hasDateElement()) { 24993 composeDateTime("date", element.getDateElement()); 24994 } 24995 if (element.hasPublisherElement()) { 24996 composeString("publisher", element.getPublisherElement()); 24997 } 24998 if (element.hasNameElement()) { 24999 composeString("name", element.getNameElement()); 25000 } 25001 if (element.hasTitleElement()) { 25002 composeString("title", element.getTitleElement()); 25003 } 25004 if (element.hasContact()) { 25005 for (ContactDetail e : element.getContact()) 25006 composeContactDetail("contact", e); 25007 } 25008 if (element.hasUseContext()) { 25009 for (UsageContext e : element.getUseContext()) 25010 composeUsageContext("useContext", e); 25011 } 25012 if (element.hasJurisdiction()) { 25013 for (CodeableConcept e : element.getJurisdiction()) 25014 composeCodeableConcept("jurisdiction", e); 25015 } 25016 if (element.hasCopyrightElement()) { 25017 composeMarkdown("copyright", element.getCopyrightElement()); 25018 } 25019 if (element.hasStringencyElement()) 25020 composeEnumeration("stringency", element.getStringencyElement(), new DataElement.DataElementStringencyEnumFactory()); 25021 if (element.hasMapping()) { 25022 for (DataElement.DataElementMappingComponent e : element.getMapping()) 25023 composeDataElementDataElementMappingComponent("mapping", e); 25024 } 25025 if (element.hasElement()) { 25026 for (ElementDefinition e : element.getElement()) 25027 composeElementDefinition("element", e); 25028 } 25029 } 25030 25031 protected void composeDataElementDataElementMappingComponent(String name, DataElement.DataElementMappingComponent element) throws IOException { 25032 if (element != null) { 25033 composeElementAttributes(element); 25034 xml.enter(FHIR_NS, name); 25035 composeDataElementDataElementMappingComponentElements(element); 25036 composeElementClose(element); 25037 xml.exit(FHIR_NS, name); 25038 } 25039 } 25040 25041 protected void composeDataElementDataElementMappingComponentElements(DataElement.DataElementMappingComponent element) throws IOException { 25042 composeBackboneElements(element); 25043 if (element.hasIdentityElement()) { 25044 composeId("identity", element.getIdentityElement()); 25045 } 25046 if (element.hasUriElement()) { 25047 composeUri("uri", element.getUriElement()); 25048 } 25049 if (element.hasNameElement()) { 25050 composeString("name", element.getNameElement()); 25051 } 25052 if (element.hasCommentElement()) { 25053 composeString("comment", element.getCommentElement()); 25054 } 25055 } 25056 25057 protected void composeDetectedIssue(String name, DetectedIssue element) throws IOException { 25058 if (element != null) { 25059 composeDomainResourceAttributes(element); 25060 xml.enter(FHIR_NS, name); 25061 composeDetectedIssueElements(element); 25062 composeElementClose(element); 25063 xml.exit(FHIR_NS, name); 25064 } 25065 } 25066 25067 protected void composeDetectedIssueElements(DetectedIssue element) throws IOException { 25068 composeDomainResourceElements(element); 25069 if (element.hasIdentifier()) { 25070 composeIdentifier("identifier", element.getIdentifier()); 25071 } 25072 if (element.hasStatusElement()) 25073 composeEnumeration("status", element.getStatusElement(), new DetectedIssue.DetectedIssueStatusEnumFactory()); 25074 if (element.hasCategory()) { 25075 composeCodeableConcept("category", element.getCategory()); 25076 } 25077 if (element.hasSeverityElement()) 25078 composeEnumeration("severity", element.getSeverityElement(), new DetectedIssue.DetectedIssueSeverityEnumFactory()); 25079 if (element.hasPatient()) { 25080 composeReference("patient", element.getPatient()); 25081 } 25082 if (element.hasDateElement()) { 25083 composeDateTime("date", element.getDateElement()); 25084 } 25085 if (element.hasAuthor()) { 25086 composeReference("author", element.getAuthor()); 25087 } 25088 if (element.hasImplicated()) { 25089 for (Reference e : element.getImplicated()) 25090 composeReference("implicated", e); 25091 } 25092 if (element.hasDetailElement()) { 25093 composeString("detail", element.getDetailElement()); 25094 } 25095 if (element.hasReferenceElement()) { 25096 composeUri("reference", element.getReferenceElement()); 25097 } 25098 if (element.hasMitigation()) { 25099 for (DetectedIssue.DetectedIssueMitigationComponent e : element.getMitigation()) 25100 composeDetectedIssueDetectedIssueMitigationComponent("mitigation", e); 25101 } 25102 } 25103 25104 protected void composeDetectedIssueDetectedIssueMitigationComponent(String name, DetectedIssue.DetectedIssueMitigationComponent element) throws IOException { 25105 if (element != null) { 25106 composeElementAttributes(element); 25107 xml.enter(FHIR_NS, name); 25108 composeDetectedIssueDetectedIssueMitigationComponentElements(element); 25109 composeElementClose(element); 25110 xml.exit(FHIR_NS, name); 25111 } 25112 } 25113 25114 protected void composeDetectedIssueDetectedIssueMitigationComponentElements(DetectedIssue.DetectedIssueMitigationComponent element) throws IOException { 25115 composeBackboneElements(element); 25116 if (element.hasAction()) { 25117 composeCodeableConcept("action", element.getAction()); 25118 } 25119 if (element.hasDateElement()) { 25120 composeDateTime("date", element.getDateElement()); 25121 } 25122 if (element.hasAuthor()) { 25123 composeReference("author", element.getAuthor()); 25124 } 25125 } 25126 25127 protected void composeDevice(String name, Device element) throws IOException { 25128 if (element != null) { 25129 composeDomainResourceAttributes(element); 25130 xml.enter(FHIR_NS, name); 25131 composeDeviceElements(element); 25132 composeElementClose(element); 25133 xml.exit(FHIR_NS, name); 25134 } 25135 } 25136 25137 protected void composeDeviceElements(Device element) throws IOException { 25138 composeDomainResourceElements(element); 25139 if (element.hasIdentifier()) { 25140 for (Identifier e : element.getIdentifier()) 25141 composeIdentifier("identifier", e); 25142 } 25143 if (element.hasUdi()) { 25144 composeDeviceDeviceUdiComponent("udi", element.getUdi()); 25145 } 25146 if (element.hasStatusElement()) 25147 composeEnumeration("status", element.getStatusElement(), new Device.FHIRDeviceStatusEnumFactory()); 25148 if (element.hasType()) { 25149 composeCodeableConcept("type", element.getType()); 25150 } 25151 if (element.hasLotNumberElement()) { 25152 composeString("lotNumber", element.getLotNumberElement()); 25153 } 25154 if (element.hasManufacturerElement()) { 25155 composeString("manufacturer", element.getManufacturerElement()); 25156 } 25157 if (element.hasManufactureDateElement()) { 25158 composeDateTime("manufactureDate", element.getManufactureDateElement()); 25159 } 25160 if (element.hasExpirationDateElement()) { 25161 composeDateTime("expirationDate", element.getExpirationDateElement()); 25162 } 25163 if (element.hasModelElement()) { 25164 composeString("model", element.getModelElement()); 25165 } 25166 if (element.hasVersionElement()) { 25167 composeString("version", element.getVersionElement()); 25168 } 25169 if (element.hasPatient()) { 25170 composeReference("patient", element.getPatient()); 25171 } 25172 if (element.hasOwner()) { 25173 composeReference("owner", element.getOwner()); 25174 } 25175 if (element.hasContact()) { 25176 for (ContactPoint e : element.getContact()) 25177 composeContactPoint("contact", e); 25178 } 25179 if (element.hasLocation()) { 25180 composeReference("location", element.getLocation()); 25181 } 25182 if (element.hasUrlElement()) { 25183 composeUri("url", element.getUrlElement()); 25184 } 25185 if (element.hasNote()) { 25186 for (Annotation e : element.getNote()) 25187 composeAnnotation("note", e); 25188 } 25189 if (element.hasSafety()) { 25190 for (CodeableConcept e : element.getSafety()) 25191 composeCodeableConcept("safety", e); 25192 } 25193 } 25194 25195 protected void composeDeviceDeviceUdiComponent(String name, Device.DeviceUdiComponent element) throws IOException { 25196 if (element != null) { 25197 composeElementAttributes(element); 25198 xml.enter(FHIR_NS, name); 25199 composeDeviceDeviceUdiComponentElements(element); 25200 composeElementClose(element); 25201 xml.exit(FHIR_NS, name); 25202 } 25203 } 25204 25205 protected void composeDeviceDeviceUdiComponentElements(Device.DeviceUdiComponent element) throws IOException { 25206 composeBackboneElements(element); 25207 if (element.hasDeviceIdentifierElement()) { 25208 composeString("deviceIdentifier", element.getDeviceIdentifierElement()); 25209 } 25210 if (element.hasNameElement()) { 25211 composeString("name", element.getNameElement()); 25212 } 25213 if (element.hasJurisdictionElement()) { 25214 composeUri("jurisdiction", element.getJurisdictionElement()); 25215 } 25216 if (element.hasCarrierHRFElement()) { 25217 composeString("carrierHRF", element.getCarrierHRFElement()); 25218 } 25219 if (element.hasCarrierAIDCElement()) { 25220 composeBase64Binary("carrierAIDC", element.getCarrierAIDCElement()); 25221 } 25222 if (element.hasIssuerElement()) { 25223 composeUri("issuer", element.getIssuerElement()); 25224 } 25225 if (element.hasEntryTypeElement()) 25226 composeEnumeration("entryType", element.getEntryTypeElement(), new Device.UDIEntryTypeEnumFactory()); 25227 } 25228 25229 protected void composeDeviceComponent(String name, DeviceComponent element) throws IOException { 25230 if (element != null) { 25231 composeDomainResourceAttributes(element); 25232 xml.enter(FHIR_NS, name); 25233 composeDeviceComponentElements(element); 25234 composeElementClose(element); 25235 xml.exit(FHIR_NS, name); 25236 } 25237 } 25238 25239 protected void composeDeviceComponentElements(DeviceComponent element) throws IOException { 25240 composeDomainResourceElements(element); 25241 if (element.hasIdentifier()) { 25242 composeIdentifier("identifier", element.getIdentifier()); 25243 } 25244 if (element.hasType()) { 25245 composeCodeableConcept("type", element.getType()); 25246 } 25247 if (element.hasLastSystemChangeElement()) { 25248 composeInstant("lastSystemChange", element.getLastSystemChangeElement()); 25249 } 25250 if (element.hasSource()) { 25251 composeReference("source", element.getSource()); 25252 } 25253 if (element.hasParent()) { 25254 composeReference("parent", element.getParent()); 25255 } 25256 if (element.hasOperationalStatus()) { 25257 for (CodeableConcept e : element.getOperationalStatus()) 25258 composeCodeableConcept("operationalStatus", e); 25259 } 25260 if (element.hasParameterGroup()) { 25261 composeCodeableConcept("parameterGroup", element.getParameterGroup()); 25262 } 25263 if (element.hasMeasurementPrincipleElement()) 25264 composeEnumeration("measurementPrinciple", element.getMeasurementPrincipleElement(), new DeviceComponent.MeasmntPrincipleEnumFactory()); 25265 if (element.hasProductionSpecification()) { 25266 for (DeviceComponent.DeviceComponentProductionSpecificationComponent e : element.getProductionSpecification()) 25267 composeDeviceComponentDeviceComponentProductionSpecificationComponent("productionSpecification", e); 25268 } 25269 if (element.hasLanguageCode()) { 25270 composeCodeableConcept("languageCode", element.getLanguageCode()); 25271 } 25272 } 25273 25274 protected void composeDeviceComponentDeviceComponentProductionSpecificationComponent(String name, DeviceComponent.DeviceComponentProductionSpecificationComponent element) throws IOException { 25275 if (element != null) { 25276 composeElementAttributes(element); 25277 xml.enter(FHIR_NS, name); 25278 composeDeviceComponentDeviceComponentProductionSpecificationComponentElements(element); 25279 composeElementClose(element); 25280 xml.exit(FHIR_NS, name); 25281 } 25282 } 25283 25284 protected void composeDeviceComponentDeviceComponentProductionSpecificationComponentElements(DeviceComponent.DeviceComponentProductionSpecificationComponent element) throws IOException { 25285 composeBackboneElements(element); 25286 if (element.hasSpecType()) { 25287 composeCodeableConcept("specType", element.getSpecType()); 25288 } 25289 if (element.hasComponentId()) { 25290 composeIdentifier("componentId", element.getComponentId()); 25291 } 25292 if (element.hasProductionSpecElement()) { 25293 composeString("productionSpec", element.getProductionSpecElement()); 25294 } 25295 } 25296 25297 protected void composeDeviceMetric(String name, DeviceMetric element) throws IOException { 25298 if (element != null) { 25299 composeDomainResourceAttributes(element); 25300 xml.enter(FHIR_NS, name); 25301 composeDeviceMetricElements(element); 25302 composeElementClose(element); 25303 xml.exit(FHIR_NS, name); 25304 } 25305 } 25306 25307 protected void composeDeviceMetricElements(DeviceMetric element) throws IOException { 25308 composeDomainResourceElements(element); 25309 if (element.hasIdentifier()) { 25310 composeIdentifier("identifier", element.getIdentifier()); 25311 } 25312 if (element.hasType()) { 25313 composeCodeableConcept("type", element.getType()); 25314 } 25315 if (element.hasUnit()) { 25316 composeCodeableConcept("unit", element.getUnit()); 25317 } 25318 if (element.hasSource()) { 25319 composeReference("source", element.getSource()); 25320 } 25321 if (element.hasParent()) { 25322 composeReference("parent", element.getParent()); 25323 } 25324 if (element.hasOperationalStatusElement()) 25325 composeEnumeration("operationalStatus", element.getOperationalStatusElement(), new DeviceMetric.DeviceMetricOperationalStatusEnumFactory()); 25326 if (element.hasColorElement()) 25327 composeEnumeration("color", element.getColorElement(), new DeviceMetric.DeviceMetricColorEnumFactory()); 25328 if (element.hasCategoryElement()) 25329 composeEnumeration("category", element.getCategoryElement(), new DeviceMetric.DeviceMetricCategoryEnumFactory()); 25330 if (element.hasMeasurementPeriod()) { 25331 composeTiming("measurementPeriod", element.getMeasurementPeriod()); 25332 } 25333 if (element.hasCalibration()) { 25334 for (DeviceMetric.DeviceMetricCalibrationComponent e : element.getCalibration()) 25335 composeDeviceMetricDeviceMetricCalibrationComponent("calibration", e); 25336 } 25337 } 25338 25339 protected void composeDeviceMetricDeviceMetricCalibrationComponent(String name, DeviceMetric.DeviceMetricCalibrationComponent element) throws IOException { 25340 if (element != null) { 25341 composeElementAttributes(element); 25342 xml.enter(FHIR_NS, name); 25343 composeDeviceMetricDeviceMetricCalibrationComponentElements(element); 25344 composeElementClose(element); 25345 xml.exit(FHIR_NS, name); 25346 } 25347 } 25348 25349 protected void composeDeviceMetricDeviceMetricCalibrationComponentElements(DeviceMetric.DeviceMetricCalibrationComponent element) throws IOException { 25350 composeBackboneElements(element); 25351 if (element.hasTypeElement()) 25352 composeEnumeration("type", element.getTypeElement(), new DeviceMetric.DeviceMetricCalibrationTypeEnumFactory()); 25353 if (element.hasStateElement()) 25354 composeEnumeration("state", element.getStateElement(), new DeviceMetric.DeviceMetricCalibrationStateEnumFactory()); 25355 if (element.hasTimeElement()) { 25356 composeInstant("time", element.getTimeElement()); 25357 } 25358 } 25359 25360 protected void composeDeviceRequest(String name, DeviceRequest element) throws IOException { 25361 if (element != null) { 25362 composeDomainResourceAttributes(element); 25363 xml.enter(FHIR_NS, name); 25364 composeDeviceRequestElements(element); 25365 composeElementClose(element); 25366 xml.exit(FHIR_NS, name); 25367 } 25368 } 25369 25370 protected void composeDeviceRequestElements(DeviceRequest element) throws IOException { 25371 composeDomainResourceElements(element); 25372 if (element.hasIdentifier()) { 25373 for (Identifier e : element.getIdentifier()) 25374 composeIdentifier("identifier", e); 25375 } 25376 if (element.hasDefinition()) { 25377 for (Reference e : element.getDefinition()) 25378 composeReference("definition", e); 25379 } 25380 if (element.hasBasedOn()) { 25381 for (Reference e : element.getBasedOn()) 25382 composeReference("basedOn", e); 25383 } 25384 if (element.hasPriorRequest()) { 25385 for (Reference e : element.getPriorRequest()) 25386 composeReference("priorRequest", e); 25387 } 25388 if (element.hasGroupIdentifier()) { 25389 composeIdentifier("groupIdentifier", element.getGroupIdentifier()); 25390 } 25391 if (element.hasStatusElement()) 25392 composeEnumeration("status", element.getStatusElement(), new DeviceRequest.DeviceRequestStatusEnumFactory()); 25393 if (element.hasIntent()) { 25394 composeCodeableConcept("intent", element.getIntent()); 25395 } 25396 if (element.hasPriorityElement()) 25397 composeEnumeration("priority", element.getPriorityElement(), new DeviceRequest.RequestPriorityEnumFactory()); 25398 if (element.hasCode()) { 25399 composeType("code", element.getCode()); 25400 } if (element.hasSubject()) { 25401 composeReference("subject", element.getSubject()); 25402 } 25403 if (element.hasContext()) { 25404 composeReference("context", element.getContext()); 25405 } 25406 if (element.hasOccurrence()) { 25407 composeType("occurrence", element.getOccurrence()); 25408 } if (element.hasAuthoredOnElement()) { 25409 composeDateTime("authoredOn", element.getAuthoredOnElement()); 25410 } 25411 if (element.hasRequester()) { 25412 composeDeviceRequestDeviceRequestRequesterComponent("requester", element.getRequester()); 25413 } 25414 if (element.hasPerformerType()) { 25415 composeCodeableConcept("performerType", element.getPerformerType()); 25416 } 25417 if (element.hasPerformer()) { 25418 composeReference("performer", element.getPerformer()); 25419 } 25420 if (element.hasReasonCode()) { 25421 for (CodeableConcept e : element.getReasonCode()) 25422 composeCodeableConcept("reasonCode", e); 25423 } 25424 if (element.hasReasonReference()) { 25425 for (Reference e : element.getReasonReference()) 25426 composeReference("reasonReference", e); 25427 } 25428 if (element.hasSupportingInfo()) { 25429 for (Reference e : element.getSupportingInfo()) 25430 composeReference("supportingInfo", e); 25431 } 25432 if (element.hasNote()) { 25433 for (Annotation e : element.getNote()) 25434 composeAnnotation("note", e); 25435 } 25436 if (element.hasRelevantHistory()) { 25437 for (Reference e : element.getRelevantHistory()) 25438 composeReference("relevantHistory", e); 25439 } 25440 } 25441 25442 protected void composeDeviceRequestDeviceRequestRequesterComponent(String name, DeviceRequest.DeviceRequestRequesterComponent element) throws IOException { 25443 if (element != null) { 25444 composeElementAttributes(element); 25445 xml.enter(FHIR_NS, name); 25446 composeDeviceRequestDeviceRequestRequesterComponentElements(element); 25447 composeElementClose(element); 25448 xml.exit(FHIR_NS, name); 25449 } 25450 } 25451 25452 protected void composeDeviceRequestDeviceRequestRequesterComponentElements(DeviceRequest.DeviceRequestRequesterComponent element) throws IOException { 25453 composeBackboneElements(element); 25454 if (element.hasAgent()) { 25455 composeReference("agent", element.getAgent()); 25456 } 25457 if (element.hasOnBehalfOf()) { 25458 composeReference("onBehalfOf", element.getOnBehalfOf()); 25459 } 25460 } 25461 25462 protected void composeDeviceUseStatement(String name, DeviceUseStatement element) throws IOException { 25463 if (element != null) { 25464 composeDomainResourceAttributes(element); 25465 xml.enter(FHIR_NS, name); 25466 composeDeviceUseStatementElements(element); 25467 composeElementClose(element); 25468 xml.exit(FHIR_NS, name); 25469 } 25470 } 25471 25472 protected void composeDeviceUseStatementElements(DeviceUseStatement element) throws IOException { 25473 composeDomainResourceElements(element); 25474 if (element.hasIdentifier()) { 25475 for (Identifier e : element.getIdentifier()) 25476 composeIdentifier("identifier", e); 25477 } 25478 if (element.hasStatusElement()) 25479 composeEnumeration("status", element.getStatusElement(), new DeviceUseStatement.DeviceUseStatementStatusEnumFactory()); 25480 if (element.hasSubject()) { 25481 composeReference("subject", element.getSubject()); 25482 } 25483 if (element.hasWhenUsed()) { 25484 composePeriod("whenUsed", element.getWhenUsed()); 25485 } 25486 if (element.hasTiming()) { 25487 composeType("timing", element.getTiming()); 25488 } if (element.hasRecordedOnElement()) { 25489 composeDateTime("recordedOn", element.getRecordedOnElement()); 25490 } 25491 if (element.hasSource()) { 25492 composeReference("source", element.getSource()); 25493 } 25494 if (element.hasDevice()) { 25495 composeReference("device", element.getDevice()); 25496 } 25497 if (element.hasIndication()) { 25498 for (CodeableConcept e : element.getIndication()) 25499 composeCodeableConcept("indication", e); 25500 } 25501 if (element.hasBodySite()) { 25502 composeCodeableConcept("bodySite", element.getBodySite()); 25503 } 25504 if (element.hasNote()) { 25505 for (Annotation e : element.getNote()) 25506 composeAnnotation("note", e); 25507 } 25508 } 25509 25510 protected void composeDiagnosticReport(String name, DiagnosticReport element) throws IOException { 25511 if (element != null) { 25512 composeDomainResourceAttributes(element); 25513 xml.enter(FHIR_NS, name); 25514 composeDiagnosticReportElements(element); 25515 composeElementClose(element); 25516 xml.exit(FHIR_NS, name); 25517 } 25518 } 25519 25520 protected void composeDiagnosticReportElements(DiagnosticReport element) throws IOException { 25521 composeDomainResourceElements(element); 25522 if (element.hasIdentifier()) { 25523 for (Identifier e : element.getIdentifier()) 25524 composeIdentifier("identifier", e); 25525 } 25526 if (element.hasBasedOn()) { 25527 for (Reference e : element.getBasedOn()) 25528 composeReference("basedOn", e); 25529 } 25530 if (element.hasStatusElement()) 25531 composeEnumeration("status", element.getStatusElement(), new DiagnosticReport.DiagnosticReportStatusEnumFactory()); 25532 if (element.hasCategory()) { 25533 composeCodeableConcept("category", element.getCategory()); 25534 } 25535 if (element.hasCode()) { 25536 composeCodeableConcept("code", element.getCode()); 25537 } 25538 if (element.hasSubject()) { 25539 composeReference("subject", element.getSubject()); 25540 } 25541 if (element.hasContext()) { 25542 composeReference("context", element.getContext()); 25543 } 25544 if (element.hasEffective()) { 25545 composeType("effective", element.getEffective()); 25546 } if (element.hasIssuedElement()) { 25547 composeInstant("issued", element.getIssuedElement()); 25548 } 25549 if (element.hasPerformer()) { 25550 for (DiagnosticReport.DiagnosticReportPerformerComponent e : element.getPerformer()) 25551 composeDiagnosticReportDiagnosticReportPerformerComponent("performer", e); 25552 } 25553 if (element.hasSpecimen()) { 25554 for (Reference e : element.getSpecimen()) 25555 composeReference("specimen", e); 25556 } 25557 if (element.hasResult()) { 25558 for (Reference e : element.getResult()) 25559 composeReference("result", e); 25560 } 25561 if (element.hasImagingStudy()) { 25562 for (Reference e : element.getImagingStudy()) 25563 composeReference("imagingStudy", e); 25564 } 25565 if (element.hasImage()) { 25566 for (DiagnosticReport.DiagnosticReportImageComponent e : element.getImage()) 25567 composeDiagnosticReportDiagnosticReportImageComponent("image", e); 25568 } 25569 if (element.hasConclusionElement()) { 25570 composeString("conclusion", element.getConclusionElement()); 25571 } 25572 if (element.hasCodedDiagnosis()) { 25573 for (CodeableConcept e : element.getCodedDiagnosis()) 25574 composeCodeableConcept("codedDiagnosis", e); 25575 } 25576 if (element.hasPresentedForm()) { 25577 for (Attachment e : element.getPresentedForm()) 25578 composeAttachment("presentedForm", e); 25579 } 25580 } 25581 25582 protected void composeDiagnosticReportDiagnosticReportPerformerComponent(String name, DiagnosticReport.DiagnosticReportPerformerComponent element) throws IOException { 25583 if (element != null) { 25584 composeElementAttributes(element); 25585 xml.enter(FHIR_NS, name); 25586 composeDiagnosticReportDiagnosticReportPerformerComponentElements(element); 25587 composeElementClose(element); 25588 xml.exit(FHIR_NS, name); 25589 } 25590 } 25591 25592 protected void composeDiagnosticReportDiagnosticReportPerformerComponentElements(DiagnosticReport.DiagnosticReportPerformerComponent element) throws IOException { 25593 composeBackboneElements(element); 25594 if (element.hasRole()) { 25595 composeCodeableConcept("role", element.getRole()); 25596 } 25597 if (element.hasActor()) { 25598 composeReference("actor", element.getActor()); 25599 } 25600 } 25601 25602 protected void composeDiagnosticReportDiagnosticReportImageComponent(String name, DiagnosticReport.DiagnosticReportImageComponent element) throws IOException { 25603 if (element != null) { 25604 composeElementAttributes(element); 25605 xml.enter(FHIR_NS, name); 25606 composeDiagnosticReportDiagnosticReportImageComponentElements(element); 25607 composeElementClose(element); 25608 xml.exit(FHIR_NS, name); 25609 } 25610 } 25611 25612 protected void composeDiagnosticReportDiagnosticReportImageComponentElements(DiagnosticReport.DiagnosticReportImageComponent element) throws IOException { 25613 composeBackboneElements(element); 25614 if (element.hasCommentElement()) { 25615 composeString("comment", element.getCommentElement()); 25616 } 25617 if (element.hasLink()) { 25618 composeReference("link", element.getLink()); 25619 } 25620 } 25621 25622 protected void composeDocumentManifest(String name, DocumentManifest element) throws IOException { 25623 if (element != null) { 25624 composeDomainResourceAttributes(element); 25625 xml.enter(FHIR_NS, name); 25626 composeDocumentManifestElements(element); 25627 composeElementClose(element); 25628 xml.exit(FHIR_NS, name); 25629 } 25630 } 25631 25632 protected void composeDocumentManifestElements(DocumentManifest element) throws IOException { 25633 composeDomainResourceElements(element); 25634 if (element.hasMasterIdentifier()) { 25635 composeIdentifier("masterIdentifier", element.getMasterIdentifier()); 25636 } 25637 if (element.hasIdentifier()) { 25638 for (Identifier e : element.getIdentifier()) 25639 composeIdentifier("identifier", e); 25640 } 25641 if (element.hasStatusElement()) 25642 composeEnumeration("status", element.getStatusElement(), new Enumerations.DocumentReferenceStatusEnumFactory()); 25643 if (element.hasType()) { 25644 composeCodeableConcept("type", element.getType()); 25645 } 25646 if (element.hasSubject()) { 25647 composeReference("subject", element.getSubject()); 25648 } 25649 if (element.hasCreatedElement()) { 25650 composeDateTime("created", element.getCreatedElement()); 25651 } 25652 if (element.hasAuthor()) { 25653 for (Reference e : element.getAuthor()) 25654 composeReference("author", e); 25655 } 25656 if (element.hasRecipient()) { 25657 for (Reference e : element.getRecipient()) 25658 composeReference("recipient", e); 25659 } 25660 if (element.hasSourceElement()) { 25661 composeUri("source", element.getSourceElement()); 25662 } 25663 if (element.hasDescriptionElement()) { 25664 composeString("description", element.getDescriptionElement()); 25665 } 25666 if (element.hasContent()) { 25667 for (DocumentManifest.DocumentManifestContentComponent e : element.getContent()) 25668 composeDocumentManifestDocumentManifestContentComponent("content", e); 25669 } 25670 if (element.hasRelated()) { 25671 for (DocumentManifest.DocumentManifestRelatedComponent e : element.getRelated()) 25672 composeDocumentManifestDocumentManifestRelatedComponent("related", e); 25673 } 25674 } 25675 25676 protected void composeDocumentManifestDocumentManifestContentComponent(String name, DocumentManifest.DocumentManifestContentComponent element) throws IOException { 25677 if (element != null) { 25678 composeElementAttributes(element); 25679 xml.enter(FHIR_NS, name); 25680 composeDocumentManifestDocumentManifestContentComponentElements(element); 25681 composeElementClose(element); 25682 xml.exit(FHIR_NS, name); 25683 } 25684 } 25685 25686 protected void composeDocumentManifestDocumentManifestContentComponentElements(DocumentManifest.DocumentManifestContentComponent element) throws IOException { 25687 composeBackboneElements(element); 25688 if (element.hasP()) { 25689 composeType("p", element.getP()); 25690 } } 25691 25692 protected void composeDocumentManifestDocumentManifestRelatedComponent(String name, DocumentManifest.DocumentManifestRelatedComponent element) throws IOException { 25693 if (element != null) { 25694 composeElementAttributes(element); 25695 xml.enter(FHIR_NS, name); 25696 composeDocumentManifestDocumentManifestRelatedComponentElements(element); 25697 composeElementClose(element); 25698 xml.exit(FHIR_NS, name); 25699 } 25700 } 25701 25702 protected void composeDocumentManifestDocumentManifestRelatedComponentElements(DocumentManifest.DocumentManifestRelatedComponent element) throws IOException { 25703 composeBackboneElements(element); 25704 if (element.hasIdentifier()) { 25705 composeIdentifier("identifier", element.getIdentifier()); 25706 } 25707 if (element.hasRef()) { 25708 composeReference("ref", element.getRef()); 25709 } 25710 } 25711 25712 protected void composeDocumentReference(String name, DocumentReference element) throws IOException { 25713 if (element != null) { 25714 composeDomainResourceAttributes(element); 25715 xml.enter(FHIR_NS, name); 25716 composeDocumentReferenceElements(element); 25717 composeElementClose(element); 25718 xml.exit(FHIR_NS, name); 25719 } 25720 } 25721 25722 protected void composeDocumentReferenceElements(DocumentReference element) throws IOException { 25723 composeDomainResourceElements(element); 25724 if (element.hasMasterIdentifier()) { 25725 composeIdentifier("masterIdentifier", element.getMasterIdentifier()); 25726 } 25727 if (element.hasIdentifier()) { 25728 for (Identifier e : element.getIdentifier()) 25729 composeIdentifier("identifier", e); 25730 } 25731 if (element.hasStatusElement()) 25732 composeEnumeration("status", element.getStatusElement(), new Enumerations.DocumentReferenceStatusEnumFactory()); 25733 if (element.hasDocStatusElement()) 25734 composeEnumeration("docStatus", element.getDocStatusElement(), new DocumentReference.ReferredDocumentStatusEnumFactory()); 25735 if (element.hasType()) { 25736 composeCodeableConcept("type", element.getType()); 25737 } 25738 if (element.hasClass_()) { 25739 composeCodeableConcept("class", element.getClass_()); 25740 } 25741 if (element.hasSubject()) { 25742 composeReference("subject", element.getSubject()); 25743 } 25744 if (element.hasCreatedElement()) { 25745 composeDateTime("created", element.getCreatedElement()); 25746 } 25747 if (element.hasIndexedElement()) { 25748 composeInstant("indexed", element.getIndexedElement()); 25749 } 25750 if (element.hasAuthor()) { 25751 for (Reference e : element.getAuthor()) 25752 composeReference("author", e); 25753 } 25754 if (element.hasAuthenticator()) { 25755 composeReference("authenticator", element.getAuthenticator()); 25756 } 25757 if (element.hasCustodian()) { 25758 composeReference("custodian", element.getCustodian()); 25759 } 25760 if (element.hasRelatesTo()) { 25761 for (DocumentReference.DocumentReferenceRelatesToComponent e : element.getRelatesTo()) 25762 composeDocumentReferenceDocumentReferenceRelatesToComponent("relatesTo", e); 25763 } 25764 if (element.hasDescriptionElement()) { 25765 composeString("description", element.getDescriptionElement()); 25766 } 25767 if (element.hasSecurityLabel()) { 25768 for (CodeableConcept e : element.getSecurityLabel()) 25769 composeCodeableConcept("securityLabel", e); 25770 } 25771 if (element.hasContent()) { 25772 for (DocumentReference.DocumentReferenceContentComponent e : element.getContent()) 25773 composeDocumentReferenceDocumentReferenceContentComponent("content", e); 25774 } 25775 if (element.hasContext()) { 25776 composeDocumentReferenceDocumentReferenceContextComponent("context", element.getContext()); 25777 } 25778 } 25779 25780 protected void composeDocumentReferenceDocumentReferenceRelatesToComponent(String name, DocumentReference.DocumentReferenceRelatesToComponent element) throws IOException { 25781 if (element != null) { 25782 composeElementAttributes(element); 25783 xml.enter(FHIR_NS, name); 25784 composeDocumentReferenceDocumentReferenceRelatesToComponentElements(element); 25785 composeElementClose(element); 25786 xml.exit(FHIR_NS, name); 25787 } 25788 } 25789 25790 protected void composeDocumentReferenceDocumentReferenceRelatesToComponentElements(DocumentReference.DocumentReferenceRelatesToComponent element) throws IOException { 25791 composeBackboneElements(element); 25792 if (element.hasCodeElement()) 25793 composeEnumeration("code", element.getCodeElement(), new DocumentReference.DocumentRelationshipTypeEnumFactory()); 25794 if (element.hasTarget()) { 25795 composeReference("target", element.getTarget()); 25796 } 25797 } 25798 25799 protected void composeDocumentReferenceDocumentReferenceContentComponent(String name, DocumentReference.DocumentReferenceContentComponent element) throws IOException { 25800 if (element != null) { 25801 composeElementAttributes(element); 25802 xml.enter(FHIR_NS, name); 25803 composeDocumentReferenceDocumentReferenceContentComponentElements(element); 25804 composeElementClose(element); 25805 xml.exit(FHIR_NS, name); 25806 } 25807 } 25808 25809 protected void composeDocumentReferenceDocumentReferenceContentComponentElements(DocumentReference.DocumentReferenceContentComponent element) throws IOException { 25810 composeBackboneElements(element); 25811 if (element.hasAttachment()) { 25812 composeAttachment("attachment", element.getAttachment()); 25813 } 25814 if (element.hasFormat()) { 25815 composeCoding("format", element.getFormat()); 25816 } 25817 } 25818 25819 protected void composeDocumentReferenceDocumentReferenceContextComponent(String name, DocumentReference.DocumentReferenceContextComponent element) throws IOException { 25820 if (element != null) { 25821 composeElementAttributes(element); 25822 xml.enter(FHIR_NS, name); 25823 composeDocumentReferenceDocumentReferenceContextComponentElements(element); 25824 composeElementClose(element); 25825 xml.exit(FHIR_NS, name); 25826 } 25827 } 25828 25829 protected void composeDocumentReferenceDocumentReferenceContextComponentElements(DocumentReference.DocumentReferenceContextComponent element) throws IOException { 25830 composeBackboneElements(element); 25831 if (element.hasEncounter()) { 25832 composeReference("encounter", element.getEncounter()); 25833 } 25834 if (element.hasEvent()) { 25835 for (CodeableConcept e : element.getEvent()) 25836 composeCodeableConcept("event", e); 25837 } 25838 if (element.hasPeriod()) { 25839 composePeriod("period", element.getPeriod()); 25840 } 25841 if (element.hasFacilityType()) { 25842 composeCodeableConcept("facilityType", element.getFacilityType()); 25843 } 25844 if (element.hasPracticeSetting()) { 25845 composeCodeableConcept("practiceSetting", element.getPracticeSetting()); 25846 } 25847 if (element.hasSourcePatientInfo()) { 25848 composeReference("sourcePatientInfo", element.getSourcePatientInfo()); 25849 } 25850 if (element.hasRelated()) { 25851 for (DocumentReference.DocumentReferenceContextRelatedComponent e : element.getRelated()) 25852 composeDocumentReferenceDocumentReferenceContextRelatedComponent("related", e); 25853 } 25854 } 25855 25856 protected void composeDocumentReferenceDocumentReferenceContextRelatedComponent(String name, DocumentReference.DocumentReferenceContextRelatedComponent element) throws IOException { 25857 if (element != null) { 25858 composeElementAttributes(element); 25859 xml.enter(FHIR_NS, name); 25860 composeDocumentReferenceDocumentReferenceContextRelatedComponentElements(element); 25861 composeElementClose(element); 25862 xml.exit(FHIR_NS, name); 25863 } 25864 } 25865 25866 protected void composeDocumentReferenceDocumentReferenceContextRelatedComponentElements(DocumentReference.DocumentReferenceContextRelatedComponent element) throws IOException { 25867 composeBackboneElements(element); 25868 if (element.hasIdentifier()) { 25869 composeIdentifier("identifier", element.getIdentifier()); 25870 } 25871 if (element.hasRef()) { 25872 composeReference("ref", element.getRef()); 25873 } 25874 } 25875 25876 protected void composeEligibilityRequest(String name, EligibilityRequest element) throws IOException { 25877 if (element != null) { 25878 composeDomainResourceAttributes(element); 25879 xml.enter(FHIR_NS, name); 25880 composeEligibilityRequestElements(element); 25881 composeElementClose(element); 25882 xml.exit(FHIR_NS, name); 25883 } 25884 } 25885 25886 protected void composeEligibilityRequestElements(EligibilityRequest element) throws IOException { 25887 composeDomainResourceElements(element); 25888 if (element.hasIdentifier()) { 25889 for (Identifier e : element.getIdentifier()) 25890 composeIdentifier("identifier", e); 25891 } 25892 if (element.hasStatusElement()) 25893 composeEnumeration("status", element.getStatusElement(), new EligibilityRequest.EligibilityRequestStatusEnumFactory()); 25894 if (element.hasPriority()) { 25895 composeCodeableConcept("priority", element.getPriority()); 25896 } 25897 if (element.hasPatient()) { 25898 composeReference("patient", element.getPatient()); 25899 } 25900 if (element.hasServiced()) { 25901 composeType("serviced", element.getServiced()); 25902 } if (element.hasCreatedElement()) { 25903 composeDateTime("created", element.getCreatedElement()); 25904 } 25905 if (element.hasEnterer()) { 25906 composeReference("enterer", element.getEnterer()); 25907 } 25908 if (element.hasProvider()) { 25909 composeReference("provider", element.getProvider()); 25910 } 25911 if (element.hasOrganization()) { 25912 composeReference("organization", element.getOrganization()); 25913 } 25914 if (element.hasInsurer()) { 25915 composeReference("insurer", element.getInsurer()); 25916 } 25917 if (element.hasFacility()) { 25918 composeReference("facility", element.getFacility()); 25919 } 25920 if (element.hasCoverage()) { 25921 composeReference("coverage", element.getCoverage()); 25922 } 25923 if (element.hasBusinessArrangementElement()) { 25924 composeString("businessArrangement", element.getBusinessArrangementElement()); 25925 } 25926 if (element.hasBenefitCategory()) { 25927 composeCodeableConcept("benefitCategory", element.getBenefitCategory()); 25928 } 25929 if (element.hasBenefitSubCategory()) { 25930 composeCodeableConcept("benefitSubCategory", element.getBenefitSubCategory()); 25931 } 25932 } 25933 25934 protected void composeEligibilityResponse(String name, EligibilityResponse element) throws IOException { 25935 if (element != null) { 25936 composeDomainResourceAttributes(element); 25937 xml.enter(FHIR_NS, name); 25938 composeEligibilityResponseElements(element); 25939 composeElementClose(element); 25940 xml.exit(FHIR_NS, name); 25941 } 25942 } 25943 25944 protected void composeEligibilityResponseElements(EligibilityResponse element) throws IOException { 25945 composeDomainResourceElements(element); 25946 if (element.hasIdentifier()) { 25947 for (Identifier e : element.getIdentifier()) 25948 composeIdentifier("identifier", e); 25949 } 25950 if (element.hasStatusElement()) 25951 composeEnumeration("status", element.getStatusElement(), new EligibilityResponse.EligibilityResponseStatusEnumFactory()); 25952 if (element.hasCreatedElement()) { 25953 composeDateTime("created", element.getCreatedElement()); 25954 } 25955 if (element.hasRequestProvider()) { 25956 composeReference("requestProvider", element.getRequestProvider()); 25957 } 25958 if (element.hasRequestOrganization()) { 25959 composeReference("requestOrganization", element.getRequestOrganization()); 25960 } 25961 if (element.hasRequest()) { 25962 composeReference("request", element.getRequest()); 25963 } 25964 if (element.hasOutcome()) { 25965 composeCodeableConcept("outcome", element.getOutcome()); 25966 } 25967 if (element.hasDispositionElement()) { 25968 composeString("disposition", element.getDispositionElement()); 25969 } 25970 if (element.hasInsurer()) { 25971 composeReference("insurer", element.getInsurer()); 25972 } 25973 if (element.hasInforceElement()) { 25974 composeBoolean("inforce", element.getInforceElement()); 25975 } 25976 if (element.hasInsurance()) { 25977 for (EligibilityResponse.InsuranceComponent e : element.getInsurance()) 25978 composeEligibilityResponseInsuranceComponent("insurance", e); 25979 } 25980 if (element.hasForm()) { 25981 composeCodeableConcept("form", element.getForm()); 25982 } 25983 if (element.hasError()) { 25984 for (EligibilityResponse.ErrorsComponent e : element.getError()) 25985 composeEligibilityResponseErrorsComponent("error", e); 25986 } 25987 } 25988 25989 protected void composeEligibilityResponseInsuranceComponent(String name, EligibilityResponse.InsuranceComponent element) throws IOException { 25990 if (element != null) { 25991 composeElementAttributes(element); 25992 xml.enter(FHIR_NS, name); 25993 composeEligibilityResponseInsuranceComponentElements(element); 25994 composeElementClose(element); 25995 xml.exit(FHIR_NS, name); 25996 } 25997 } 25998 25999 protected void composeEligibilityResponseInsuranceComponentElements(EligibilityResponse.InsuranceComponent element) throws IOException { 26000 composeBackboneElements(element); 26001 if (element.hasCoverage()) { 26002 composeReference("coverage", element.getCoverage()); 26003 } 26004 if (element.hasContract()) { 26005 composeReference("contract", element.getContract()); 26006 } 26007 if (element.hasBenefitBalance()) { 26008 for (EligibilityResponse.BenefitsComponent e : element.getBenefitBalance()) 26009 composeEligibilityResponseBenefitsComponent("benefitBalance", e); 26010 } 26011 } 26012 26013 protected void composeEligibilityResponseBenefitsComponent(String name, EligibilityResponse.BenefitsComponent element) throws IOException { 26014 if (element != null) { 26015 composeElementAttributes(element); 26016 xml.enter(FHIR_NS, name); 26017 composeEligibilityResponseBenefitsComponentElements(element); 26018 composeElementClose(element); 26019 xml.exit(FHIR_NS, name); 26020 } 26021 } 26022 26023 protected void composeEligibilityResponseBenefitsComponentElements(EligibilityResponse.BenefitsComponent element) throws IOException { 26024 composeBackboneElements(element); 26025 if (element.hasCategory()) { 26026 composeCodeableConcept("category", element.getCategory()); 26027 } 26028 if (element.hasSubCategory()) { 26029 composeCodeableConcept("subCategory", element.getSubCategory()); 26030 } 26031 if (element.hasExcludedElement()) { 26032 composeBoolean("excluded", element.getExcludedElement()); 26033 } 26034 if (element.hasNameElement()) { 26035 composeString("name", element.getNameElement()); 26036 } 26037 if (element.hasDescriptionElement()) { 26038 composeString("description", element.getDescriptionElement()); 26039 } 26040 if (element.hasNetwork()) { 26041 composeCodeableConcept("network", element.getNetwork()); 26042 } 26043 if (element.hasUnit()) { 26044 composeCodeableConcept("unit", element.getUnit()); 26045 } 26046 if (element.hasTerm()) { 26047 composeCodeableConcept("term", element.getTerm()); 26048 } 26049 if (element.hasFinancial()) { 26050 for (EligibilityResponse.BenefitComponent e : element.getFinancial()) 26051 composeEligibilityResponseBenefitComponent("financial", e); 26052 } 26053 } 26054 26055 protected void composeEligibilityResponseBenefitComponent(String name, EligibilityResponse.BenefitComponent element) throws IOException { 26056 if (element != null) { 26057 composeElementAttributes(element); 26058 xml.enter(FHIR_NS, name); 26059 composeEligibilityResponseBenefitComponentElements(element); 26060 composeElementClose(element); 26061 xml.exit(FHIR_NS, name); 26062 } 26063 } 26064 26065 protected void composeEligibilityResponseBenefitComponentElements(EligibilityResponse.BenefitComponent element) throws IOException { 26066 composeBackboneElements(element); 26067 if (element.hasType()) { 26068 composeCodeableConcept("type", element.getType()); 26069 } 26070 if (element.hasAllowed()) { 26071 composeType("allowed", element.getAllowed()); 26072 } if (element.hasUsed()) { 26073 composeType("used", element.getUsed()); 26074 } } 26075 26076 protected void composeEligibilityResponseErrorsComponent(String name, EligibilityResponse.ErrorsComponent element) throws IOException { 26077 if (element != null) { 26078 composeElementAttributes(element); 26079 xml.enter(FHIR_NS, name); 26080 composeEligibilityResponseErrorsComponentElements(element); 26081 composeElementClose(element); 26082 xml.exit(FHIR_NS, name); 26083 } 26084 } 26085 26086 protected void composeEligibilityResponseErrorsComponentElements(EligibilityResponse.ErrorsComponent element) throws IOException { 26087 composeBackboneElements(element); 26088 if (element.hasCode()) { 26089 composeCodeableConcept("code", element.getCode()); 26090 } 26091 } 26092 26093 protected void composeEncounter(String name, Encounter element) throws IOException { 26094 if (element != null) { 26095 composeDomainResourceAttributes(element); 26096 xml.enter(FHIR_NS, name); 26097 composeEncounterElements(element); 26098 composeElementClose(element); 26099 xml.exit(FHIR_NS, name); 26100 } 26101 } 26102 26103 protected void composeEncounterElements(Encounter element) throws IOException { 26104 composeDomainResourceElements(element); 26105 if (element.hasIdentifier()) { 26106 for (Identifier e : element.getIdentifier()) 26107 composeIdentifier("identifier", e); 26108 } 26109 if (element.hasStatusElement()) 26110 composeEnumeration("status", element.getStatusElement(), new Encounter.EncounterStatusEnumFactory()); 26111 if (element.hasStatusHistory()) { 26112 for (Encounter.StatusHistoryComponent e : element.getStatusHistory()) 26113 composeEncounterStatusHistoryComponent("statusHistory", e); 26114 } 26115 if (element.hasClass_()) { 26116 composeCoding("class", element.getClass_()); 26117 } 26118 if (element.hasClassHistory()) { 26119 for (Encounter.ClassHistoryComponent e : element.getClassHistory()) 26120 composeEncounterClassHistoryComponent("classHistory", e); 26121 } 26122 if (element.hasType()) { 26123 for (CodeableConcept e : element.getType()) 26124 composeCodeableConcept("type", e); 26125 } 26126 if (element.hasPriority()) { 26127 composeCodeableConcept("priority", element.getPriority()); 26128 } 26129 if (element.hasSubject()) { 26130 composeReference("subject", element.getSubject()); 26131 } 26132 if (element.hasEpisodeOfCare()) { 26133 for (Reference e : element.getEpisodeOfCare()) 26134 composeReference("episodeOfCare", e); 26135 } 26136 if (element.hasIncomingReferral()) { 26137 for (Reference e : element.getIncomingReferral()) 26138 composeReference("incomingReferral", e); 26139 } 26140 if (element.hasParticipant()) { 26141 for (Encounter.EncounterParticipantComponent e : element.getParticipant()) 26142 composeEncounterEncounterParticipantComponent("participant", e); 26143 } 26144 if (element.hasAppointment()) { 26145 composeReference("appointment", element.getAppointment()); 26146 } 26147 if (element.hasPeriod()) { 26148 composePeriod("period", element.getPeriod()); 26149 } 26150 if (element.hasLength()) { 26151 composeDuration("length", element.getLength()); 26152 } 26153 if (element.hasReason()) { 26154 for (CodeableConcept e : element.getReason()) 26155 composeCodeableConcept("reason", e); 26156 } 26157 if (element.hasDiagnosis()) { 26158 for (Encounter.DiagnosisComponent e : element.getDiagnosis()) 26159 composeEncounterDiagnosisComponent("diagnosis", e); 26160 } 26161 if (element.hasAccount()) { 26162 for (Reference e : element.getAccount()) 26163 composeReference("account", e); 26164 } 26165 if (element.hasHospitalization()) { 26166 composeEncounterEncounterHospitalizationComponent("hospitalization", element.getHospitalization()); 26167 } 26168 if (element.hasLocation()) { 26169 for (Encounter.EncounterLocationComponent e : element.getLocation()) 26170 composeEncounterEncounterLocationComponent("location", e); 26171 } 26172 if (element.hasServiceProvider()) { 26173 composeReference("serviceProvider", element.getServiceProvider()); 26174 } 26175 if (element.hasPartOf()) { 26176 composeReference("partOf", element.getPartOf()); 26177 } 26178 } 26179 26180 protected void composeEncounterStatusHistoryComponent(String name, Encounter.StatusHistoryComponent element) throws IOException { 26181 if (element != null) { 26182 composeElementAttributes(element); 26183 xml.enter(FHIR_NS, name); 26184 composeEncounterStatusHistoryComponentElements(element); 26185 composeElementClose(element); 26186 xml.exit(FHIR_NS, name); 26187 } 26188 } 26189 26190 protected void composeEncounterStatusHistoryComponentElements(Encounter.StatusHistoryComponent element) throws IOException { 26191 composeBackboneElements(element); 26192 if (element.hasStatusElement()) 26193 composeEnumeration("status", element.getStatusElement(), new Encounter.EncounterStatusEnumFactory()); 26194 if (element.hasPeriod()) { 26195 composePeriod("period", element.getPeriod()); 26196 } 26197 } 26198 26199 protected void composeEncounterClassHistoryComponent(String name, Encounter.ClassHistoryComponent element) throws IOException { 26200 if (element != null) { 26201 composeElementAttributes(element); 26202 xml.enter(FHIR_NS, name); 26203 composeEncounterClassHistoryComponentElements(element); 26204 composeElementClose(element); 26205 xml.exit(FHIR_NS, name); 26206 } 26207 } 26208 26209 protected void composeEncounterClassHistoryComponentElements(Encounter.ClassHistoryComponent element) throws IOException { 26210 composeBackboneElements(element); 26211 if (element.hasClass_()) { 26212 composeCoding("class", element.getClass_()); 26213 } 26214 if (element.hasPeriod()) { 26215 composePeriod("period", element.getPeriod()); 26216 } 26217 } 26218 26219 protected void composeEncounterEncounterParticipantComponent(String name, Encounter.EncounterParticipantComponent element) throws IOException { 26220 if (element != null) { 26221 composeElementAttributes(element); 26222 xml.enter(FHIR_NS, name); 26223 composeEncounterEncounterParticipantComponentElements(element); 26224 composeElementClose(element); 26225 xml.exit(FHIR_NS, name); 26226 } 26227 } 26228 26229 protected void composeEncounterEncounterParticipantComponentElements(Encounter.EncounterParticipantComponent element) throws IOException { 26230 composeBackboneElements(element); 26231 if (element.hasType()) { 26232 for (CodeableConcept e : element.getType()) 26233 composeCodeableConcept("type", e); 26234 } 26235 if (element.hasPeriod()) { 26236 composePeriod("period", element.getPeriod()); 26237 } 26238 if (element.hasIndividual()) { 26239 composeReference("individual", element.getIndividual()); 26240 } 26241 } 26242 26243 protected void composeEncounterDiagnosisComponent(String name, Encounter.DiagnosisComponent element) throws IOException { 26244 if (element != null) { 26245 composeElementAttributes(element); 26246 xml.enter(FHIR_NS, name); 26247 composeEncounterDiagnosisComponentElements(element); 26248 composeElementClose(element); 26249 xml.exit(FHIR_NS, name); 26250 } 26251 } 26252 26253 protected void composeEncounterDiagnosisComponentElements(Encounter.DiagnosisComponent element) throws IOException { 26254 composeBackboneElements(element); 26255 if (element.hasCondition()) { 26256 composeReference("condition", element.getCondition()); 26257 } 26258 if (element.hasRole()) { 26259 composeCodeableConcept("role", element.getRole()); 26260 } 26261 if (element.hasRankElement()) { 26262 composePositiveInt("rank", element.getRankElement()); 26263 } 26264 } 26265 26266 protected void composeEncounterEncounterHospitalizationComponent(String name, Encounter.EncounterHospitalizationComponent element) throws IOException { 26267 if (element != null) { 26268 composeElementAttributes(element); 26269 xml.enter(FHIR_NS, name); 26270 composeEncounterEncounterHospitalizationComponentElements(element); 26271 composeElementClose(element); 26272 xml.exit(FHIR_NS, name); 26273 } 26274 } 26275 26276 protected void composeEncounterEncounterHospitalizationComponentElements(Encounter.EncounterHospitalizationComponent element) throws IOException { 26277 composeBackboneElements(element); 26278 if (element.hasPreAdmissionIdentifier()) { 26279 composeIdentifier("preAdmissionIdentifier", element.getPreAdmissionIdentifier()); 26280 } 26281 if (element.hasOrigin()) { 26282 composeReference("origin", element.getOrigin()); 26283 } 26284 if (element.hasAdmitSource()) { 26285 composeCodeableConcept("admitSource", element.getAdmitSource()); 26286 } 26287 if (element.hasReAdmission()) { 26288 composeCodeableConcept("reAdmission", element.getReAdmission()); 26289 } 26290 if (element.hasDietPreference()) { 26291 for (CodeableConcept e : element.getDietPreference()) 26292 composeCodeableConcept("dietPreference", e); 26293 } 26294 if (element.hasSpecialCourtesy()) { 26295 for (CodeableConcept e : element.getSpecialCourtesy()) 26296 composeCodeableConcept("specialCourtesy", e); 26297 } 26298 if (element.hasSpecialArrangement()) { 26299 for (CodeableConcept e : element.getSpecialArrangement()) 26300 composeCodeableConcept("specialArrangement", e); 26301 } 26302 if (element.hasDestination()) { 26303 composeReference("destination", element.getDestination()); 26304 } 26305 if (element.hasDischargeDisposition()) { 26306 composeCodeableConcept("dischargeDisposition", element.getDischargeDisposition()); 26307 } 26308 } 26309 26310 protected void composeEncounterEncounterLocationComponent(String name, Encounter.EncounterLocationComponent element) throws IOException { 26311 if (element != null) { 26312 composeElementAttributes(element); 26313 xml.enter(FHIR_NS, name); 26314 composeEncounterEncounterLocationComponentElements(element); 26315 composeElementClose(element); 26316 xml.exit(FHIR_NS, name); 26317 } 26318 } 26319 26320 protected void composeEncounterEncounterLocationComponentElements(Encounter.EncounterLocationComponent element) throws IOException { 26321 composeBackboneElements(element); 26322 if (element.hasLocation()) { 26323 composeReference("location", element.getLocation()); 26324 } 26325 if (element.hasStatusElement()) 26326 composeEnumeration("status", element.getStatusElement(), new Encounter.EncounterLocationStatusEnumFactory()); 26327 if (element.hasPeriod()) { 26328 composePeriod("period", element.getPeriod()); 26329 } 26330 } 26331 26332 protected void composeEndpoint(String name, Endpoint element) throws IOException { 26333 if (element != null) { 26334 composeDomainResourceAttributes(element); 26335 xml.enter(FHIR_NS, name); 26336 composeEndpointElements(element); 26337 composeElementClose(element); 26338 xml.exit(FHIR_NS, name); 26339 } 26340 } 26341 26342 protected void composeEndpointElements(Endpoint element) throws IOException { 26343 composeDomainResourceElements(element); 26344 if (element.hasIdentifier()) { 26345 for (Identifier e : element.getIdentifier()) 26346 composeIdentifier("identifier", e); 26347 } 26348 if (element.hasStatusElement()) 26349 composeEnumeration("status", element.getStatusElement(), new Endpoint.EndpointStatusEnumFactory()); 26350 if (element.hasConnectionType()) { 26351 composeCoding("connectionType", element.getConnectionType()); 26352 } 26353 if (element.hasNameElement()) { 26354 composeString("name", element.getNameElement()); 26355 } 26356 if (element.hasManagingOrganization()) { 26357 composeReference("managingOrganization", element.getManagingOrganization()); 26358 } 26359 if (element.hasContact()) { 26360 for (ContactPoint e : element.getContact()) 26361 composeContactPoint("contact", e); 26362 } 26363 if (element.hasPeriod()) { 26364 composePeriod("period", element.getPeriod()); 26365 } 26366 if (element.hasPayloadType()) { 26367 for (CodeableConcept e : element.getPayloadType()) 26368 composeCodeableConcept("payloadType", e); 26369 } 26370 if (element.hasPayloadMimeType()) { 26371 for (CodeType e : element.getPayloadMimeType()) 26372 composeCode("payloadMimeType", e); 26373 } 26374 if (element.hasAddressElement()) { 26375 composeUri("address", element.getAddressElement()); 26376 } 26377 if (element.hasHeader()) { 26378 for (StringType e : element.getHeader()) 26379 composeString("header", e); 26380 } 26381 } 26382 26383 protected void composeEnrollmentRequest(String name, EnrollmentRequest element) throws IOException { 26384 if (element != null) { 26385 composeDomainResourceAttributes(element); 26386 xml.enter(FHIR_NS, name); 26387 composeEnrollmentRequestElements(element); 26388 composeElementClose(element); 26389 xml.exit(FHIR_NS, name); 26390 } 26391 } 26392 26393 protected void composeEnrollmentRequestElements(EnrollmentRequest element) throws IOException { 26394 composeDomainResourceElements(element); 26395 if (element.hasIdentifier()) { 26396 for (Identifier e : element.getIdentifier()) 26397 composeIdentifier("identifier", e); 26398 } 26399 if (element.hasStatusElement()) 26400 composeEnumeration("status", element.getStatusElement(), new EnrollmentRequest.EnrollmentRequestStatusEnumFactory()); 26401 if (element.hasCreatedElement()) { 26402 composeDateTime("created", element.getCreatedElement()); 26403 } 26404 if (element.hasInsurer()) { 26405 composeReference("insurer", element.getInsurer()); 26406 } 26407 if (element.hasProvider()) { 26408 composeReference("provider", element.getProvider()); 26409 } 26410 if (element.hasOrganization()) { 26411 composeReference("organization", element.getOrganization()); 26412 } 26413 if (element.hasSubject()) { 26414 composeReference("subject", element.getSubject()); 26415 } 26416 if (element.hasCoverage()) { 26417 composeReference("coverage", element.getCoverage()); 26418 } 26419 } 26420 26421 protected void composeEnrollmentResponse(String name, EnrollmentResponse element) throws IOException { 26422 if (element != null) { 26423 composeDomainResourceAttributes(element); 26424 xml.enter(FHIR_NS, name); 26425 composeEnrollmentResponseElements(element); 26426 composeElementClose(element); 26427 xml.exit(FHIR_NS, name); 26428 } 26429 } 26430 26431 protected void composeEnrollmentResponseElements(EnrollmentResponse element) throws IOException { 26432 composeDomainResourceElements(element); 26433 if (element.hasIdentifier()) { 26434 for (Identifier e : element.getIdentifier()) 26435 composeIdentifier("identifier", e); 26436 } 26437 if (element.hasStatusElement()) 26438 composeEnumeration("status", element.getStatusElement(), new EnrollmentResponse.EnrollmentResponseStatusEnumFactory()); 26439 if (element.hasRequest()) { 26440 composeReference("request", element.getRequest()); 26441 } 26442 if (element.hasOutcome()) { 26443 composeCodeableConcept("outcome", element.getOutcome()); 26444 } 26445 if (element.hasDispositionElement()) { 26446 composeString("disposition", element.getDispositionElement()); 26447 } 26448 if (element.hasCreatedElement()) { 26449 composeDateTime("created", element.getCreatedElement()); 26450 } 26451 if (element.hasOrganization()) { 26452 composeReference("organization", element.getOrganization()); 26453 } 26454 if (element.hasRequestProvider()) { 26455 composeReference("requestProvider", element.getRequestProvider()); 26456 } 26457 if (element.hasRequestOrganization()) { 26458 composeReference("requestOrganization", element.getRequestOrganization()); 26459 } 26460 } 26461 26462 protected void composeEpisodeOfCare(String name, EpisodeOfCare element) throws IOException { 26463 if (element != null) { 26464 composeDomainResourceAttributes(element); 26465 xml.enter(FHIR_NS, name); 26466 composeEpisodeOfCareElements(element); 26467 composeElementClose(element); 26468 xml.exit(FHIR_NS, name); 26469 } 26470 } 26471 26472 protected void composeEpisodeOfCareElements(EpisodeOfCare element) throws IOException { 26473 composeDomainResourceElements(element); 26474 if (element.hasIdentifier()) { 26475 for (Identifier e : element.getIdentifier()) 26476 composeIdentifier("identifier", e); 26477 } 26478 if (element.hasStatusElement()) 26479 composeEnumeration("status", element.getStatusElement(), new EpisodeOfCare.EpisodeOfCareStatusEnumFactory()); 26480 if (element.hasStatusHistory()) { 26481 for (EpisodeOfCare.EpisodeOfCareStatusHistoryComponent e : element.getStatusHistory()) 26482 composeEpisodeOfCareEpisodeOfCareStatusHistoryComponent("statusHistory", e); 26483 } 26484 if (element.hasType()) { 26485 for (CodeableConcept e : element.getType()) 26486 composeCodeableConcept("type", e); 26487 } 26488 if (element.hasDiagnosis()) { 26489 for (EpisodeOfCare.DiagnosisComponent e : element.getDiagnosis()) 26490 composeEpisodeOfCareDiagnosisComponent("diagnosis", e); 26491 } 26492 if (element.hasPatient()) { 26493 composeReference("patient", element.getPatient()); 26494 } 26495 if (element.hasManagingOrganization()) { 26496 composeReference("managingOrganization", element.getManagingOrganization()); 26497 } 26498 if (element.hasPeriod()) { 26499 composePeriod("period", element.getPeriod()); 26500 } 26501 if (element.hasReferralRequest()) { 26502 for (Reference e : element.getReferralRequest()) 26503 composeReference("referralRequest", e); 26504 } 26505 if (element.hasCareManager()) { 26506 composeReference("careManager", element.getCareManager()); 26507 } 26508 if (element.hasTeam()) { 26509 for (Reference e : element.getTeam()) 26510 composeReference("team", e); 26511 } 26512 if (element.hasAccount()) { 26513 for (Reference e : element.getAccount()) 26514 composeReference("account", e); 26515 } 26516 } 26517 26518 protected void composeEpisodeOfCareEpisodeOfCareStatusHistoryComponent(String name, EpisodeOfCare.EpisodeOfCareStatusHistoryComponent element) throws IOException { 26519 if (element != null) { 26520 composeElementAttributes(element); 26521 xml.enter(FHIR_NS, name); 26522 composeEpisodeOfCareEpisodeOfCareStatusHistoryComponentElements(element); 26523 composeElementClose(element); 26524 xml.exit(FHIR_NS, name); 26525 } 26526 } 26527 26528 protected void composeEpisodeOfCareEpisodeOfCareStatusHistoryComponentElements(EpisodeOfCare.EpisodeOfCareStatusHistoryComponent element) throws IOException { 26529 composeBackboneElements(element); 26530 if (element.hasStatusElement()) 26531 composeEnumeration("status", element.getStatusElement(), new EpisodeOfCare.EpisodeOfCareStatusEnumFactory()); 26532 if (element.hasPeriod()) { 26533 composePeriod("period", element.getPeriod()); 26534 } 26535 } 26536 26537 protected void composeEpisodeOfCareDiagnosisComponent(String name, EpisodeOfCare.DiagnosisComponent element) throws IOException { 26538 if (element != null) { 26539 composeElementAttributes(element); 26540 xml.enter(FHIR_NS, name); 26541 composeEpisodeOfCareDiagnosisComponentElements(element); 26542 composeElementClose(element); 26543 xml.exit(FHIR_NS, name); 26544 } 26545 } 26546 26547 protected void composeEpisodeOfCareDiagnosisComponentElements(EpisodeOfCare.DiagnosisComponent element) throws IOException { 26548 composeBackboneElements(element); 26549 if (element.hasCondition()) { 26550 composeReference("condition", element.getCondition()); 26551 } 26552 if (element.hasRole()) { 26553 composeCodeableConcept("role", element.getRole()); 26554 } 26555 if (element.hasRankElement()) { 26556 composePositiveInt("rank", element.getRankElement()); 26557 } 26558 } 26559 26560 protected void composeExpansionProfile(String name, ExpansionProfile element) throws IOException { 26561 if (element != null) { 26562 composeDomainResourceAttributes(element); 26563 xml.enter(FHIR_NS, name); 26564 composeExpansionProfileElements(element); 26565 composeElementClose(element); 26566 xml.exit(FHIR_NS, name); 26567 } 26568 } 26569 26570 protected void composeExpansionProfileElements(ExpansionProfile element) throws IOException { 26571 composeDomainResourceElements(element); 26572 if (element.hasUrlElement()) { 26573 composeUri("url", element.getUrlElement()); 26574 } 26575 if (element.hasIdentifier()) { 26576 composeIdentifier("identifier", element.getIdentifier()); 26577 } 26578 if (element.hasVersionElement()) { 26579 composeString("version", element.getVersionElement()); 26580 } 26581 if (element.hasNameElement()) { 26582 composeString("name", element.getNameElement()); 26583 } 26584 if (element.hasStatusElement()) 26585 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 26586 if (element.hasExperimentalElement()) { 26587 composeBoolean("experimental", element.getExperimentalElement()); 26588 } 26589 if (element.hasDateElement()) { 26590 composeDateTime("date", element.getDateElement()); 26591 } 26592 if (element.hasPublisherElement()) { 26593 composeString("publisher", element.getPublisherElement()); 26594 } 26595 if (element.hasContact()) { 26596 for (ContactDetail e : element.getContact()) 26597 composeContactDetail("contact", e); 26598 } 26599 if (element.hasDescriptionElement()) { 26600 composeMarkdown("description", element.getDescriptionElement()); 26601 } 26602 if (element.hasUseContext()) { 26603 for (UsageContext e : element.getUseContext()) 26604 composeUsageContext("useContext", e); 26605 } 26606 if (element.hasJurisdiction()) { 26607 for (CodeableConcept e : element.getJurisdiction()) 26608 composeCodeableConcept("jurisdiction", e); 26609 } 26610 if (element.hasFixedVersion()) { 26611 for (ExpansionProfile.ExpansionProfileFixedVersionComponent e : element.getFixedVersion()) 26612 composeExpansionProfileExpansionProfileFixedVersionComponent("fixedVersion", e); 26613 } 26614 if (element.hasExcludedSystem()) { 26615 composeExpansionProfileExpansionProfileExcludedSystemComponent("excludedSystem", element.getExcludedSystem()); 26616 } 26617 if (element.hasIncludeDesignationsElement()) { 26618 composeBoolean("includeDesignations", element.getIncludeDesignationsElement()); 26619 } 26620 if (element.hasDesignation()) { 26621 composeExpansionProfileExpansionProfileDesignationComponent("designation", element.getDesignation()); 26622 } 26623 if (element.hasIncludeDefinitionElement()) { 26624 composeBoolean("includeDefinition", element.getIncludeDefinitionElement()); 26625 } 26626 if (element.hasActiveOnlyElement()) { 26627 composeBoolean("activeOnly", element.getActiveOnlyElement()); 26628 } 26629 if (element.hasExcludeNestedElement()) { 26630 composeBoolean("excludeNested", element.getExcludeNestedElement()); 26631 } 26632 if (element.hasExcludeNotForUIElement()) { 26633 composeBoolean("excludeNotForUI", element.getExcludeNotForUIElement()); 26634 } 26635 if (element.hasExcludePostCoordinatedElement()) { 26636 composeBoolean("excludePostCoordinated", element.getExcludePostCoordinatedElement()); 26637 } 26638 if (element.hasDisplayLanguageElement()) { 26639 composeCode("displayLanguage", element.getDisplayLanguageElement()); 26640 } 26641 if (element.hasLimitedExpansionElement()) { 26642 composeBoolean("limitedExpansion", element.getLimitedExpansionElement()); 26643 } 26644 } 26645 26646 protected void composeExpansionProfileExpansionProfileFixedVersionComponent(String name, ExpansionProfile.ExpansionProfileFixedVersionComponent element) throws IOException { 26647 if (element != null) { 26648 composeElementAttributes(element); 26649 xml.enter(FHIR_NS, name); 26650 composeExpansionProfileExpansionProfileFixedVersionComponentElements(element); 26651 composeElementClose(element); 26652 xml.exit(FHIR_NS, name); 26653 } 26654 } 26655 26656 protected void composeExpansionProfileExpansionProfileFixedVersionComponentElements(ExpansionProfile.ExpansionProfileFixedVersionComponent element) throws IOException { 26657 composeBackboneElements(element); 26658 if (element.hasSystemElement()) { 26659 composeUri("system", element.getSystemElement()); 26660 } 26661 if (element.hasVersionElement()) { 26662 composeString("version", element.getVersionElement()); 26663 } 26664 if (element.hasModeElement()) 26665 composeEnumeration("mode", element.getModeElement(), new ExpansionProfile.SystemVersionProcessingModeEnumFactory()); 26666 } 26667 26668 protected void composeExpansionProfileExpansionProfileExcludedSystemComponent(String name, ExpansionProfile.ExpansionProfileExcludedSystemComponent element) throws IOException { 26669 if (element != null) { 26670 composeElementAttributes(element); 26671 xml.enter(FHIR_NS, name); 26672 composeExpansionProfileExpansionProfileExcludedSystemComponentElements(element); 26673 composeElementClose(element); 26674 xml.exit(FHIR_NS, name); 26675 } 26676 } 26677 26678 protected void composeExpansionProfileExpansionProfileExcludedSystemComponentElements(ExpansionProfile.ExpansionProfileExcludedSystemComponent element) throws IOException { 26679 composeBackboneElements(element); 26680 if (element.hasSystemElement()) { 26681 composeUri("system", element.getSystemElement()); 26682 } 26683 if (element.hasVersionElement()) { 26684 composeString("version", element.getVersionElement()); 26685 } 26686 } 26687 26688 protected void composeExpansionProfileExpansionProfileDesignationComponent(String name, ExpansionProfile.ExpansionProfileDesignationComponent element) throws IOException { 26689 if (element != null) { 26690 composeElementAttributes(element); 26691 xml.enter(FHIR_NS, name); 26692 composeExpansionProfileExpansionProfileDesignationComponentElements(element); 26693 composeElementClose(element); 26694 xml.exit(FHIR_NS, name); 26695 } 26696 } 26697 26698 protected void composeExpansionProfileExpansionProfileDesignationComponentElements(ExpansionProfile.ExpansionProfileDesignationComponent element) throws IOException { 26699 composeBackboneElements(element); 26700 if (element.hasInclude()) { 26701 composeExpansionProfileDesignationIncludeComponent("include", element.getInclude()); 26702 } 26703 if (element.hasExclude()) { 26704 composeExpansionProfileDesignationExcludeComponent("exclude", element.getExclude()); 26705 } 26706 } 26707 26708 protected void composeExpansionProfileDesignationIncludeComponent(String name, ExpansionProfile.DesignationIncludeComponent element) throws IOException { 26709 if (element != null) { 26710 composeElementAttributes(element); 26711 xml.enter(FHIR_NS, name); 26712 composeExpansionProfileDesignationIncludeComponentElements(element); 26713 composeElementClose(element); 26714 xml.exit(FHIR_NS, name); 26715 } 26716 } 26717 26718 protected void composeExpansionProfileDesignationIncludeComponentElements(ExpansionProfile.DesignationIncludeComponent element) throws IOException { 26719 composeBackboneElements(element); 26720 if (element.hasDesignation()) { 26721 for (ExpansionProfile.DesignationIncludeDesignationComponent e : element.getDesignation()) 26722 composeExpansionProfileDesignationIncludeDesignationComponent("designation", e); 26723 } 26724 } 26725 26726 protected void composeExpansionProfileDesignationIncludeDesignationComponent(String name, ExpansionProfile.DesignationIncludeDesignationComponent element) throws IOException { 26727 if (element != null) { 26728 composeElementAttributes(element); 26729 xml.enter(FHIR_NS, name); 26730 composeExpansionProfileDesignationIncludeDesignationComponentElements(element); 26731 composeElementClose(element); 26732 xml.exit(FHIR_NS, name); 26733 } 26734 } 26735 26736 protected void composeExpansionProfileDesignationIncludeDesignationComponentElements(ExpansionProfile.DesignationIncludeDesignationComponent element) throws IOException { 26737 composeBackboneElements(element); 26738 if (element.hasLanguageElement()) { 26739 composeCode("language", element.getLanguageElement()); 26740 } 26741 if (element.hasUse()) { 26742 composeCoding("use", element.getUse()); 26743 } 26744 } 26745 26746 protected void composeExpansionProfileDesignationExcludeComponent(String name, ExpansionProfile.DesignationExcludeComponent element) throws IOException { 26747 if (element != null) { 26748 composeElementAttributes(element); 26749 xml.enter(FHIR_NS, name); 26750 composeExpansionProfileDesignationExcludeComponentElements(element); 26751 composeElementClose(element); 26752 xml.exit(FHIR_NS, name); 26753 } 26754 } 26755 26756 protected void composeExpansionProfileDesignationExcludeComponentElements(ExpansionProfile.DesignationExcludeComponent element) throws IOException { 26757 composeBackboneElements(element); 26758 if (element.hasDesignation()) { 26759 for (ExpansionProfile.DesignationExcludeDesignationComponent e : element.getDesignation()) 26760 composeExpansionProfileDesignationExcludeDesignationComponent("designation", e); 26761 } 26762 } 26763 26764 protected void composeExpansionProfileDesignationExcludeDesignationComponent(String name, ExpansionProfile.DesignationExcludeDesignationComponent element) throws IOException { 26765 if (element != null) { 26766 composeElementAttributes(element); 26767 xml.enter(FHIR_NS, name); 26768 composeExpansionProfileDesignationExcludeDesignationComponentElements(element); 26769 composeElementClose(element); 26770 xml.exit(FHIR_NS, name); 26771 } 26772 } 26773 26774 protected void composeExpansionProfileDesignationExcludeDesignationComponentElements(ExpansionProfile.DesignationExcludeDesignationComponent element) throws IOException { 26775 composeBackboneElements(element); 26776 if (element.hasLanguageElement()) { 26777 composeCode("language", element.getLanguageElement()); 26778 } 26779 if (element.hasUse()) { 26780 composeCoding("use", element.getUse()); 26781 } 26782 } 26783 26784 protected void composeExplanationOfBenefit(String name, ExplanationOfBenefit element) throws IOException { 26785 if (element != null) { 26786 composeDomainResourceAttributes(element); 26787 xml.enter(FHIR_NS, name); 26788 composeExplanationOfBenefitElements(element); 26789 composeElementClose(element); 26790 xml.exit(FHIR_NS, name); 26791 } 26792 } 26793 26794 protected void composeExplanationOfBenefitElements(ExplanationOfBenefit element) throws IOException { 26795 composeDomainResourceElements(element); 26796 if (element.hasIdentifier()) { 26797 for (Identifier e : element.getIdentifier()) 26798 composeIdentifier("identifier", e); 26799 } 26800 if (element.hasStatusElement()) 26801 composeEnumeration("status", element.getStatusElement(), new ExplanationOfBenefit.ExplanationOfBenefitStatusEnumFactory()); 26802 if (element.hasType()) { 26803 composeCodeableConcept("type", element.getType()); 26804 } 26805 if (element.hasSubType()) { 26806 for (CodeableConcept e : element.getSubType()) 26807 composeCodeableConcept("subType", e); 26808 } 26809 if (element.hasPatient()) { 26810 composeReference("patient", element.getPatient()); 26811 } 26812 if (element.hasBillablePeriod()) { 26813 composePeriod("billablePeriod", element.getBillablePeriod()); 26814 } 26815 if (element.hasCreatedElement()) { 26816 composeDateTime("created", element.getCreatedElement()); 26817 } 26818 if (element.hasEnterer()) { 26819 composeReference("enterer", element.getEnterer()); 26820 } 26821 if (element.hasInsurer()) { 26822 composeReference("insurer", element.getInsurer()); 26823 } 26824 if (element.hasProvider()) { 26825 composeReference("provider", element.getProvider()); 26826 } 26827 if (element.hasOrganization()) { 26828 composeReference("organization", element.getOrganization()); 26829 } 26830 if (element.hasReferral()) { 26831 composeReference("referral", element.getReferral()); 26832 } 26833 if (element.hasFacility()) { 26834 composeReference("facility", element.getFacility()); 26835 } 26836 if (element.hasClaim()) { 26837 composeReference("claim", element.getClaim()); 26838 } 26839 if (element.hasClaimResponse()) { 26840 composeReference("claimResponse", element.getClaimResponse()); 26841 } 26842 if (element.hasOutcome()) { 26843 composeCodeableConcept("outcome", element.getOutcome()); 26844 } 26845 if (element.hasDispositionElement()) { 26846 composeString("disposition", element.getDispositionElement()); 26847 } 26848 if (element.hasRelated()) { 26849 for (ExplanationOfBenefit.RelatedClaimComponent e : element.getRelated()) 26850 composeExplanationOfBenefitRelatedClaimComponent("related", e); 26851 } 26852 if (element.hasPrescription()) { 26853 composeReference("prescription", element.getPrescription()); 26854 } 26855 if (element.hasOriginalPrescription()) { 26856 composeReference("originalPrescription", element.getOriginalPrescription()); 26857 } 26858 if (element.hasPayee()) { 26859 composeExplanationOfBenefitPayeeComponent("payee", element.getPayee()); 26860 } 26861 if (element.hasInformation()) { 26862 for (ExplanationOfBenefit.SupportingInformationComponent e : element.getInformation()) 26863 composeExplanationOfBenefitSupportingInformationComponent("information", e); 26864 } 26865 if (element.hasCareTeam()) { 26866 for (ExplanationOfBenefit.CareTeamComponent e : element.getCareTeam()) 26867 composeExplanationOfBenefitCareTeamComponent("careTeam", e); 26868 } 26869 if (element.hasDiagnosis()) { 26870 for (ExplanationOfBenefit.DiagnosisComponent e : element.getDiagnosis()) 26871 composeExplanationOfBenefitDiagnosisComponent("diagnosis", e); 26872 } 26873 if (element.hasProcedure()) { 26874 for (ExplanationOfBenefit.ProcedureComponent e : element.getProcedure()) 26875 composeExplanationOfBenefitProcedureComponent("procedure", e); 26876 } 26877 if (element.hasPrecedenceElement()) { 26878 composePositiveInt("precedence", element.getPrecedenceElement()); 26879 } 26880 if (element.hasInsurance()) { 26881 composeExplanationOfBenefitInsuranceComponent("insurance", element.getInsurance()); 26882 } 26883 if (element.hasAccident()) { 26884 composeExplanationOfBenefitAccidentComponent("accident", element.getAccident()); 26885 } 26886 if (element.hasEmploymentImpacted()) { 26887 composePeriod("employmentImpacted", element.getEmploymentImpacted()); 26888 } 26889 if (element.hasHospitalization()) { 26890 composePeriod("hospitalization", element.getHospitalization()); 26891 } 26892 if (element.hasItem()) { 26893 for (ExplanationOfBenefit.ItemComponent e : element.getItem()) 26894 composeExplanationOfBenefitItemComponent("item", e); 26895 } 26896 if (element.hasAddItem()) { 26897 for (ExplanationOfBenefit.AddedItemComponent e : element.getAddItem()) 26898 composeExplanationOfBenefitAddedItemComponent("addItem", e); 26899 } 26900 if (element.hasTotalCost()) { 26901 composeMoney("totalCost", element.getTotalCost()); 26902 } 26903 if (element.hasUnallocDeductable()) { 26904 composeMoney("unallocDeductable", element.getUnallocDeductable()); 26905 } 26906 if (element.hasTotalBenefit()) { 26907 composeMoney("totalBenefit", element.getTotalBenefit()); 26908 } 26909 if (element.hasPayment()) { 26910 composeExplanationOfBenefitPaymentComponent("payment", element.getPayment()); 26911 } 26912 if (element.hasForm()) { 26913 composeCodeableConcept("form", element.getForm()); 26914 } 26915 if (element.hasProcessNote()) { 26916 for (ExplanationOfBenefit.NoteComponent e : element.getProcessNote()) 26917 composeExplanationOfBenefitNoteComponent("processNote", e); 26918 } 26919 if (element.hasBenefitBalance()) { 26920 for (ExplanationOfBenefit.BenefitBalanceComponent e : element.getBenefitBalance()) 26921 composeExplanationOfBenefitBenefitBalanceComponent("benefitBalance", e); 26922 } 26923 } 26924 26925 protected void composeExplanationOfBenefitRelatedClaimComponent(String name, ExplanationOfBenefit.RelatedClaimComponent element) throws IOException { 26926 if (element != null) { 26927 composeElementAttributes(element); 26928 xml.enter(FHIR_NS, name); 26929 composeExplanationOfBenefitRelatedClaimComponentElements(element); 26930 composeElementClose(element); 26931 xml.exit(FHIR_NS, name); 26932 } 26933 } 26934 26935 protected void composeExplanationOfBenefitRelatedClaimComponentElements(ExplanationOfBenefit.RelatedClaimComponent element) throws IOException { 26936 composeBackboneElements(element); 26937 if (element.hasClaim()) { 26938 composeReference("claim", element.getClaim()); 26939 } 26940 if (element.hasRelationship()) { 26941 composeCodeableConcept("relationship", element.getRelationship()); 26942 } 26943 if (element.hasReference()) { 26944 composeIdentifier("reference", element.getReference()); 26945 } 26946 } 26947 26948 protected void composeExplanationOfBenefitPayeeComponent(String name, ExplanationOfBenefit.PayeeComponent element) throws IOException { 26949 if (element != null) { 26950 composeElementAttributes(element); 26951 xml.enter(FHIR_NS, name); 26952 composeExplanationOfBenefitPayeeComponentElements(element); 26953 composeElementClose(element); 26954 xml.exit(FHIR_NS, name); 26955 } 26956 } 26957 26958 protected void composeExplanationOfBenefitPayeeComponentElements(ExplanationOfBenefit.PayeeComponent element) throws IOException { 26959 composeBackboneElements(element); 26960 if (element.hasType()) { 26961 composeCodeableConcept("type", element.getType()); 26962 } 26963 if (element.hasResourceType()) { 26964 composeCodeableConcept("resourceType", element.getResourceType()); 26965 } 26966 if (element.hasParty()) { 26967 composeReference("party", element.getParty()); 26968 } 26969 } 26970 26971 protected void composeExplanationOfBenefitSupportingInformationComponent(String name, ExplanationOfBenefit.SupportingInformationComponent element) throws IOException { 26972 if (element != null) { 26973 composeElementAttributes(element); 26974 xml.enter(FHIR_NS, name); 26975 composeExplanationOfBenefitSupportingInformationComponentElements(element); 26976 composeElementClose(element); 26977 xml.exit(FHIR_NS, name); 26978 } 26979 } 26980 26981 protected void composeExplanationOfBenefitSupportingInformationComponentElements(ExplanationOfBenefit.SupportingInformationComponent element) throws IOException { 26982 composeBackboneElements(element); 26983 if (element.hasSequenceElement()) { 26984 composePositiveInt("sequence", element.getSequenceElement()); 26985 } 26986 if (element.hasCategory()) { 26987 composeCodeableConcept("category", element.getCategory()); 26988 } 26989 if (element.hasCode()) { 26990 composeCodeableConcept("code", element.getCode()); 26991 } 26992 if (element.hasTiming()) { 26993 composeType("timing", element.getTiming()); 26994 } if (element.hasValue()) { 26995 composeType("value", element.getValue()); 26996 } if (element.hasReason()) { 26997 composeCoding("reason", element.getReason()); 26998 } 26999 } 27000 27001 protected void composeExplanationOfBenefitCareTeamComponent(String name, ExplanationOfBenefit.CareTeamComponent element) throws IOException { 27002 if (element != null) { 27003 composeElementAttributes(element); 27004 xml.enter(FHIR_NS, name); 27005 composeExplanationOfBenefitCareTeamComponentElements(element); 27006 composeElementClose(element); 27007 xml.exit(FHIR_NS, name); 27008 } 27009 } 27010 27011 protected void composeExplanationOfBenefitCareTeamComponentElements(ExplanationOfBenefit.CareTeamComponent element) throws IOException { 27012 composeBackboneElements(element); 27013 if (element.hasSequenceElement()) { 27014 composePositiveInt("sequence", element.getSequenceElement()); 27015 } 27016 if (element.hasProvider()) { 27017 composeReference("provider", element.getProvider()); 27018 } 27019 if (element.hasResponsibleElement()) { 27020 composeBoolean("responsible", element.getResponsibleElement()); 27021 } 27022 if (element.hasRole()) { 27023 composeCodeableConcept("role", element.getRole()); 27024 } 27025 if (element.hasQualification()) { 27026 composeCodeableConcept("qualification", element.getQualification()); 27027 } 27028 } 27029 27030 protected void composeExplanationOfBenefitDiagnosisComponent(String name, ExplanationOfBenefit.DiagnosisComponent element) throws IOException { 27031 if (element != null) { 27032 composeElementAttributes(element); 27033 xml.enter(FHIR_NS, name); 27034 composeExplanationOfBenefitDiagnosisComponentElements(element); 27035 composeElementClose(element); 27036 xml.exit(FHIR_NS, name); 27037 } 27038 } 27039 27040 protected void composeExplanationOfBenefitDiagnosisComponentElements(ExplanationOfBenefit.DiagnosisComponent element) throws IOException { 27041 composeBackboneElements(element); 27042 if (element.hasSequenceElement()) { 27043 composePositiveInt("sequence", element.getSequenceElement()); 27044 } 27045 if (element.hasDiagnosis()) { 27046 composeType("diagnosis", element.getDiagnosis()); 27047 } if (element.hasType()) { 27048 for (CodeableConcept e : element.getType()) 27049 composeCodeableConcept("type", e); 27050 } 27051 if (element.hasPackageCode()) { 27052 composeCodeableConcept("packageCode", element.getPackageCode()); 27053 } 27054 } 27055 27056 protected void composeExplanationOfBenefitProcedureComponent(String name, ExplanationOfBenefit.ProcedureComponent element) throws IOException { 27057 if (element != null) { 27058 composeElementAttributes(element); 27059 xml.enter(FHIR_NS, name); 27060 composeExplanationOfBenefitProcedureComponentElements(element); 27061 composeElementClose(element); 27062 xml.exit(FHIR_NS, name); 27063 } 27064 } 27065 27066 protected void composeExplanationOfBenefitProcedureComponentElements(ExplanationOfBenefit.ProcedureComponent element) throws IOException { 27067 composeBackboneElements(element); 27068 if (element.hasSequenceElement()) { 27069 composePositiveInt("sequence", element.getSequenceElement()); 27070 } 27071 if (element.hasDateElement()) { 27072 composeDateTime("date", element.getDateElement()); 27073 } 27074 if (element.hasProcedure()) { 27075 composeType("procedure", element.getProcedure()); 27076 } } 27077 27078 protected void composeExplanationOfBenefitInsuranceComponent(String name, ExplanationOfBenefit.InsuranceComponent element) throws IOException { 27079 if (element != null) { 27080 composeElementAttributes(element); 27081 xml.enter(FHIR_NS, name); 27082 composeExplanationOfBenefitInsuranceComponentElements(element); 27083 composeElementClose(element); 27084 xml.exit(FHIR_NS, name); 27085 } 27086 } 27087 27088 protected void composeExplanationOfBenefitInsuranceComponentElements(ExplanationOfBenefit.InsuranceComponent element) throws IOException { 27089 composeBackboneElements(element); 27090 if (element.hasCoverage()) { 27091 composeReference("coverage", element.getCoverage()); 27092 } 27093 if (element.hasPreAuthRef()) { 27094 for (StringType e : element.getPreAuthRef()) 27095 composeString("preAuthRef", e); 27096 } 27097 } 27098 27099 protected void composeExplanationOfBenefitAccidentComponent(String name, ExplanationOfBenefit.AccidentComponent element) throws IOException { 27100 if (element != null) { 27101 composeElementAttributes(element); 27102 xml.enter(FHIR_NS, name); 27103 composeExplanationOfBenefitAccidentComponentElements(element); 27104 composeElementClose(element); 27105 xml.exit(FHIR_NS, name); 27106 } 27107 } 27108 27109 protected void composeExplanationOfBenefitAccidentComponentElements(ExplanationOfBenefit.AccidentComponent element) throws IOException { 27110 composeBackboneElements(element); 27111 if (element.hasDateElement()) { 27112 composeDate("date", element.getDateElement()); 27113 } 27114 if (element.hasType()) { 27115 composeCodeableConcept("type", element.getType()); 27116 } 27117 if (element.hasLocation()) { 27118 composeType("location", element.getLocation()); 27119 } } 27120 27121 protected void composeExplanationOfBenefitItemComponent(String name, ExplanationOfBenefit.ItemComponent element) throws IOException { 27122 if (element != null) { 27123 composeElementAttributes(element); 27124 xml.enter(FHIR_NS, name); 27125 composeExplanationOfBenefitItemComponentElements(element); 27126 composeElementClose(element); 27127 xml.exit(FHIR_NS, name); 27128 } 27129 } 27130 27131 protected void composeExplanationOfBenefitItemComponentElements(ExplanationOfBenefit.ItemComponent element) throws IOException { 27132 composeBackboneElements(element); 27133 if (element.hasSequenceElement()) { 27134 composePositiveInt("sequence", element.getSequenceElement()); 27135 } 27136 if (element.hasCareTeamLinkId()) { 27137 for (PositiveIntType e : element.getCareTeamLinkId()) 27138 composePositiveInt("careTeamLinkId", e); 27139 } 27140 if (element.hasDiagnosisLinkId()) { 27141 for (PositiveIntType e : element.getDiagnosisLinkId()) 27142 composePositiveInt("diagnosisLinkId", e); 27143 } 27144 if (element.hasProcedureLinkId()) { 27145 for (PositiveIntType e : element.getProcedureLinkId()) 27146 composePositiveInt("procedureLinkId", e); 27147 } 27148 if (element.hasInformationLinkId()) { 27149 for (PositiveIntType e : element.getInformationLinkId()) 27150 composePositiveInt("informationLinkId", e); 27151 } 27152 if (element.hasRevenue()) { 27153 composeCodeableConcept("revenue", element.getRevenue()); 27154 } 27155 if (element.hasCategory()) { 27156 composeCodeableConcept("category", element.getCategory()); 27157 } 27158 if (element.hasService()) { 27159 composeCodeableConcept("service", element.getService()); 27160 } 27161 if (element.hasModifier()) { 27162 for (CodeableConcept e : element.getModifier()) 27163 composeCodeableConcept("modifier", e); 27164 } 27165 if (element.hasProgramCode()) { 27166 for (CodeableConcept e : element.getProgramCode()) 27167 composeCodeableConcept("programCode", e); 27168 } 27169 if (element.hasServiced()) { 27170 composeType("serviced", element.getServiced()); 27171 } if (element.hasLocation()) { 27172 composeType("location", element.getLocation()); 27173 } if (element.hasQuantity()) { 27174 composeSimpleQuantity("quantity", element.getQuantity()); 27175 } 27176 if (element.hasUnitPrice()) { 27177 composeMoney("unitPrice", element.getUnitPrice()); 27178 } 27179 if (element.hasFactorElement()) { 27180 composeDecimal("factor", element.getFactorElement()); 27181 } 27182 if (element.hasNet()) { 27183 composeMoney("net", element.getNet()); 27184 } 27185 if (element.hasUdi()) { 27186 for (Reference e : element.getUdi()) 27187 composeReference("udi", e); 27188 } 27189 if (element.hasBodySite()) { 27190 composeCodeableConcept("bodySite", element.getBodySite()); 27191 } 27192 if (element.hasSubSite()) { 27193 for (CodeableConcept e : element.getSubSite()) 27194 composeCodeableConcept("subSite", e); 27195 } 27196 if (element.hasEncounter()) { 27197 for (Reference e : element.getEncounter()) 27198 composeReference("encounter", e); 27199 } 27200 if (element.hasNoteNumber()) { 27201 for (PositiveIntType e : element.getNoteNumber()) 27202 composePositiveInt("noteNumber", e); 27203 } 27204 if (element.hasAdjudication()) { 27205 for (ExplanationOfBenefit.AdjudicationComponent e : element.getAdjudication()) 27206 composeExplanationOfBenefitAdjudicationComponent("adjudication", e); 27207 } 27208 if (element.hasDetail()) { 27209 for (ExplanationOfBenefit.DetailComponent e : element.getDetail()) 27210 composeExplanationOfBenefitDetailComponent("detail", e); 27211 } 27212 } 27213 27214 protected void composeExplanationOfBenefitAdjudicationComponent(String name, ExplanationOfBenefit.AdjudicationComponent element) throws IOException { 27215 if (element != null) { 27216 composeElementAttributes(element); 27217 xml.enter(FHIR_NS, name); 27218 composeExplanationOfBenefitAdjudicationComponentElements(element); 27219 composeElementClose(element); 27220 xml.exit(FHIR_NS, name); 27221 } 27222 } 27223 27224 protected void composeExplanationOfBenefitAdjudicationComponentElements(ExplanationOfBenefit.AdjudicationComponent element) throws IOException { 27225 composeBackboneElements(element); 27226 if (element.hasCategory()) { 27227 composeCodeableConcept("category", element.getCategory()); 27228 } 27229 if (element.hasReason()) { 27230 composeCodeableConcept("reason", element.getReason()); 27231 } 27232 if (element.hasAmount()) { 27233 composeMoney("amount", element.getAmount()); 27234 } 27235 if (element.hasValueElement()) { 27236 composeDecimal("value", element.getValueElement()); 27237 } 27238 } 27239 27240 protected void composeExplanationOfBenefitDetailComponent(String name, ExplanationOfBenefit.DetailComponent element) throws IOException { 27241 if (element != null) { 27242 composeElementAttributes(element); 27243 xml.enter(FHIR_NS, name); 27244 composeExplanationOfBenefitDetailComponentElements(element); 27245 composeElementClose(element); 27246 xml.exit(FHIR_NS, name); 27247 } 27248 } 27249 27250 protected void composeExplanationOfBenefitDetailComponentElements(ExplanationOfBenefit.DetailComponent element) throws IOException { 27251 composeBackboneElements(element); 27252 if (element.hasSequenceElement()) { 27253 composePositiveInt("sequence", element.getSequenceElement()); 27254 } 27255 if (element.hasType()) { 27256 composeCodeableConcept("type", element.getType()); 27257 } 27258 if (element.hasRevenue()) { 27259 composeCodeableConcept("revenue", element.getRevenue()); 27260 } 27261 if (element.hasCategory()) { 27262 composeCodeableConcept("category", element.getCategory()); 27263 } 27264 if (element.hasService()) { 27265 composeCodeableConcept("service", element.getService()); 27266 } 27267 if (element.hasModifier()) { 27268 for (CodeableConcept e : element.getModifier()) 27269 composeCodeableConcept("modifier", e); 27270 } 27271 if (element.hasProgramCode()) { 27272 for (CodeableConcept e : element.getProgramCode()) 27273 composeCodeableConcept("programCode", e); 27274 } 27275 if (element.hasQuantity()) { 27276 composeSimpleQuantity("quantity", element.getQuantity()); 27277 } 27278 if (element.hasUnitPrice()) { 27279 composeMoney("unitPrice", element.getUnitPrice()); 27280 } 27281 if (element.hasFactorElement()) { 27282 composeDecimal("factor", element.getFactorElement()); 27283 } 27284 if (element.hasNet()) { 27285 composeMoney("net", element.getNet()); 27286 } 27287 if (element.hasUdi()) { 27288 for (Reference e : element.getUdi()) 27289 composeReference("udi", e); 27290 } 27291 if (element.hasNoteNumber()) { 27292 for (PositiveIntType e : element.getNoteNumber()) 27293 composePositiveInt("noteNumber", e); 27294 } 27295 if (element.hasAdjudication()) { 27296 for (ExplanationOfBenefit.AdjudicationComponent e : element.getAdjudication()) 27297 composeExplanationOfBenefitAdjudicationComponent("adjudication", e); 27298 } 27299 if (element.hasSubDetail()) { 27300 for (ExplanationOfBenefit.SubDetailComponent e : element.getSubDetail()) 27301 composeExplanationOfBenefitSubDetailComponent("subDetail", e); 27302 } 27303 } 27304 27305 protected void composeExplanationOfBenefitSubDetailComponent(String name, ExplanationOfBenefit.SubDetailComponent element) throws IOException { 27306 if (element != null) { 27307 composeElementAttributes(element); 27308 xml.enter(FHIR_NS, name); 27309 composeExplanationOfBenefitSubDetailComponentElements(element); 27310 composeElementClose(element); 27311 xml.exit(FHIR_NS, name); 27312 } 27313 } 27314 27315 protected void composeExplanationOfBenefitSubDetailComponentElements(ExplanationOfBenefit.SubDetailComponent element) throws IOException { 27316 composeBackboneElements(element); 27317 if (element.hasSequenceElement()) { 27318 composePositiveInt("sequence", element.getSequenceElement()); 27319 } 27320 if (element.hasType()) { 27321 composeCodeableConcept("type", element.getType()); 27322 } 27323 if (element.hasRevenue()) { 27324 composeCodeableConcept("revenue", element.getRevenue()); 27325 } 27326 if (element.hasCategory()) { 27327 composeCodeableConcept("category", element.getCategory()); 27328 } 27329 if (element.hasService()) { 27330 composeCodeableConcept("service", element.getService()); 27331 } 27332 if (element.hasModifier()) { 27333 for (CodeableConcept e : element.getModifier()) 27334 composeCodeableConcept("modifier", e); 27335 } 27336 if (element.hasProgramCode()) { 27337 for (CodeableConcept e : element.getProgramCode()) 27338 composeCodeableConcept("programCode", e); 27339 } 27340 if (element.hasQuantity()) { 27341 composeSimpleQuantity("quantity", element.getQuantity()); 27342 } 27343 if (element.hasUnitPrice()) { 27344 composeMoney("unitPrice", element.getUnitPrice()); 27345 } 27346 if (element.hasFactorElement()) { 27347 composeDecimal("factor", element.getFactorElement()); 27348 } 27349 if (element.hasNet()) { 27350 composeMoney("net", element.getNet()); 27351 } 27352 if (element.hasUdi()) { 27353 for (Reference e : element.getUdi()) 27354 composeReference("udi", e); 27355 } 27356 if (element.hasNoteNumber()) { 27357 for (PositiveIntType e : element.getNoteNumber()) 27358 composePositiveInt("noteNumber", e); 27359 } 27360 if (element.hasAdjudication()) { 27361 for (ExplanationOfBenefit.AdjudicationComponent e : element.getAdjudication()) 27362 composeExplanationOfBenefitAdjudicationComponent("adjudication", e); 27363 } 27364 } 27365 27366 protected void composeExplanationOfBenefitAddedItemComponent(String name, ExplanationOfBenefit.AddedItemComponent element) throws IOException { 27367 if (element != null) { 27368 composeElementAttributes(element); 27369 xml.enter(FHIR_NS, name); 27370 composeExplanationOfBenefitAddedItemComponentElements(element); 27371 composeElementClose(element); 27372 xml.exit(FHIR_NS, name); 27373 } 27374 } 27375 27376 protected void composeExplanationOfBenefitAddedItemComponentElements(ExplanationOfBenefit.AddedItemComponent element) throws IOException { 27377 composeBackboneElements(element); 27378 if (element.hasSequenceLinkId()) { 27379 for (PositiveIntType e : element.getSequenceLinkId()) 27380 composePositiveInt("sequenceLinkId", e); 27381 } 27382 if (element.hasRevenue()) { 27383 composeCodeableConcept("revenue", element.getRevenue()); 27384 } 27385 if (element.hasCategory()) { 27386 composeCodeableConcept("category", element.getCategory()); 27387 } 27388 if (element.hasService()) { 27389 composeCodeableConcept("service", element.getService()); 27390 } 27391 if (element.hasModifier()) { 27392 for (CodeableConcept e : element.getModifier()) 27393 composeCodeableConcept("modifier", e); 27394 } 27395 if (element.hasFee()) { 27396 composeMoney("fee", element.getFee()); 27397 } 27398 if (element.hasNoteNumber()) { 27399 for (PositiveIntType e : element.getNoteNumber()) 27400 composePositiveInt("noteNumber", e); 27401 } 27402 if (element.hasAdjudication()) { 27403 for (ExplanationOfBenefit.AdjudicationComponent e : element.getAdjudication()) 27404 composeExplanationOfBenefitAdjudicationComponent("adjudication", e); 27405 } 27406 if (element.hasDetail()) { 27407 for (ExplanationOfBenefit.AddedItemsDetailComponent e : element.getDetail()) 27408 composeExplanationOfBenefitAddedItemsDetailComponent("detail", e); 27409 } 27410 } 27411 27412 protected void composeExplanationOfBenefitAddedItemsDetailComponent(String name, ExplanationOfBenefit.AddedItemsDetailComponent element) throws IOException { 27413 if (element != null) { 27414 composeElementAttributes(element); 27415 xml.enter(FHIR_NS, name); 27416 composeExplanationOfBenefitAddedItemsDetailComponentElements(element); 27417 composeElementClose(element); 27418 xml.exit(FHIR_NS, name); 27419 } 27420 } 27421 27422 protected void composeExplanationOfBenefitAddedItemsDetailComponentElements(ExplanationOfBenefit.AddedItemsDetailComponent element) throws IOException { 27423 composeBackboneElements(element); 27424 if (element.hasRevenue()) { 27425 composeCodeableConcept("revenue", element.getRevenue()); 27426 } 27427 if (element.hasCategory()) { 27428 composeCodeableConcept("category", element.getCategory()); 27429 } 27430 if (element.hasService()) { 27431 composeCodeableConcept("service", element.getService()); 27432 } 27433 if (element.hasModifier()) { 27434 for (CodeableConcept e : element.getModifier()) 27435 composeCodeableConcept("modifier", e); 27436 } 27437 if (element.hasFee()) { 27438 composeMoney("fee", element.getFee()); 27439 } 27440 if (element.hasNoteNumber()) { 27441 for (PositiveIntType e : element.getNoteNumber()) 27442 composePositiveInt("noteNumber", e); 27443 } 27444 if (element.hasAdjudication()) { 27445 for (ExplanationOfBenefit.AdjudicationComponent e : element.getAdjudication()) 27446 composeExplanationOfBenefitAdjudicationComponent("adjudication", e); 27447 } 27448 } 27449 27450 protected void composeExplanationOfBenefitPaymentComponent(String name, ExplanationOfBenefit.PaymentComponent element) throws IOException { 27451 if (element != null) { 27452 composeElementAttributes(element); 27453 xml.enter(FHIR_NS, name); 27454 composeExplanationOfBenefitPaymentComponentElements(element); 27455 composeElementClose(element); 27456 xml.exit(FHIR_NS, name); 27457 } 27458 } 27459 27460 protected void composeExplanationOfBenefitPaymentComponentElements(ExplanationOfBenefit.PaymentComponent element) throws IOException { 27461 composeBackboneElements(element); 27462 if (element.hasType()) { 27463 composeCodeableConcept("type", element.getType()); 27464 } 27465 if (element.hasAdjustment()) { 27466 composeMoney("adjustment", element.getAdjustment()); 27467 } 27468 if (element.hasAdjustmentReason()) { 27469 composeCodeableConcept("adjustmentReason", element.getAdjustmentReason()); 27470 } 27471 if (element.hasDateElement()) { 27472 composeDate("date", element.getDateElement()); 27473 } 27474 if (element.hasAmount()) { 27475 composeMoney("amount", element.getAmount()); 27476 } 27477 if (element.hasIdentifier()) { 27478 composeIdentifier("identifier", element.getIdentifier()); 27479 } 27480 } 27481 27482 protected void composeExplanationOfBenefitNoteComponent(String name, ExplanationOfBenefit.NoteComponent element) throws IOException { 27483 if (element != null) { 27484 composeElementAttributes(element); 27485 xml.enter(FHIR_NS, name); 27486 composeExplanationOfBenefitNoteComponentElements(element); 27487 composeElementClose(element); 27488 xml.exit(FHIR_NS, name); 27489 } 27490 } 27491 27492 protected void composeExplanationOfBenefitNoteComponentElements(ExplanationOfBenefit.NoteComponent element) throws IOException { 27493 composeBackboneElements(element); 27494 if (element.hasNumberElement()) { 27495 composePositiveInt("number", element.getNumberElement()); 27496 } 27497 if (element.hasType()) { 27498 composeCodeableConcept("type", element.getType()); 27499 } 27500 if (element.hasTextElement()) { 27501 composeString("text", element.getTextElement()); 27502 } 27503 if (element.hasLanguage()) { 27504 composeCodeableConcept("language", element.getLanguage()); 27505 } 27506 } 27507 27508 protected void composeExplanationOfBenefitBenefitBalanceComponent(String name, ExplanationOfBenefit.BenefitBalanceComponent element) throws IOException { 27509 if (element != null) { 27510 composeElementAttributes(element); 27511 xml.enter(FHIR_NS, name); 27512 composeExplanationOfBenefitBenefitBalanceComponentElements(element); 27513 composeElementClose(element); 27514 xml.exit(FHIR_NS, name); 27515 } 27516 } 27517 27518 protected void composeExplanationOfBenefitBenefitBalanceComponentElements(ExplanationOfBenefit.BenefitBalanceComponent element) throws IOException { 27519 composeBackboneElements(element); 27520 if (element.hasCategory()) { 27521 composeCodeableConcept("category", element.getCategory()); 27522 } 27523 if (element.hasSubCategory()) { 27524 composeCodeableConcept("subCategory", element.getSubCategory()); 27525 } 27526 if (element.hasExcludedElement()) { 27527 composeBoolean("excluded", element.getExcludedElement()); 27528 } 27529 if (element.hasNameElement()) { 27530 composeString("name", element.getNameElement()); 27531 } 27532 if (element.hasDescriptionElement()) { 27533 composeString("description", element.getDescriptionElement()); 27534 } 27535 if (element.hasNetwork()) { 27536 composeCodeableConcept("network", element.getNetwork()); 27537 } 27538 if (element.hasUnit()) { 27539 composeCodeableConcept("unit", element.getUnit()); 27540 } 27541 if (element.hasTerm()) { 27542 composeCodeableConcept("term", element.getTerm()); 27543 } 27544 if (element.hasFinancial()) { 27545 for (ExplanationOfBenefit.BenefitComponent e : element.getFinancial()) 27546 composeExplanationOfBenefitBenefitComponent("financial", e); 27547 } 27548 } 27549 27550 protected void composeExplanationOfBenefitBenefitComponent(String name, ExplanationOfBenefit.BenefitComponent element) throws IOException { 27551 if (element != null) { 27552 composeElementAttributes(element); 27553 xml.enter(FHIR_NS, name); 27554 composeExplanationOfBenefitBenefitComponentElements(element); 27555 composeElementClose(element); 27556 xml.exit(FHIR_NS, name); 27557 } 27558 } 27559 27560 protected void composeExplanationOfBenefitBenefitComponentElements(ExplanationOfBenefit.BenefitComponent element) throws IOException { 27561 composeBackboneElements(element); 27562 if (element.hasType()) { 27563 composeCodeableConcept("type", element.getType()); 27564 } 27565 if (element.hasAllowed()) { 27566 composeType("allowed", element.getAllowed()); 27567 } if (element.hasUsed()) { 27568 composeType("used", element.getUsed()); 27569 } } 27570 27571 protected void composeFamilyMemberHistory(String name, FamilyMemberHistory element) throws IOException { 27572 if (element != null) { 27573 composeDomainResourceAttributes(element); 27574 xml.enter(FHIR_NS, name); 27575 composeFamilyMemberHistoryElements(element); 27576 composeElementClose(element); 27577 xml.exit(FHIR_NS, name); 27578 } 27579 } 27580 27581 protected void composeFamilyMemberHistoryElements(FamilyMemberHistory element) throws IOException { 27582 composeDomainResourceElements(element); 27583 if (element.hasIdentifier()) { 27584 for (Identifier e : element.getIdentifier()) 27585 composeIdentifier("identifier", e); 27586 } 27587 if (element.hasDefinition()) { 27588 for (Reference e : element.getDefinition()) 27589 composeReference("definition", e); 27590 } 27591 if (element.hasStatusElement()) 27592 composeEnumeration("status", element.getStatusElement(), new FamilyMemberHistory.FamilyHistoryStatusEnumFactory()); 27593 if (element.hasNotDoneElement()) { 27594 composeBoolean("notDone", element.getNotDoneElement()); 27595 } 27596 if (element.hasNotDoneReason()) { 27597 composeCodeableConcept("notDoneReason", element.getNotDoneReason()); 27598 } 27599 if (element.hasPatient()) { 27600 composeReference("patient", element.getPatient()); 27601 } 27602 if (element.hasDateElement()) { 27603 composeDateTime("date", element.getDateElement()); 27604 } 27605 if (element.hasNameElement()) { 27606 composeString("name", element.getNameElement()); 27607 } 27608 if (element.hasRelationship()) { 27609 composeCodeableConcept("relationship", element.getRelationship()); 27610 } 27611 if (element.hasGenderElement()) 27612 composeEnumeration("gender", element.getGenderElement(), new Enumerations.AdministrativeGenderEnumFactory()); 27613 if (element.hasBorn()) { 27614 composeType("born", element.getBorn()); 27615 } if (element.hasAge()) { 27616 composeType("age", element.getAge()); 27617 } if (element.hasEstimatedAgeElement()) { 27618 composeBoolean("estimatedAge", element.getEstimatedAgeElement()); 27619 } 27620 if (element.hasDeceased()) { 27621 composeType("deceased", element.getDeceased()); 27622 } if (element.hasReasonCode()) { 27623 for (CodeableConcept e : element.getReasonCode()) 27624 composeCodeableConcept("reasonCode", e); 27625 } 27626 if (element.hasReasonReference()) { 27627 for (Reference e : element.getReasonReference()) 27628 composeReference("reasonReference", e); 27629 } 27630 if (element.hasNote()) { 27631 for (Annotation e : element.getNote()) 27632 composeAnnotation("note", e); 27633 } 27634 if (element.hasCondition()) { 27635 for (FamilyMemberHistory.FamilyMemberHistoryConditionComponent e : element.getCondition()) 27636 composeFamilyMemberHistoryFamilyMemberHistoryConditionComponent("condition", e); 27637 } 27638 } 27639 27640 protected void composeFamilyMemberHistoryFamilyMemberHistoryConditionComponent(String name, FamilyMemberHistory.FamilyMemberHistoryConditionComponent element) throws IOException { 27641 if (element != null) { 27642 composeElementAttributes(element); 27643 xml.enter(FHIR_NS, name); 27644 composeFamilyMemberHistoryFamilyMemberHistoryConditionComponentElements(element); 27645 composeElementClose(element); 27646 xml.exit(FHIR_NS, name); 27647 } 27648 } 27649 27650 protected void composeFamilyMemberHistoryFamilyMemberHistoryConditionComponentElements(FamilyMemberHistory.FamilyMemberHistoryConditionComponent element) throws IOException { 27651 composeBackboneElements(element); 27652 if (element.hasCode()) { 27653 composeCodeableConcept("code", element.getCode()); 27654 } 27655 if (element.hasOutcome()) { 27656 composeCodeableConcept("outcome", element.getOutcome()); 27657 } 27658 if (element.hasOnset()) { 27659 composeType("onset", element.getOnset()); 27660 } if (element.hasNote()) { 27661 for (Annotation e : element.getNote()) 27662 composeAnnotation("note", e); 27663 } 27664 } 27665 27666 protected void composeFlag(String name, Flag element) throws IOException { 27667 if (element != null) { 27668 composeDomainResourceAttributes(element); 27669 xml.enter(FHIR_NS, name); 27670 composeFlagElements(element); 27671 composeElementClose(element); 27672 xml.exit(FHIR_NS, name); 27673 } 27674 } 27675 27676 protected void composeFlagElements(Flag element) throws IOException { 27677 composeDomainResourceElements(element); 27678 if (element.hasIdentifier()) { 27679 for (Identifier e : element.getIdentifier()) 27680 composeIdentifier("identifier", e); 27681 } 27682 if (element.hasStatusElement()) 27683 composeEnumeration("status", element.getStatusElement(), new Flag.FlagStatusEnumFactory()); 27684 if (element.hasCategory()) { 27685 composeCodeableConcept("category", element.getCategory()); 27686 } 27687 if (element.hasCode()) { 27688 composeCodeableConcept("code", element.getCode()); 27689 } 27690 if (element.hasSubject()) { 27691 composeReference("subject", element.getSubject()); 27692 } 27693 if (element.hasPeriod()) { 27694 composePeriod("period", element.getPeriod()); 27695 } 27696 if (element.hasEncounter()) { 27697 composeReference("encounter", element.getEncounter()); 27698 } 27699 if (element.hasAuthor()) { 27700 composeReference("author", element.getAuthor()); 27701 } 27702 } 27703 27704 protected void composeGoal(String name, Goal element) throws IOException { 27705 if (element != null) { 27706 composeDomainResourceAttributes(element); 27707 xml.enter(FHIR_NS, name); 27708 composeGoalElements(element); 27709 composeElementClose(element); 27710 xml.exit(FHIR_NS, name); 27711 } 27712 } 27713 27714 protected void composeGoalElements(Goal element) throws IOException { 27715 composeDomainResourceElements(element); 27716 if (element.hasIdentifier()) { 27717 for (Identifier e : element.getIdentifier()) 27718 composeIdentifier("identifier", e); 27719 } 27720 if (element.hasStatusElement()) 27721 composeEnumeration("status", element.getStatusElement(), new Goal.GoalStatusEnumFactory()); 27722 if (element.hasCategory()) { 27723 for (CodeableConcept e : element.getCategory()) 27724 composeCodeableConcept("category", e); 27725 } 27726 if (element.hasPriority()) { 27727 composeCodeableConcept("priority", element.getPriority()); 27728 } 27729 if (element.hasDescription()) { 27730 composeCodeableConcept("description", element.getDescription()); 27731 } 27732 if (element.hasSubject()) { 27733 composeReference("subject", element.getSubject()); 27734 } 27735 if (element.hasStart()) { 27736 composeType("start", element.getStart()); 27737 } if (element.hasTarget()) { 27738 composeGoalGoalTargetComponent("target", element.getTarget()); 27739 } 27740 if (element.hasStatusDateElement()) { 27741 composeDate("statusDate", element.getStatusDateElement()); 27742 } 27743 if (element.hasStatusReasonElement()) { 27744 composeString("statusReason", element.getStatusReasonElement()); 27745 } 27746 if (element.hasExpressedBy()) { 27747 composeReference("expressedBy", element.getExpressedBy()); 27748 } 27749 if (element.hasAddresses()) { 27750 for (Reference e : element.getAddresses()) 27751 composeReference("addresses", e); 27752 } 27753 if (element.hasNote()) { 27754 for (Annotation e : element.getNote()) 27755 composeAnnotation("note", e); 27756 } 27757 if (element.hasOutcomeCode()) { 27758 for (CodeableConcept e : element.getOutcomeCode()) 27759 composeCodeableConcept("outcomeCode", e); 27760 } 27761 if (element.hasOutcomeReference()) { 27762 for (Reference e : element.getOutcomeReference()) 27763 composeReference("outcomeReference", e); 27764 } 27765 } 27766 27767 protected void composeGoalGoalTargetComponent(String name, Goal.GoalTargetComponent element) throws IOException { 27768 if (element != null) { 27769 composeElementAttributes(element); 27770 xml.enter(FHIR_NS, name); 27771 composeGoalGoalTargetComponentElements(element); 27772 composeElementClose(element); 27773 xml.exit(FHIR_NS, name); 27774 } 27775 } 27776 27777 protected void composeGoalGoalTargetComponentElements(Goal.GoalTargetComponent element) throws IOException { 27778 composeBackboneElements(element); 27779 if (element.hasMeasure()) { 27780 composeCodeableConcept("measure", element.getMeasure()); 27781 } 27782 if (element.hasDetail()) { 27783 composeType("detail", element.getDetail()); 27784 } if (element.hasDue()) { 27785 composeType("due", element.getDue()); 27786 } } 27787 27788 protected void composeGraphDefinition(String name, GraphDefinition element) throws IOException { 27789 if (element != null) { 27790 composeDomainResourceAttributes(element); 27791 xml.enter(FHIR_NS, name); 27792 composeGraphDefinitionElements(element); 27793 composeElementClose(element); 27794 xml.exit(FHIR_NS, name); 27795 } 27796 } 27797 27798 protected void composeGraphDefinitionElements(GraphDefinition element) throws IOException { 27799 composeDomainResourceElements(element); 27800 if (element.hasUrlElement()) { 27801 composeUri("url", element.getUrlElement()); 27802 } 27803 if (element.hasVersionElement()) { 27804 composeString("version", element.getVersionElement()); 27805 } 27806 if (element.hasNameElement()) { 27807 composeString("name", element.getNameElement()); 27808 } 27809 if (element.hasStatusElement()) 27810 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 27811 if (element.hasExperimentalElement()) { 27812 composeBoolean("experimental", element.getExperimentalElement()); 27813 } 27814 if (element.hasDateElement()) { 27815 composeDateTime("date", element.getDateElement()); 27816 } 27817 if (element.hasPublisherElement()) { 27818 composeString("publisher", element.getPublisherElement()); 27819 } 27820 if (element.hasContact()) { 27821 for (ContactDetail e : element.getContact()) 27822 composeContactDetail("contact", e); 27823 } 27824 if (element.hasDescriptionElement()) { 27825 composeMarkdown("description", element.getDescriptionElement()); 27826 } 27827 if (element.hasUseContext()) { 27828 for (UsageContext e : element.getUseContext()) 27829 composeUsageContext("useContext", e); 27830 } 27831 if (element.hasJurisdiction()) { 27832 for (CodeableConcept e : element.getJurisdiction()) 27833 composeCodeableConcept("jurisdiction", e); 27834 } 27835 if (element.hasPurposeElement()) { 27836 composeMarkdown("purpose", element.getPurposeElement()); 27837 } 27838 if (element.hasStartElement()) { 27839 composeCode("start", element.getStartElement()); 27840 } 27841 if (element.hasProfileElement()) { 27842 composeUri("profile", element.getProfileElement()); 27843 } 27844 if (element.hasLink()) { 27845 for (GraphDefinition.GraphDefinitionLinkComponent e : element.getLink()) 27846 composeGraphDefinitionGraphDefinitionLinkComponent("link", e); 27847 } 27848 } 27849 27850 protected void composeGraphDefinitionGraphDefinitionLinkComponent(String name, GraphDefinition.GraphDefinitionLinkComponent element) throws IOException { 27851 if (element != null) { 27852 composeElementAttributes(element); 27853 xml.enter(FHIR_NS, name); 27854 composeGraphDefinitionGraphDefinitionLinkComponentElements(element); 27855 composeElementClose(element); 27856 xml.exit(FHIR_NS, name); 27857 } 27858 } 27859 27860 protected void composeGraphDefinitionGraphDefinitionLinkComponentElements(GraphDefinition.GraphDefinitionLinkComponent element) throws IOException { 27861 composeBackboneElements(element); 27862 if (element.hasPathElement()) { 27863 composeString("path", element.getPathElement()); 27864 } 27865 if (element.hasSliceNameElement()) { 27866 composeString("sliceName", element.getSliceNameElement()); 27867 } 27868 if (element.hasMinElement()) { 27869 composeInteger("min", element.getMinElement()); 27870 } 27871 if (element.hasMaxElement()) { 27872 composeString("max", element.getMaxElement()); 27873 } 27874 if (element.hasDescriptionElement()) { 27875 composeString("description", element.getDescriptionElement()); 27876 } 27877 if (element.hasTarget()) { 27878 for (GraphDefinition.GraphDefinitionLinkTargetComponent e : element.getTarget()) 27879 composeGraphDefinitionGraphDefinitionLinkTargetComponent("target", e); 27880 } 27881 } 27882 27883 protected void composeGraphDefinitionGraphDefinitionLinkTargetComponent(String name, GraphDefinition.GraphDefinitionLinkTargetComponent element) throws IOException { 27884 if (element != null) { 27885 composeElementAttributes(element); 27886 xml.enter(FHIR_NS, name); 27887 composeGraphDefinitionGraphDefinitionLinkTargetComponentElements(element); 27888 composeElementClose(element); 27889 xml.exit(FHIR_NS, name); 27890 } 27891 } 27892 27893 protected void composeGraphDefinitionGraphDefinitionLinkTargetComponentElements(GraphDefinition.GraphDefinitionLinkTargetComponent element) throws IOException { 27894 composeBackboneElements(element); 27895 if (element.hasTypeElement()) { 27896 composeCode("type", element.getTypeElement()); 27897 } 27898 if (element.hasProfileElement()) { 27899 composeUri("profile", element.getProfileElement()); 27900 } 27901 if (element.hasCompartment()) { 27902 for (GraphDefinition.GraphDefinitionLinkTargetCompartmentComponent e : element.getCompartment()) 27903 composeGraphDefinitionGraphDefinitionLinkTargetCompartmentComponent("compartment", e); 27904 } 27905 if (element.hasLink()) { 27906 for (GraphDefinition.GraphDefinitionLinkComponent e : element.getLink()) 27907 composeGraphDefinitionGraphDefinitionLinkComponent("link", e); 27908 } 27909 } 27910 27911 protected void composeGraphDefinitionGraphDefinitionLinkTargetCompartmentComponent(String name, GraphDefinition.GraphDefinitionLinkTargetCompartmentComponent element) throws IOException { 27912 if (element != null) { 27913 composeElementAttributes(element); 27914 xml.enter(FHIR_NS, name); 27915 composeGraphDefinitionGraphDefinitionLinkTargetCompartmentComponentElements(element); 27916 composeElementClose(element); 27917 xml.exit(FHIR_NS, name); 27918 } 27919 } 27920 27921 protected void composeGraphDefinitionGraphDefinitionLinkTargetCompartmentComponentElements(GraphDefinition.GraphDefinitionLinkTargetCompartmentComponent element) throws IOException { 27922 composeBackboneElements(element); 27923 if (element.hasCodeElement()) 27924 composeEnumeration("code", element.getCodeElement(), new GraphDefinition.CompartmentCodeEnumFactory()); 27925 if (element.hasRuleElement()) 27926 composeEnumeration("rule", element.getRuleElement(), new GraphDefinition.GraphCompartmentRuleEnumFactory()); 27927 if (element.hasExpressionElement()) { 27928 composeString("expression", element.getExpressionElement()); 27929 } 27930 if (element.hasDescriptionElement()) { 27931 composeString("description", element.getDescriptionElement()); 27932 } 27933 } 27934 27935 protected void composeGroup(String name, Group element) throws IOException { 27936 if (element != null) { 27937 composeDomainResourceAttributes(element); 27938 xml.enter(FHIR_NS, name); 27939 composeGroupElements(element); 27940 composeElementClose(element); 27941 xml.exit(FHIR_NS, name); 27942 } 27943 } 27944 27945 protected void composeGroupElements(Group element) throws IOException { 27946 composeDomainResourceElements(element); 27947 if (element.hasIdentifier()) { 27948 for (Identifier e : element.getIdentifier()) 27949 composeIdentifier("identifier", e); 27950 } 27951 if (element.hasActiveElement()) { 27952 composeBoolean("active", element.getActiveElement()); 27953 } 27954 if (element.hasTypeElement()) 27955 composeEnumeration("type", element.getTypeElement(), new Group.GroupTypeEnumFactory()); 27956 if (element.hasActualElement()) { 27957 composeBoolean("actual", element.getActualElement()); 27958 } 27959 if (element.hasCode()) { 27960 composeCodeableConcept("code", element.getCode()); 27961 } 27962 if (element.hasNameElement()) { 27963 composeString("name", element.getNameElement()); 27964 } 27965 if (element.hasQuantityElement()) { 27966 composeUnsignedInt("quantity", element.getQuantityElement()); 27967 } 27968 if (element.hasCharacteristic()) { 27969 for (Group.GroupCharacteristicComponent e : element.getCharacteristic()) 27970 composeGroupGroupCharacteristicComponent("characteristic", e); 27971 } 27972 if (element.hasMember()) { 27973 for (Group.GroupMemberComponent e : element.getMember()) 27974 composeGroupGroupMemberComponent("member", e); 27975 } 27976 } 27977 27978 protected void composeGroupGroupCharacteristicComponent(String name, Group.GroupCharacteristicComponent element) throws IOException { 27979 if (element != null) { 27980 composeElementAttributes(element); 27981 xml.enter(FHIR_NS, name); 27982 composeGroupGroupCharacteristicComponentElements(element); 27983 composeElementClose(element); 27984 xml.exit(FHIR_NS, name); 27985 } 27986 } 27987 27988 protected void composeGroupGroupCharacteristicComponentElements(Group.GroupCharacteristicComponent element) throws IOException { 27989 composeBackboneElements(element); 27990 if (element.hasCode()) { 27991 composeCodeableConcept("code", element.getCode()); 27992 } 27993 if (element.hasValue()) { 27994 composeType("value", element.getValue()); 27995 } if (element.hasExcludeElement()) { 27996 composeBoolean("exclude", element.getExcludeElement()); 27997 } 27998 if (element.hasPeriod()) { 27999 composePeriod("period", element.getPeriod()); 28000 } 28001 } 28002 28003 protected void composeGroupGroupMemberComponent(String name, Group.GroupMemberComponent element) throws IOException { 28004 if (element != null) { 28005 composeElementAttributes(element); 28006 xml.enter(FHIR_NS, name); 28007 composeGroupGroupMemberComponentElements(element); 28008 composeElementClose(element); 28009 xml.exit(FHIR_NS, name); 28010 } 28011 } 28012 28013 protected void composeGroupGroupMemberComponentElements(Group.GroupMemberComponent element) throws IOException { 28014 composeBackboneElements(element); 28015 if (element.hasEntity()) { 28016 composeReference("entity", element.getEntity()); 28017 } 28018 if (element.hasPeriod()) { 28019 composePeriod("period", element.getPeriod()); 28020 } 28021 if (element.hasInactiveElement()) { 28022 composeBoolean("inactive", element.getInactiveElement()); 28023 } 28024 } 28025 28026 protected void composeGuidanceResponse(String name, GuidanceResponse element) throws IOException { 28027 if (element != null) { 28028 composeDomainResourceAttributes(element); 28029 xml.enter(FHIR_NS, name); 28030 composeGuidanceResponseElements(element); 28031 composeElementClose(element); 28032 xml.exit(FHIR_NS, name); 28033 } 28034 } 28035 28036 protected void composeGuidanceResponseElements(GuidanceResponse element) throws IOException { 28037 composeDomainResourceElements(element); 28038 if (element.hasRequestIdElement()) { 28039 composeId("requestId", element.getRequestIdElement()); 28040 } 28041 if (element.hasIdentifier()) { 28042 composeIdentifier("identifier", element.getIdentifier()); 28043 } 28044 if (element.hasModule()) { 28045 composeReference("module", element.getModule()); 28046 } 28047 if (element.hasStatusElement()) 28048 composeEnumeration("status", element.getStatusElement(), new GuidanceResponse.GuidanceResponseStatusEnumFactory()); 28049 if (element.hasSubject()) { 28050 composeReference("subject", element.getSubject()); 28051 } 28052 if (element.hasContext()) { 28053 composeReference("context", element.getContext()); 28054 } 28055 if (element.hasOccurrenceDateTimeElement()) { 28056 composeDateTime("occurrenceDateTime", element.getOccurrenceDateTimeElement()); 28057 } 28058 if (element.hasPerformer()) { 28059 composeReference("performer", element.getPerformer()); 28060 } 28061 if (element.hasReason()) { 28062 composeType("reason", element.getReason()); 28063 } if (element.hasNote()) { 28064 for (Annotation e : element.getNote()) 28065 composeAnnotation("note", e); 28066 } 28067 if (element.hasEvaluationMessage()) { 28068 for (Reference e : element.getEvaluationMessage()) 28069 composeReference("evaluationMessage", e); 28070 } 28071 if (element.hasOutputParameters()) { 28072 composeReference("outputParameters", element.getOutputParameters()); 28073 } 28074 if (element.hasResult()) { 28075 composeReference("result", element.getResult()); 28076 } 28077 if (element.hasDataRequirement()) { 28078 for (DataRequirement e : element.getDataRequirement()) 28079 composeDataRequirement("dataRequirement", e); 28080 } 28081 } 28082 28083 protected void composeHealthcareService(String name, HealthcareService element) throws IOException { 28084 if (element != null) { 28085 composeDomainResourceAttributes(element); 28086 xml.enter(FHIR_NS, name); 28087 composeHealthcareServiceElements(element); 28088 composeElementClose(element); 28089 xml.exit(FHIR_NS, name); 28090 } 28091 } 28092 28093 protected void composeHealthcareServiceElements(HealthcareService element) throws IOException { 28094 composeDomainResourceElements(element); 28095 if (element.hasIdentifier()) { 28096 for (Identifier e : element.getIdentifier()) 28097 composeIdentifier("identifier", e); 28098 } 28099 if (element.hasActiveElement()) { 28100 composeBoolean("active", element.getActiveElement()); 28101 } 28102 if (element.hasProvidedBy()) { 28103 composeReference("providedBy", element.getProvidedBy()); 28104 } 28105 if (element.hasCategory()) { 28106 composeCodeableConcept("category", element.getCategory()); 28107 } 28108 if (element.hasType()) { 28109 for (CodeableConcept e : element.getType()) 28110 composeCodeableConcept("type", e); 28111 } 28112 if (element.hasSpecialty()) { 28113 for (CodeableConcept e : element.getSpecialty()) 28114 composeCodeableConcept("specialty", e); 28115 } 28116 if (element.hasLocation()) { 28117 for (Reference e : element.getLocation()) 28118 composeReference("location", e); 28119 } 28120 if (element.hasNameElement()) { 28121 composeString("name", element.getNameElement()); 28122 } 28123 if (element.hasCommentElement()) { 28124 composeString("comment", element.getCommentElement()); 28125 } 28126 if (element.hasExtraDetailsElement()) { 28127 composeString("extraDetails", element.getExtraDetailsElement()); 28128 } 28129 if (element.hasPhoto()) { 28130 composeAttachment("photo", element.getPhoto()); 28131 } 28132 if (element.hasTelecom()) { 28133 for (ContactPoint e : element.getTelecom()) 28134 composeContactPoint("telecom", e); 28135 } 28136 if (element.hasCoverageArea()) { 28137 for (Reference e : element.getCoverageArea()) 28138 composeReference("coverageArea", e); 28139 } 28140 if (element.hasServiceProvisionCode()) { 28141 for (CodeableConcept e : element.getServiceProvisionCode()) 28142 composeCodeableConcept("serviceProvisionCode", e); 28143 } 28144 if (element.hasEligibility()) { 28145 composeCodeableConcept("eligibility", element.getEligibility()); 28146 } 28147 if (element.hasEligibilityNoteElement()) { 28148 composeString("eligibilityNote", element.getEligibilityNoteElement()); 28149 } 28150 if (element.hasProgramName()) { 28151 for (StringType e : element.getProgramName()) 28152 composeString("programName", e); 28153 } 28154 if (element.hasCharacteristic()) { 28155 for (CodeableConcept e : element.getCharacteristic()) 28156 composeCodeableConcept("characteristic", e); 28157 } 28158 if (element.hasReferralMethod()) { 28159 for (CodeableConcept e : element.getReferralMethod()) 28160 composeCodeableConcept("referralMethod", e); 28161 } 28162 if (element.hasAppointmentRequiredElement()) { 28163 composeBoolean("appointmentRequired", element.getAppointmentRequiredElement()); 28164 } 28165 if (element.hasAvailableTime()) { 28166 for (HealthcareService.HealthcareServiceAvailableTimeComponent e : element.getAvailableTime()) 28167 composeHealthcareServiceHealthcareServiceAvailableTimeComponent("availableTime", e); 28168 } 28169 if (element.hasNotAvailable()) { 28170 for (HealthcareService.HealthcareServiceNotAvailableComponent e : element.getNotAvailable()) 28171 composeHealthcareServiceHealthcareServiceNotAvailableComponent("notAvailable", e); 28172 } 28173 if (element.hasAvailabilityExceptionsElement()) { 28174 composeString("availabilityExceptions", element.getAvailabilityExceptionsElement()); 28175 } 28176 if (element.hasEndpoint()) { 28177 for (Reference e : element.getEndpoint()) 28178 composeReference("endpoint", e); 28179 } 28180 } 28181 28182 protected void composeHealthcareServiceHealthcareServiceAvailableTimeComponent(String name, HealthcareService.HealthcareServiceAvailableTimeComponent element) throws IOException { 28183 if (element != null) { 28184 composeElementAttributes(element); 28185 xml.enter(FHIR_NS, name); 28186 composeHealthcareServiceHealthcareServiceAvailableTimeComponentElements(element); 28187 composeElementClose(element); 28188 xml.exit(FHIR_NS, name); 28189 } 28190 } 28191 28192 protected void composeHealthcareServiceHealthcareServiceAvailableTimeComponentElements(HealthcareService.HealthcareServiceAvailableTimeComponent element) throws IOException { 28193 composeBackboneElements(element); 28194 if (element.hasDaysOfWeek()) 28195 for (Enumeration<HealthcareService.DaysOfWeek> e : element.getDaysOfWeek()) 28196 composeEnumeration("daysOfWeek", e, new HealthcareService.DaysOfWeekEnumFactory()); 28197 if (element.hasAllDayElement()) { 28198 composeBoolean("allDay", element.getAllDayElement()); 28199 } 28200 if (element.hasAvailableStartTimeElement()) { 28201 composeTime("availableStartTime", element.getAvailableStartTimeElement()); 28202 } 28203 if (element.hasAvailableEndTimeElement()) { 28204 composeTime("availableEndTime", element.getAvailableEndTimeElement()); 28205 } 28206 } 28207 28208 protected void composeHealthcareServiceHealthcareServiceNotAvailableComponent(String name, HealthcareService.HealthcareServiceNotAvailableComponent element) throws IOException { 28209 if (element != null) { 28210 composeElementAttributes(element); 28211 xml.enter(FHIR_NS, name); 28212 composeHealthcareServiceHealthcareServiceNotAvailableComponentElements(element); 28213 composeElementClose(element); 28214 xml.exit(FHIR_NS, name); 28215 } 28216 } 28217 28218 protected void composeHealthcareServiceHealthcareServiceNotAvailableComponentElements(HealthcareService.HealthcareServiceNotAvailableComponent element) throws IOException { 28219 composeBackboneElements(element); 28220 if (element.hasDescriptionElement()) { 28221 composeString("description", element.getDescriptionElement()); 28222 } 28223 if (element.hasDuring()) { 28224 composePeriod("during", element.getDuring()); 28225 } 28226 } 28227 28228 protected void composeImagingManifest(String name, ImagingManifest element) throws IOException { 28229 if (element != null) { 28230 composeDomainResourceAttributes(element); 28231 xml.enter(FHIR_NS, name); 28232 composeImagingManifestElements(element); 28233 composeElementClose(element); 28234 xml.exit(FHIR_NS, name); 28235 } 28236 } 28237 28238 protected void composeImagingManifestElements(ImagingManifest element) throws IOException { 28239 composeDomainResourceElements(element); 28240 if (element.hasIdentifier()) { 28241 composeIdentifier("identifier", element.getIdentifier()); 28242 } 28243 if (element.hasPatient()) { 28244 composeReference("patient", element.getPatient()); 28245 } 28246 if (element.hasAuthoringTimeElement()) { 28247 composeDateTime("authoringTime", element.getAuthoringTimeElement()); 28248 } 28249 if (element.hasAuthor()) { 28250 composeReference("author", element.getAuthor()); 28251 } 28252 if (element.hasDescriptionElement()) { 28253 composeString("description", element.getDescriptionElement()); 28254 } 28255 if (element.hasStudy()) { 28256 for (ImagingManifest.StudyComponent e : element.getStudy()) 28257 composeImagingManifestStudyComponent("study", e); 28258 } 28259 } 28260 28261 protected void composeImagingManifestStudyComponent(String name, ImagingManifest.StudyComponent element) throws IOException { 28262 if (element != null) { 28263 composeElementAttributes(element); 28264 xml.enter(FHIR_NS, name); 28265 composeImagingManifestStudyComponentElements(element); 28266 composeElementClose(element); 28267 xml.exit(FHIR_NS, name); 28268 } 28269 } 28270 28271 protected void composeImagingManifestStudyComponentElements(ImagingManifest.StudyComponent element) throws IOException { 28272 composeBackboneElements(element); 28273 if (element.hasUidElement()) { 28274 composeOid("uid", element.getUidElement()); 28275 } 28276 if (element.hasImagingStudy()) { 28277 composeReference("imagingStudy", element.getImagingStudy()); 28278 } 28279 if (element.hasEndpoint()) { 28280 for (Reference e : element.getEndpoint()) 28281 composeReference("endpoint", e); 28282 } 28283 if (element.hasSeries()) { 28284 for (ImagingManifest.SeriesComponent e : element.getSeries()) 28285 composeImagingManifestSeriesComponent("series", e); 28286 } 28287 } 28288 28289 protected void composeImagingManifestSeriesComponent(String name, ImagingManifest.SeriesComponent element) throws IOException { 28290 if (element != null) { 28291 composeElementAttributes(element); 28292 xml.enter(FHIR_NS, name); 28293 composeImagingManifestSeriesComponentElements(element); 28294 composeElementClose(element); 28295 xml.exit(FHIR_NS, name); 28296 } 28297 } 28298 28299 protected void composeImagingManifestSeriesComponentElements(ImagingManifest.SeriesComponent element) throws IOException { 28300 composeBackboneElements(element); 28301 if (element.hasUidElement()) { 28302 composeOid("uid", element.getUidElement()); 28303 } 28304 if (element.hasEndpoint()) { 28305 for (Reference e : element.getEndpoint()) 28306 composeReference("endpoint", e); 28307 } 28308 if (element.hasInstance()) { 28309 for (ImagingManifest.InstanceComponent e : element.getInstance()) 28310 composeImagingManifestInstanceComponent("instance", e); 28311 } 28312 } 28313 28314 protected void composeImagingManifestInstanceComponent(String name, ImagingManifest.InstanceComponent element) throws IOException { 28315 if (element != null) { 28316 composeElementAttributes(element); 28317 xml.enter(FHIR_NS, name); 28318 composeImagingManifestInstanceComponentElements(element); 28319 composeElementClose(element); 28320 xml.exit(FHIR_NS, name); 28321 } 28322 } 28323 28324 protected void composeImagingManifestInstanceComponentElements(ImagingManifest.InstanceComponent element) throws IOException { 28325 composeBackboneElements(element); 28326 if (element.hasSopClassElement()) { 28327 composeOid("sopClass", element.getSopClassElement()); 28328 } 28329 if (element.hasUidElement()) { 28330 composeOid("uid", element.getUidElement()); 28331 } 28332 } 28333 28334 protected void composeImagingStudy(String name, ImagingStudy element) throws IOException { 28335 if (element != null) { 28336 composeDomainResourceAttributes(element); 28337 xml.enter(FHIR_NS, name); 28338 composeImagingStudyElements(element); 28339 composeElementClose(element); 28340 xml.exit(FHIR_NS, name); 28341 } 28342 } 28343 28344 protected void composeImagingStudyElements(ImagingStudy element) throws IOException { 28345 composeDomainResourceElements(element); 28346 if (element.hasUidElement()) { 28347 composeOid("uid", element.getUidElement()); 28348 } 28349 if (element.hasAccession()) { 28350 composeIdentifier("accession", element.getAccession()); 28351 } 28352 if (element.hasIdentifier()) { 28353 for (Identifier e : element.getIdentifier()) 28354 composeIdentifier("identifier", e); 28355 } 28356 if (element.hasAvailabilityElement()) 28357 composeEnumeration("availability", element.getAvailabilityElement(), new ImagingStudy.InstanceAvailabilityEnumFactory()); 28358 if (element.hasModalityList()) { 28359 for (Coding e : element.getModalityList()) 28360 composeCoding("modalityList", e); 28361 } 28362 if (element.hasPatient()) { 28363 composeReference("patient", element.getPatient()); 28364 } 28365 if (element.hasContext()) { 28366 composeReference("context", element.getContext()); 28367 } 28368 if (element.hasStartedElement()) { 28369 composeDateTime("started", element.getStartedElement()); 28370 } 28371 if (element.hasBasedOn()) { 28372 for (Reference e : element.getBasedOn()) 28373 composeReference("basedOn", e); 28374 } 28375 if (element.hasReferrer()) { 28376 composeReference("referrer", element.getReferrer()); 28377 } 28378 if (element.hasInterpreter()) { 28379 for (Reference e : element.getInterpreter()) 28380 composeReference("interpreter", e); 28381 } 28382 if (element.hasEndpoint()) { 28383 for (Reference e : element.getEndpoint()) 28384 composeReference("endpoint", e); 28385 } 28386 if (element.hasNumberOfSeriesElement()) { 28387 composeUnsignedInt("numberOfSeries", element.getNumberOfSeriesElement()); 28388 } 28389 if (element.hasNumberOfInstancesElement()) { 28390 composeUnsignedInt("numberOfInstances", element.getNumberOfInstancesElement()); 28391 } 28392 if (element.hasProcedureReference()) { 28393 for (Reference e : element.getProcedureReference()) 28394 composeReference("procedureReference", e); 28395 } 28396 if (element.hasProcedureCode()) { 28397 for (CodeableConcept e : element.getProcedureCode()) 28398 composeCodeableConcept("procedureCode", e); 28399 } 28400 if (element.hasReason()) { 28401 composeCodeableConcept("reason", element.getReason()); 28402 } 28403 if (element.hasDescriptionElement()) { 28404 composeString("description", element.getDescriptionElement()); 28405 } 28406 if (element.hasSeries()) { 28407 for (ImagingStudy.ImagingStudySeriesComponent e : element.getSeries()) 28408 composeImagingStudyImagingStudySeriesComponent("series", e); 28409 } 28410 } 28411 28412 protected void composeImagingStudyImagingStudySeriesComponent(String name, ImagingStudy.ImagingStudySeriesComponent element) throws IOException { 28413 if (element != null) { 28414 composeElementAttributes(element); 28415 xml.enter(FHIR_NS, name); 28416 composeImagingStudyImagingStudySeriesComponentElements(element); 28417 composeElementClose(element); 28418 xml.exit(FHIR_NS, name); 28419 } 28420 } 28421 28422 protected void composeImagingStudyImagingStudySeriesComponentElements(ImagingStudy.ImagingStudySeriesComponent element) throws IOException { 28423 composeBackboneElements(element); 28424 if (element.hasUidElement()) { 28425 composeOid("uid", element.getUidElement()); 28426 } 28427 if (element.hasNumberElement()) { 28428 composeUnsignedInt("number", element.getNumberElement()); 28429 } 28430 if (element.hasModality()) { 28431 composeCoding("modality", element.getModality()); 28432 } 28433 if (element.hasDescriptionElement()) { 28434 composeString("description", element.getDescriptionElement()); 28435 } 28436 if (element.hasNumberOfInstancesElement()) { 28437 composeUnsignedInt("numberOfInstances", element.getNumberOfInstancesElement()); 28438 } 28439 if (element.hasAvailabilityElement()) 28440 composeEnumeration("availability", element.getAvailabilityElement(), new ImagingStudy.InstanceAvailabilityEnumFactory()); 28441 if (element.hasEndpoint()) { 28442 for (Reference e : element.getEndpoint()) 28443 composeReference("endpoint", e); 28444 } 28445 if (element.hasBodySite()) { 28446 composeCoding("bodySite", element.getBodySite()); 28447 } 28448 if (element.hasLaterality()) { 28449 composeCoding("laterality", element.getLaterality()); 28450 } 28451 if (element.hasStartedElement()) { 28452 composeDateTime("started", element.getStartedElement()); 28453 } 28454 if (element.hasPerformer()) { 28455 for (Reference e : element.getPerformer()) 28456 composeReference("performer", e); 28457 } 28458 if (element.hasInstance()) { 28459 for (ImagingStudy.ImagingStudySeriesInstanceComponent e : element.getInstance()) 28460 composeImagingStudyImagingStudySeriesInstanceComponent("instance", e); 28461 } 28462 } 28463 28464 protected void composeImagingStudyImagingStudySeriesInstanceComponent(String name, ImagingStudy.ImagingStudySeriesInstanceComponent element) throws IOException { 28465 if (element != null) { 28466 composeElementAttributes(element); 28467 xml.enter(FHIR_NS, name); 28468 composeImagingStudyImagingStudySeriesInstanceComponentElements(element); 28469 composeElementClose(element); 28470 xml.exit(FHIR_NS, name); 28471 } 28472 } 28473 28474 protected void composeImagingStudyImagingStudySeriesInstanceComponentElements(ImagingStudy.ImagingStudySeriesInstanceComponent element) throws IOException { 28475 composeBackboneElements(element); 28476 if (element.hasUidElement()) { 28477 composeOid("uid", element.getUidElement()); 28478 } 28479 if (element.hasNumberElement()) { 28480 composeUnsignedInt("number", element.getNumberElement()); 28481 } 28482 if (element.hasSopClassElement()) { 28483 composeOid("sopClass", element.getSopClassElement()); 28484 } 28485 if (element.hasTitleElement()) { 28486 composeString("title", element.getTitleElement()); 28487 } 28488 } 28489 28490 protected void composeImmunization(String name, Immunization element) throws IOException { 28491 if (element != null) { 28492 composeDomainResourceAttributes(element); 28493 xml.enter(FHIR_NS, name); 28494 composeImmunizationElements(element); 28495 composeElementClose(element); 28496 xml.exit(FHIR_NS, name); 28497 } 28498 } 28499 28500 protected void composeImmunizationElements(Immunization element) throws IOException { 28501 composeDomainResourceElements(element); 28502 if (element.hasIdentifier()) { 28503 for (Identifier e : element.getIdentifier()) 28504 composeIdentifier("identifier", e); 28505 } 28506 if (element.hasStatusElement()) 28507 composeEnumeration("status", element.getStatusElement(), new Immunization.ImmunizationStatusEnumFactory()); 28508 if (element.hasNotGivenElement()) { 28509 composeBoolean("notGiven", element.getNotGivenElement()); 28510 } 28511 if (element.hasVaccineCode()) { 28512 composeCodeableConcept("vaccineCode", element.getVaccineCode()); 28513 } 28514 if (element.hasPatient()) { 28515 composeReference("patient", element.getPatient()); 28516 } 28517 if (element.hasEncounter()) { 28518 composeReference("encounter", element.getEncounter()); 28519 } 28520 if (element.hasDateElement()) { 28521 composeDateTime("date", element.getDateElement()); 28522 } 28523 if (element.hasPrimarySourceElement()) { 28524 composeBoolean("primarySource", element.getPrimarySourceElement()); 28525 } 28526 if (element.hasReportOrigin()) { 28527 composeCodeableConcept("reportOrigin", element.getReportOrigin()); 28528 } 28529 if (element.hasLocation()) { 28530 composeReference("location", element.getLocation()); 28531 } 28532 if (element.hasManufacturer()) { 28533 composeReference("manufacturer", element.getManufacturer()); 28534 } 28535 if (element.hasLotNumberElement()) { 28536 composeString("lotNumber", element.getLotNumberElement()); 28537 } 28538 if (element.hasExpirationDateElement()) { 28539 composeDate("expirationDate", element.getExpirationDateElement()); 28540 } 28541 if (element.hasSite()) { 28542 composeCodeableConcept("site", element.getSite()); 28543 } 28544 if (element.hasRoute()) { 28545 composeCodeableConcept("route", element.getRoute()); 28546 } 28547 if (element.hasDoseQuantity()) { 28548 composeSimpleQuantity("doseQuantity", element.getDoseQuantity()); 28549 } 28550 if (element.hasPractitioner()) { 28551 for (Immunization.ImmunizationPractitionerComponent e : element.getPractitioner()) 28552 composeImmunizationImmunizationPractitionerComponent("practitioner", e); 28553 } 28554 if (element.hasNote()) { 28555 for (Annotation e : element.getNote()) 28556 composeAnnotation("note", e); 28557 } 28558 if (element.hasExplanation()) { 28559 composeImmunizationImmunizationExplanationComponent("explanation", element.getExplanation()); 28560 } 28561 if (element.hasReaction()) { 28562 for (Immunization.ImmunizationReactionComponent e : element.getReaction()) 28563 composeImmunizationImmunizationReactionComponent("reaction", e); 28564 } 28565 if (element.hasVaccinationProtocol()) { 28566 for (Immunization.ImmunizationVaccinationProtocolComponent e : element.getVaccinationProtocol()) 28567 composeImmunizationImmunizationVaccinationProtocolComponent("vaccinationProtocol", e); 28568 } 28569 } 28570 28571 protected void composeImmunizationImmunizationPractitionerComponent(String name, Immunization.ImmunizationPractitionerComponent element) throws IOException { 28572 if (element != null) { 28573 composeElementAttributes(element); 28574 xml.enter(FHIR_NS, name); 28575 composeImmunizationImmunizationPractitionerComponentElements(element); 28576 composeElementClose(element); 28577 xml.exit(FHIR_NS, name); 28578 } 28579 } 28580 28581 protected void composeImmunizationImmunizationPractitionerComponentElements(Immunization.ImmunizationPractitionerComponent element) throws IOException { 28582 composeBackboneElements(element); 28583 if (element.hasRole()) { 28584 composeCodeableConcept("role", element.getRole()); 28585 } 28586 if (element.hasActor()) { 28587 composeReference("actor", element.getActor()); 28588 } 28589 } 28590 28591 protected void composeImmunizationImmunizationExplanationComponent(String name, Immunization.ImmunizationExplanationComponent element) throws IOException { 28592 if (element != null) { 28593 composeElementAttributes(element); 28594 xml.enter(FHIR_NS, name); 28595 composeImmunizationImmunizationExplanationComponentElements(element); 28596 composeElementClose(element); 28597 xml.exit(FHIR_NS, name); 28598 } 28599 } 28600 28601 protected void composeImmunizationImmunizationExplanationComponentElements(Immunization.ImmunizationExplanationComponent element) throws IOException { 28602 composeBackboneElements(element); 28603 if (element.hasReason()) { 28604 for (CodeableConcept e : element.getReason()) 28605 composeCodeableConcept("reason", e); 28606 } 28607 if (element.hasReasonNotGiven()) { 28608 for (CodeableConcept e : element.getReasonNotGiven()) 28609 composeCodeableConcept("reasonNotGiven", e); 28610 } 28611 } 28612 28613 protected void composeImmunizationImmunizationReactionComponent(String name, Immunization.ImmunizationReactionComponent element) throws IOException { 28614 if (element != null) { 28615 composeElementAttributes(element); 28616 xml.enter(FHIR_NS, name); 28617 composeImmunizationImmunizationReactionComponentElements(element); 28618 composeElementClose(element); 28619 xml.exit(FHIR_NS, name); 28620 } 28621 } 28622 28623 protected void composeImmunizationImmunizationReactionComponentElements(Immunization.ImmunizationReactionComponent element) throws IOException { 28624 composeBackboneElements(element); 28625 if (element.hasDateElement()) { 28626 composeDateTime("date", element.getDateElement()); 28627 } 28628 if (element.hasDetail()) { 28629 composeReference("detail", element.getDetail()); 28630 } 28631 if (element.hasReportedElement()) { 28632 composeBoolean("reported", element.getReportedElement()); 28633 } 28634 } 28635 28636 protected void composeImmunizationImmunizationVaccinationProtocolComponent(String name, Immunization.ImmunizationVaccinationProtocolComponent element) throws IOException { 28637 if (element != null) { 28638 composeElementAttributes(element); 28639 xml.enter(FHIR_NS, name); 28640 composeImmunizationImmunizationVaccinationProtocolComponentElements(element); 28641 composeElementClose(element); 28642 xml.exit(FHIR_NS, name); 28643 } 28644 } 28645 28646 protected void composeImmunizationImmunizationVaccinationProtocolComponentElements(Immunization.ImmunizationVaccinationProtocolComponent element) throws IOException { 28647 composeBackboneElements(element); 28648 if (element.hasDoseSequenceElement()) { 28649 composePositiveInt("doseSequence", element.getDoseSequenceElement()); 28650 } 28651 if (element.hasDescriptionElement()) { 28652 composeString("description", element.getDescriptionElement()); 28653 } 28654 if (element.hasAuthority()) { 28655 composeReference("authority", element.getAuthority()); 28656 } 28657 if (element.hasSeriesElement()) { 28658 composeString("series", element.getSeriesElement()); 28659 } 28660 if (element.hasSeriesDosesElement()) { 28661 composePositiveInt("seriesDoses", element.getSeriesDosesElement()); 28662 } 28663 if (element.hasTargetDisease()) { 28664 for (CodeableConcept e : element.getTargetDisease()) 28665 composeCodeableConcept("targetDisease", e); 28666 } 28667 if (element.hasDoseStatus()) { 28668 composeCodeableConcept("doseStatus", element.getDoseStatus()); 28669 } 28670 if (element.hasDoseStatusReason()) { 28671 composeCodeableConcept("doseStatusReason", element.getDoseStatusReason()); 28672 } 28673 } 28674 28675 protected void composeImmunizationRecommendation(String name, ImmunizationRecommendation element) throws IOException { 28676 if (element != null) { 28677 composeDomainResourceAttributes(element); 28678 xml.enter(FHIR_NS, name); 28679 composeImmunizationRecommendationElements(element); 28680 composeElementClose(element); 28681 xml.exit(FHIR_NS, name); 28682 } 28683 } 28684 28685 protected void composeImmunizationRecommendationElements(ImmunizationRecommendation element) throws IOException { 28686 composeDomainResourceElements(element); 28687 if (element.hasIdentifier()) { 28688 for (Identifier e : element.getIdentifier()) 28689 composeIdentifier("identifier", e); 28690 } 28691 if (element.hasPatient()) { 28692 composeReference("patient", element.getPatient()); 28693 } 28694 if (element.hasRecommendation()) { 28695 for (ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent e : element.getRecommendation()) 28696 composeImmunizationRecommendationImmunizationRecommendationRecommendationComponent("recommendation", e); 28697 } 28698 } 28699 28700 protected void composeImmunizationRecommendationImmunizationRecommendationRecommendationComponent(String name, ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent element) throws IOException { 28701 if (element != null) { 28702 composeElementAttributes(element); 28703 xml.enter(FHIR_NS, name); 28704 composeImmunizationRecommendationImmunizationRecommendationRecommendationComponentElements(element); 28705 composeElementClose(element); 28706 xml.exit(FHIR_NS, name); 28707 } 28708 } 28709 28710 protected void composeImmunizationRecommendationImmunizationRecommendationRecommendationComponentElements(ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent element) throws IOException { 28711 composeBackboneElements(element); 28712 if (element.hasDateElement()) { 28713 composeDateTime("date", element.getDateElement()); 28714 } 28715 if (element.hasVaccineCode()) { 28716 composeCodeableConcept("vaccineCode", element.getVaccineCode()); 28717 } 28718 if (element.hasTargetDisease()) { 28719 composeCodeableConcept("targetDisease", element.getTargetDisease()); 28720 } 28721 if (element.hasDoseNumberElement()) { 28722 composePositiveInt("doseNumber", element.getDoseNumberElement()); 28723 } 28724 if (element.hasForecastStatus()) { 28725 composeCodeableConcept("forecastStatus", element.getForecastStatus()); 28726 } 28727 if (element.hasDateCriterion()) { 28728 for (ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent e : element.getDateCriterion()) 28729 composeImmunizationRecommendationImmunizationRecommendationRecommendationDateCriterionComponent("dateCriterion", e); 28730 } 28731 if (element.hasProtocol()) { 28732 composeImmunizationRecommendationImmunizationRecommendationRecommendationProtocolComponent("protocol", element.getProtocol()); 28733 } 28734 if (element.hasSupportingImmunization()) { 28735 for (Reference e : element.getSupportingImmunization()) 28736 composeReference("supportingImmunization", e); 28737 } 28738 if (element.hasSupportingPatientInformation()) { 28739 for (Reference e : element.getSupportingPatientInformation()) 28740 composeReference("supportingPatientInformation", e); 28741 } 28742 } 28743 28744 protected void composeImmunizationRecommendationImmunizationRecommendationRecommendationDateCriterionComponent(String name, ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent element) throws IOException { 28745 if (element != null) { 28746 composeElementAttributes(element); 28747 xml.enter(FHIR_NS, name); 28748 composeImmunizationRecommendationImmunizationRecommendationRecommendationDateCriterionComponentElements(element); 28749 composeElementClose(element); 28750 xml.exit(FHIR_NS, name); 28751 } 28752 } 28753 28754 protected void composeImmunizationRecommendationImmunizationRecommendationRecommendationDateCriterionComponentElements(ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent element) throws IOException { 28755 composeBackboneElements(element); 28756 if (element.hasCode()) { 28757 composeCodeableConcept("code", element.getCode()); 28758 } 28759 if (element.hasValueElement()) { 28760 composeDateTime("value", element.getValueElement()); 28761 } 28762 } 28763 28764 protected void composeImmunizationRecommendationImmunizationRecommendationRecommendationProtocolComponent(String name, ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent element) throws IOException { 28765 if (element != null) { 28766 composeElementAttributes(element); 28767 xml.enter(FHIR_NS, name); 28768 composeImmunizationRecommendationImmunizationRecommendationRecommendationProtocolComponentElements(element); 28769 composeElementClose(element); 28770 xml.exit(FHIR_NS, name); 28771 } 28772 } 28773 28774 protected void composeImmunizationRecommendationImmunizationRecommendationRecommendationProtocolComponentElements(ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent element) throws IOException { 28775 composeBackboneElements(element); 28776 if (element.hasDoseSequenceElement()) { 28777 composePositiveInt("doseSequence", element.getDoseSequenceElement()); 28778 } 28779 if (element.hasDescriptionElement()) { 28780 composeString("description", element.getDescriptionElement()); 28781 } 28782 if (element.hasAuthority()) { 28783 composeReference("authority", element.getAuthority()); 28784 } 28785 if (element.hasSeriesElement()) { 28786 composeString("series", element.getSeriesElement()); 28787 } 28788 } 28789 28790 protected void composeImplementationGuide(String name, ImplementationGuide element) throws IOException { 28791 if (element != null) { 28792 composeDomainResourceAttributes(element); 28793 xml.enter(FHIR_NS, name); 28794 composeImplementationGuideElements(element); 28795 composeElementClose(element); 28796 xml.exit(FHIR_NS, name); 28797 } 28798 } 28799 28800 protected void composeImplementationGuideElements(ImplementationGuide element) throws IOException { 28801 composeDomainResourceElements(element); 28802 if (element.hasUrlElement()) { 28803 composeUri("url", element.getUrlElement()); 28804 } 28805 if (element.hasVersionElement()) { 28806 composeString("version", element.getVersionElement()); 28807 } 28808 if (element.hasNameElement()) { 28809 composeString("name", element.getNameElement()); 28810 } 28811 if (element.hasStatusElement()) 28812 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 28813 if (element.hasExperimentalElement()) { 28814 composeBoolean("experimental", element.getExperimentalElement()); 28815 } 28816 if (element.hasDateElement()) { 28817 composeDateTime("date", element.getDateElement()); 28818 } 28819 if (element.hasPublisherElement()) { 28820 composeString("publisher", element.getPublisherElement()); 28821 } 28822 if (element.hasContact()) { 28823 for (ContactDetail e : element.getContact()) 28824 composeContactDetail("contact", e); 28825 } 28826 if (element.hasDescriptionElement()) { 28827 composeMarkdown("description", element.getDescriptionElement()); 28828 } 28829 if (element.hasUseContext()) { 28830 for (UsageContext e : element.getUseContext()) 28831 composeUsageContext("useContext", e); 28832 } 28833 if (element.hasJurisdiction()) { 28834 for (CodeableConcept e : element.getJurisdiction()) 28835 composeCodeableConcept("jurisdiction", e); 28836 } 28837 if (element.hasCopyrightElement()) { 28838 composeMarkdown("copyright", element.getCopyrightElement()); 28839 } 28840 if (element.hasFhirVersionElement()) { 28841 composeId("fhirVersion", element.getFhirVersionElement()); 28842 } 28843 if (element.hasDependency()) { 28844 for (ImplementationGuide.ImplementationGuideDependencyComponent e : element.getDependency()) 28845 composeImplementationGuideImplementationGuideDependencyComponent("dependency", e); 28846 } 28847 if (element.hasPackage()) { 28848 for (ImplementationGuide.ImplementationGuidePackageComponent e : element.getPackage()) 28849 composeImplementationGuideImplementationGuidePackageComponent("package", e); 28850 } 28851 if (element.hasGlobal()) { 28852 for (ImplementationGuide.ImplementationGuideGlobalComponent e : element.getGlobal()) 28853 composeImplementationGuideImplementationGuideGlobalComponent("global", e); 28854 } 28855 if (element.hasBinary()) { 28856 for (UriType e : element.getBinary()) 28857 composeUri("binary", e); 28858 } 28859 if (element.hasPage()) { 28860 composeImplementationGuideImplementationGuidePageComponent("page", element.getPage()); 28861 } 28862 } 28863 28864 protected void composeImplementationGuideImplementationGuideDependencyComponent(String name, ImplementationGuide.ImplementationGuideDependencyComponent element) throws IOException { 28865 if (element != null) { 28866 composeElementAttributes(element); 28867 xml.enter(FHIR_NS, name); 28868 composeImplementationGuideImplementationGuideDependencyComponentElements(element); 28869 composeElementClose(element); 28870 xml.exit(FHIR_NS, name); 28871 } 28872 } 28873 28874 protected void composeImplementationGuideImplementationGuideDependencyComponentElements(ImplementationGuide.ImplementationGuideDependencyComponent element) throws IOException { 28875 composeBackboneElements(element); 28876 if (element.hasTypeElement()) 28877 composeEnumeration("type", element.getTypeElement(), new ImplementationGuide.GuideDependencyTypeEnumFactory()); 28878 if (element.hasUriElement()) { 28879 composeUri("uri", element.getUriElement()); 28880 } 28881 } 28882 28883 protected void composeImplementationGuideImplementationGuidePackageComponent(String name, ImplementationGuide.ImplementationGuidePackageComponent element) throws IOException { 28884 if (element != null) { 28885 composeElementAttributes(element); 28886 xml.enter(FHIR_NS, name); 28887 composeImplementationGuideImplementationGuidePackageComponentElements(element); 28888 composeElementClose(element); 28889 xml.exit(FHIR_NS, name); 28890 } 28891 } 28892 28893 protected void composeImplementationGuideImplementationGuidePackageComponentElements(ImplementationGuide.ImplementationGuidePackageComponent element) throws IOException { 28894 composeBackboneElements(element); 28895 if (element.hasNameElement()) { 28896 composeString("name", element.getNameElement()); 28897 } 28898 if (element.hasDescriptionElement()) { 28899 composeString("description", element.getDescriptionElement()); 28900 } 28901 if (element.hasResource()) { 28902 for (ImplementationGuide.ImplementationGuidePackageResourceComponent e : element.getResource()) 28903 composeImplementationGuideImplementationGuidePackageResourceComponent("resource", e); 28904 } 28905 } 28906 28907 protected void composeImplementationGuideImplementationGuidePackageResourceComponent(String name, ImplementationGuide.ImplementationGuidePackageResourceComponent element) throws IOException { 28908 if (element != null) { 28909 composeElementAttributes(element); 28910 xml.enter(FHIR_NS, name); 28911 composeImplementationGuideImplementationGuidePackageResourceComponentElements(element); 28912 composeElementClose(element); 28913 xml.exit(FHIR_NS, name); 28914 } 28915 } 28916 28917 protected void composeImplementationGuideImplementationGuidePackageResourceComponentElements(ImplementationGuide.ImplementationGuidePackageResourceComponent element) throws IOException { 28918 composeBackboneElements(element); 28919 if (element.hasExampleElement()) { 28920 composeBoolean("example", element.getExampleElement()); 28921 } 28922 if (element.hasNameElement()) { 28923 composeString("name", element.getNameElement()); 28924 } 28925 if (element.hasDescriptionElement()) { 28926 composeString("description", element.getDescriptionElement()); 28927 } 28928 if (element.hasAcronymElement()) { 28929 composeString("acronym", element.getAcronymElement()); 28930 } 28931 if (element.hasSource()) { 28932 composeType("source", element.getSource()); 28933 } if (element.hasExampleFor()) { 28934 composeReference("exampleFor", element.getExampleFor()); 28935 } 28936 } 28937 28938 protected void composeImplementationGuideImplementationGuideGlobalComponent(String name, ImplementationGuide.ImplementationGuideGlobalComponent element) throws IOException { 28939 if (element != null) { 28940 composeElementAttributes(element); 28941 xml.enter(FHIR_NS, name); 28942 composeImplementationGuideImplementationGuideGlobalComponentElements(element); 28943 composeElementClose(element); 28944 xml.exit(FHIR_NS, name); 28945 } 28946 } 28947 28948 protected void composeImplementationGuideImplementationGuideGlobalComponentElements(ImplementationGuide.ImplementationGuideGlobalComponent element) throws IOException { 28949 composeBackboneElements(element); 28950 if (element.hasTypeElement()) { 28951 composeCode("type", element.getTypeElement()); 28952 } 28953 if (element.hasProfile()) { 28954 composeReference("profile", element.getProfile()); 28955 } 28956 } 28957 28958 protected void composeImplementationGuideImplementationGuidePageComponent(String name, ImplementationGuide.ImplementationGuidePageComponent element) throws IOException { 28959 if (element != null) { 28960 composeElementAttributes(element); 28961 xml.enter(FHIR_NS, name); 28962 composeImplementationGuideImplementationGuidePageComponentElements(element); 28963 composeElementClose(element); 28964 xml.exit(FHIR_NS, name); 28965 } 28966 } 28967 28968 protected void composeImplementationGuideImplementationGuidePageComponentElements(ImplementationGuide.ImplementationGuidePageComponent element) throws IOException { 28969 composeBackboneElements(element); 28970 if (element.hasSourceElement()) { 28971 composeUri("source", element.getSourceElement()); 28972 } 28973 if (element.hasTitleElement()) { 28974 composeString("title", element.getTitleElement()); 28975 } 28976 if (element.hasKindElement()) 28977 composeEnumeration("kind", element.getKindElement(), new ImplementationGuide.GuidePageKindEnumFactory()); 28978 if (element.hasType()) { 28979 for (CodeType e : element.getType()) 28980 composeCode("type", e); 28981 } 28982 if (element.hasPackage()) { 28983 for (StringType e : element.getPackage()) 28984 composeString("package", e); 28985 } 28986 if (element.hasFormatElement()) { 28987 composeCode("format", element.getFormatElement()); 28988 } 28989 if (element.hasPage()) { 28990 for (ImplementationGuide.ImplementationGuidePageComponent e : element.getPage()) 28991 composeImplementationGuideImplementationGuidePageComponent("page", e); 28992 } 28993 } 28994 28995 protected void composeLibrary(String name, Library element) throws IOException { 28996 if (element != null) { 28997 composeDomainResourceAttributes(element); 28998 xml.enter(FHIR_NS, name); 28999 composeLibraryElements(element); 29000 composeElementClose(element); 29001 xml.exit(FHIR_NS, name); 29002 } 29003 } 29004 29005 protected void composeLibraryElements(Library element) throws IOException { 29006 composeDomainResourceElements(element); 29007 if (element.hasUrlElement()) { 29008 composeUri("url", element.getUrlElement()); 29009 } 29010 if (element.hasIdentifier()) { 29011 for (Identifier e : element.getIdentifier()) 29012 composeIdentifier("identifier", e); 29013 } 29014 if (element.hasVersionElement()) { 29015 composeString("version", element.getVersionElement()); 29016 } 29017 if (element.hasNameElement()) { 29018 composeString("name", element.getNameElement()); 29019 } 29020 if (element.hasTitleElement()) { 29021 composeString("title", element.getTitleElement()); 29022 } 29023 if (element.hasStatusElement()) 29024 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 29025 if (element.hasExperimentalElement()) { 29026 composeBoolean("experimental", element.getExperimentalElement()); 29027 } 29028 if (element.hasType()) { 29029 composeCodeableConcept("type", element.getType()); 29030 } 29031 if (element.hasDateElement()) { 29032 composeDateTime("date", element.getDateElement()); 29033 } 29034 if (element.hasPublisherElement()) { 29035 composeString("publisher", element.getPublisherElement()); 29036 } 29037 if (element.hasDescriptionElement()) { 29038 composeMarkdown("description", element.getDescriptionElement()); 29039 } 29040 if (element.hasPurposeElement()) { 29041 composeMarkdown("purpose", element.getPurposeElement()); 29042 } 29043 if (element.hasUsageElement()) { 29044 composeString("usage", element.getUsageElement()); 29045 } 29046 if (element.hasApprovalDateElement()) { 29047 composeDate("approvalDate", element.getApprovalDateElement()); 29048 } 29049 if (element.hasLastReviewDateElement()) { 29050 composeDate("lastReviewDate", element.getLastReviewDateElement()); 29051 } 29052 if (element.hasEffectivePeriod()) { 29053 composePeriod("effectivePeriod", element.getEffectivePeriod()); 29054 } 29055 if (element.hasUseContext()) { 29056 for (UsageContext e : element.getUseContext()) 29057 composeUsageContext("useContext", e); 29058 } 29059 if (element.hasJurisdiction()) { 29060 for (CodeableConcept e : element.getJurisdiction()) 29061 composeCodeableConcept("jurisdiction", e); 29062 } 29063 if (element.hasTopic()) { 29064 for (CodeableConcept e : element.getTopic()) 29065 composeCodeableConcept("topic", e); 29066 } 29067 if (element.hasContributor()) { 29068 for (Contributor e : element.getContributor()) 29069 composeContributor("contributor", e); 29070 } 29071 if (element.hasContact()) { 29072 for (ContactDetail e : element.getContact()) 29073 composeContactDetail("contact", e); 29074 } 29075 if (element.hasCopyrightElement()) { 29076 composeMarkdown("copyright", element.getCopyrightElement()); 29077 } 29078 if (element.hasRelatedArtifact()) { 29079 for (RelatedArtifact e : element.getRelatedArtifact()) 29080 composeRelatedArtifact("relatedArtifact", e); 29081 } 29082 if (element.hasParameter()) { 29083 for (ParameterDefinition e : element.getParameter()) 29084 composeParameterDefinition("parameter", e); 29085 } 29086 if (element.hasDataRequirement()) { 29087 for (DataRequirement e : element.getDataRequirement()) 29088 composeDataRequirement("dataRequirement", e); 29089 } 29090 if (element.hasContent()) { 29091 for (Attachment e : element.getContent()) 29092 composeAttachment("content", e); 29093 } 29094 } 29095 29096 protected void composeLinkage(String name, Linkage element) throws IOException { 29097 if (element != null) { 29098 composeDomainResourceAttributes(element); 29099 xml.enter(FHIR_NS, name); 29100 composeLinkageElements(element); 29101 composeElementClose(element); 29102 xml.exit(FHIR_NS, name); 29103 } 29104 } 29105 29106 protected void composeLinkageElements(Linkage element) throws IOException { 29107 composeDomainResourceElements(element); 29108 if (element.hasActiveElement()) { 29109 composeBoolean("active", element.getActiveElement()); 29110 } 29111 if (element.hasAuthor()) { 29112 composeReference("author", element.getAuthor()); 29113 } 29114 if (element.hasItem()) { 29115 for (Linkage.LinkageItemComponent e : element.getItem()) 29116 composeLinkageLinkageItemComponent("item", e); 29117 } 29118 } 29119 29120 protected void composeLinkageLinkageItemComponent(String name, Linkage.LinkageItemComponent element) throws IOException { 29121 if (element != null) { 29122 composeElementAttributes(element); 29123 xml.enter(FHIR_NS, name); 29124 composeLinkageLinkageItemComponentElements(element); 29125 composeElementClose(element); 29126 xml.exit(FHIR_NS, name); 29127 } 29128 } 29129 29130 protected void composeLinkageLinkageItemComponentElements(Linkage.LinkageItemComponent element) throws IOException { 29131 composeBackboneElements(element); 29132 if (element.hasTypeElement()) 29133 composeEnumeration("type", element.getTypeElement(), new Linkage.LinkageTypeEnumFactory()); 29134 if (element.hasResource()) { 29135 composeReference("resource", element.getResource()); 29136 } 29137 } 29138 29139 protected void composeListResource(String name, ListResource element) throws IOException { 29140 if (element != null) { 29141 composeDomainResourceAttributes(element); 29142 xml.enter(FHIR_NS, name); 29143 composeListResourceElements(element); 29144 composeElementClose(element); 29145 xml.exit(FHIR_NS, name); 29146 } 29147 } 29148 29149 protected void composeListResourceElements(ListResource element) throws IOException { 29150 composeDomainResourceElements(element); 29151 if (element.hasIdentifier()) { 29152 for (Identifier e : element.getIdentifier()) 29153 composeIdentifier("identifier", e); 29154 } 29155 if (element.hasStatusElement()) 29156 composeEnumeration("status", element.getStatusElement(), new ListResource.ListStatusEnumFactory()); 29157 if (element.hasModeElement()) 29158 composeEnumeration("mode", element.getModeElement(), new ListResource.ListModeEnumFactory()); 29159 if (element.hasTitleElement()) { 29160 composeString("title", element.getTitleElement()); 29161 } 29162 if (element.hasCode()) { 29163 composeCodeableConcept("code", element.getCode()); 29164 } 29165 if (element.hasSubject()) { 29166 composeReference("subject", element.getSubject()); 29167 } 29168 if (element.hasEncounter()) { 29169 composeReference("encounter", element.getEncounter()); 29170 } 29171 if (element.hasDateElement()) { 29172 composeDateTime("date", element.getDateElement()); 29173 } 29174 if (element.hasSource()) { 29175 composeReference("source", element.getSource()); 29176 } 29177 if (element.hasOrderedBy()) { 29178 composeCodeableConcept("orderedBy", element.getOrderedBy()); 29179 } 29180 if (element.hasNote()) { 29181 for (Annotation e : element.getNote()) 29182 composeAnnotation("note", e); 29183 } 29184 if (element.hasEntry()) { 29185 for (ListResource.ListEntryComponent e : element.getEntry()) 29186 composeListResourceListEntryComponent("entry", e); 29187 } 29188 if (element.hasEmptyReason()) { 29189 composeCodeableConcept("emptyReason", element.getEmptyReason()); 29190 } 29191 } 29192 29193 protected void composeListResourceListEntryComponent(String name, ListResource.ListEntryComponent element) throws IOException { 29194 if (element != null) { 29195 composeElementAttributes(element); 29196 xml.enter(FHIR_NS, name); 29197 composeListResourceListEntryComponentElements(element); 29198 composeElementClose(element); 29199 xml.exit(FHIR_NS, name); 29200 } 29201 } 29202 29203 protected void composeListResourceListEntryComponentElements(ListResource.ListEntryComponent element) throws IOException { 29204 composeBackboneElements(element); 29205 if (element.hasFlag()) { 29206 composeCodeableConcept("flag", element.getFlag()); 29207 } 29208 if (element.hasDeletedElement()) { 29209 composeBoolean("deleted", element.getDeletedElement()); 29210 } 29211 if (element.hasDateElement()) { 29212 composeDateTime("date", element.getDateElement()); 29213 } 29214 if (element.hasItem()) { 29215 composeReference("item", element.getItem()); 29216 } 29217 } 29218 29219 protected void composeLocation(String name, Location element) throws IOException { 29220 if (element != null) { 29221 composeDomainResourceAttributes(element); 29222 xml.enter(FHIR_NS, name); 29223 composeLocationElements(element); 29224 composeElementClose(element); 29225 xml.exit(FHIR_NS, name); 29226 } 29227 } 29228 29229 protected void composeLocationElements(Location element) throws IOException { 29230 composeDomainResourceElements(element); 29231 if (element.hasIdentifier()) { 29232 for (Identifier e : element.getIdentifier()) 29233 composeIdentifier("identifier", e); 29234 } 29235 if (element.hasStatusElement()) 29236 composeEnumeration("status", element.getStatusElement(), new Location.LocationStatusEnumFactory()); 29237 if (element.hasOperationalStatus()) { 29238 composeCoding("operationalStatus", element.getOperationalStatus()); 29239 } 29240 if (element.hasNameElement()) { 29241 composeString("name", element.getNameElement()); 29242 } 29243 if (element.hasAlias()) { 29244 for (StringType e : element.getAlias()) 29245 composeString("alias", e); 29246 } 29247 if (element.hasDescriptionElement()) { 29248 composeString("description", element.getDescriptionElement()); 29249 } 29250 if (element.hasModeElement()) 29251 composeEnumeration("mode", element.getModeElement(), new Location.LocationModeEnumFactory()); 29252 if (element.hasType()) { 29253 composeCodeableConcept("type", element.getType()); 29254 } 29255 if (element.hasTelecom()) { 29256 for (ContactPoint e : element.getTelecom()) 29257 composeContactPoint("telecom", e); 29258 } 29259 if (element.hasAddress()) { 29260 composeAddress("address", element.getAddress()); 29261 } 29262 if (element.hasPhysicalType()) { 29263 composeCodeableConcept("physicalType", element.getPhysicalType()); 29264 } 29265 if (element.hasPosition()) { 29266 composeLocationLocationPositionComponent("position", element.getPosition()); 29267 } 29268 if (element.hasManagingOrganization()) { 29269 composeReference("managingOrganization", element.getManagingOrganization()); 29270 } 29271 if (element.hasPartOf()) { 29272 composeReference("partOf", element.getPartOf()); 29273 } 29274 if (element.hasEndpoint()) { 29275 for (Reference e : element.getEndpoint()) 29276 composeReference("endpoint", e); 29277 } 29278 } 29279 29280 protected void composeLocationLocationPositionComponent(String name, Location.LocationPositionComponent element) throws IOException { 29281 if (element != null) { 29282 composeElementAttributes(element); 29283 xml.enter(FHIR_NS, name); 29284 composeLocationLocationPositionComponentElements(element); 29285 composeElementClose(element); 29286 xml.exit(FHIR_NS, name); 29287 } 29288 } 29289 29290 protected void composeLocationLocationPositionComponentElements(Location.LocationPositionComponent element) throws IOException { 29291 composeBackboneElements(element); 29292 if (element.hasLongitudeElement()) { 29293 composeDecimal("longitude", element.getLongitudeElement()); 29294 } 29295 if (element.hasLatitudeElement()) { 29296 composeDecimal("latitude", element.getLatitudeElement()); 29297 } 29298 if (element.hasAltitudeElement()) { 29299 composeDecimal("altitude", element.getAltitudeElement()); 29300 } 29301 } 29302 29303 protected void composeMeasure(String name, Measure element) throws IOException { 29304 if (element != null) { 29305 composeDomainResourceAttributes(element); 29306 xml.enter(FHIR_NS, name); 29307 composeMeasureElements(element); 29308 composeElementClose(element); 29309 xml.exit(FHIR_NS, name); 29310 } 29311 } 29312 29313 protected void composeMeasureElements(Measure element) throws IOException { 29314 composeDomainResourceElements(element); 29315 if (element.hasUrlElement()) { 29316 composeUri("url", element.getUrlElement()); 29317 } 29318 if (element.hasIdentifier()) { 29319 for (Identifier e : element.getIdentifier()) 29320 composeIdentifier("identifier", e); 29321 } 29322 if (element.hasVersionElement()) { 29323 composeString("version", element.getVersionElement()); 29324 } 29325 if (element.hasNameElement()) { 29326 composeString("name", element.getNameElement()); 29327 } 29328 if (element.hasTitleElement()) { 29329 composeString("title", element.getTitleElement()); 29330 } 29331 if (element.hasStatusElement()) 29332 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 29333 if (element.hasExperimentalElement()) { 29334 composeBoolean("experimental", element.getExperimentalElement()); 29335 } 29336 if (element.hasDateElement()) { 29337 composeDateTime("date", element.getDateElement()); 29338 } 29339 if (element.hasPublisherElement()) { 29340 composeString("publisher", element.getPublisherElement()); 29341 } 29342 if (element.hasDescriptionElement()) { 29343 composeMarkdown("description", element.getDescriptionElement()); 29344 } 29345 if (element.hasPurposeElement()) { 29346 composeMarkdown("purpose", element.getPurposeElement()); 29347 } 29348 if (element.hasUsageElement()) { 29349 composeString("usage", element.getUsageElement()); 29350 } 29351 if (element.hasApprovalDateElement()) { 29352 composeDate("approvalDate", element.getApprovalDateElement()); 29353 } 29354 if (element.hasLastReviewDateElement()) { 29355 composeDate("lastReviewDate", element.getLastReviewDateElement()); 29356 } 29357 if (element.hasEffectivePeriod()) { 29358 composePeriod("effectivePeriod", element.getEffectivePeriod()); 29359 } 29360 if (element.hasUseContext()) { 29361 for (UsageContext e : element.getUseContext()) 29362 composeUsageContext("useContext", e); 29363 } 29364 if (element.hasJurisdiction()) { 29365 for (CodeableConcept e : element.getJurisdiction()) 29366 composeCodeableConcept("jurisdiction", e); 29367 } 29368 if (element.hasTopic()) { 29369 for (CodeableConcept e : element.getTopic()) 29370 composeCodeableConcept("topic", e); 29371 } 29372 if (element.hasContributor()) { 29373 for (Contributor e : element.getContributor()) 29374 composeContributor("contributor", e); 29375 } 29376 if (element.hasContact()) { 29377 for (ContactDetail e : element.getContact()) 29378 composeContactDetail("contact", e); 29379 } 29380 if (element.hasCopyrightElement()) { 29381 composeMarkdown("copyright", element.getCopyrightElement()); 29382 } 29383 if (element.hasRelatedArtifact()) { 29384 for (RelatedArtifact e : element.getRelatedArtifact()) 29385 composeRelatedArtifact("relatedArtifact", e); 29386 } 29387 if (element.hasLibrary()) { 29388 for (Reference e : element.getLibrary()) 29389 composeReference("library", e); 29390 } 29391 if (element.hasDisclaimerElement()) { 29392 composeMarkdown("disclaimer", element.getDisclaimerElement()); 29393 } 29394 if (element.hasScoring()) { 29395 composeCodeableConcept("scoring", element.getScoring()); 29396 } 29397 if (element.hasCompositeScoring()) { 29398 composeCodeableConcept("compositeScoring", element.getCompositeScoring()); 29399 } 29400 if (element.hasType()) { 29401 for (CodeableConcept e : element.getType()) 29402 composeCodeableConcept("type", e); 29403 } 29404 if (element.hasRiskAdjustmentElement()) { 29405 composeString("riskAdjustment", element.getRiskAdjustmentElement()); 29406 } 29407 if (element.hasRateAggregationElement()) { 29408 composeString("rateAggregation", element.getRateAggregationElement()); 29409 } 29410 if (element.hasRationaleElement()) { 29411 composeMarkdown("rationale", element.getRationaleElement()); 29412 } 29413 if (element.hasClinicalRecommendationStatementElement()) { 29414 composeMarkdown("clinicalRecommendationStatement", element.getClinicalRecommendationStatementElement()); 29415 } 29416 if (element.hasImprovementNotationElement()) { 29417 composeString("improvementNotation", element.getImprovementNotationElement()); 29418 } 29419 if (element.hasDefinition()) { 29420 for (MarkdownType e : element.getDefinition()) 29421 composeMarkdown("definition", e); 29422 } 29423 if (element.hasGuidanceElement()) { 29424 composeMarkdown("guidance", element.getGuidanceElement()); 29425 } 29426 if (element.hasSetElement()) { 29427 composeString("set", element.getSetElement()); 29428 } 29429 if (element.hasGroup()) { 29430 for (Measure.MeasureGroupComponent e : element.getGroup()) 29431 composeMeasureMeasureGroupComponent("group", e); 29432 } 29433 if (element.hasSupplementalData()) { 29434 for (Measure.MeasureSupplementalDataComponent e : element.getSupplementalData()) 29435 composeMeasureMeasureSupplementalDataComponent("supplementalData", e); 29436 } 29437 } 29438 29439 protected void composeMeasureMeasureGroupComponent(String name, Measure.MeasureGroupComponent element) throws IOException { 29440 if (element != null) { 29441 composeElementAttributes(element); 29442 xml.enter(FHIR_NS, name); 29443 composeMeasureMeasureGroupComponentElements(element); 29444 composeElementClose(element); 29445 xml.exit(FHIR_NS, name); 29446 } 29447 } 29448 29449 protected void composeMeasureMeasureGroupComponentElements(Measure.MeasureGroupComponent element) throws IOException { 29450 composeBackboneElements(element); 29451 if (element.hasIdentifier()) { 29452 composeIdentifier("identifier", element.getIdentifier()); 29453 } 29454 if (element.hasNameElement()) { 29455 composeString("name", element.getNameElement()); 29456 } 29457 if (element.hasDescriptionElement()) { 29458 composeString("description", element.getDescriptionElement()); 29459 } 29460 if (element.hasPopulation()) { 29461 for (Measure.MeasureGroupPopulationComponent e : element.getPopulation()) 29462 composeMeasureMeasureGroupPopulationComponent("population", e); 29463 } 29464 if (element.hasStratifier()) { 29465 for (Measure.MeasureGroupStratifierComponent e : element.getStratifier()) 29466 composeMeasureMeasureGroupStratifierComponent("stratifier", e); 29467 } 29468 } 29469 29470 protected void composeMeasureMeasureGroupPopulationComponent(String name, Measure.MeasureGroupPopulationComponent element) throws IOException { 29471 if (element != null) { 29472 composeElementAttributes(element); 29473 xml.enter(FHIR_NS, name); 29474 composeMeasureMeasureGroupPopulationComponentElements(element); 29475 composeElementClose(element); 29476 xml.exit(FHIR_NS, name); 29477 } 29478 } 29479 29480 protected void composeMeasureMeasureGroupPopulationComponentElements(Measure.MeasureGroupPopulationComponent element) throws IOException { 29481 composeBackboneElements(element); 29482 if (element.hasIdentifier()) { 29483 composeIdentifier("identifier", element.getIdentifier()); 29484 } 29485 if (element.hasCode()) { 29486 composeCodeableConcept("code", element.getCode()); 29487 } 29488 if (element.hasNameElement()) { 29489 composeString("name", element.getNameElement()); 29490 } 29491 if (element.hasDescriptionElement()) { 29492 composeString("description", element.getDescriptionElement()); 29493 } 29494 if (element.hasCriteriaElement()) { 29495 composeString("criteria", element.getCriteriaElement()); 29496 } 29497 } 29498 29499 protected void composeMeasureMeasureGroupStratifierComponent(String name, Measure.MeasureGroupStratifierComponent element) throws IOException { 29500 if (element != null) { 29501 composeElementAttributes(element); 29502 xml.enter(FHIR_NS, name); 29503 composeMeasureMeasureGroupStratifierComponentElements(element); 29504 composeElementClose(element); 29505 xml.exit(FHIR_NS, name); 29506 } 29507 } 29508 29509 protected void composeMeasureMeasureGroupStratifierComponentElements(Measure.MeasureGroupStratifierComponent element) throws IOException { 29510 composeBackboneElements(element); 29511 if (element.hasIdentifier()) { 29512 composeIdentifier("identifier", element.getIdentifier()); 29513 } 29514 if (element.hasCriteriaElement()) { 29515 composeString("criteria", element.getCriteriaElement()); 29516 } 29517 if (element.hasPathElement()) { 29518 composeString("path", element.getPathElement()); 29519 } 29520 } 29521 29522 protected void composeMeasureMeasureSupplementalDataComponent(String name, Measure.MeasureSupplementalDataComponent element) throws IOException { 29523 if (element != null) { 29524 composeElementAttributes(element); 29525 xml.enter(FHIR_NS, name); 29526 composeMeasureMeasureSupplementalDataComponentElements(element); 29527 composeElementClose(element); 29528 xml.exit(FHIR_NS, name); 29529 } 29530 } 29531 29532 protected void composeMeasureMeasureSupplementalDataComponentElements(Measure.MeasureSupplementalDataComponent element) throws IOException { 29533 composeBackboneElements(element); 29534 if (element.hasIdentifier()) { 29535 composeIdentifier("identifier", element.getIdentifier()); 29536 } 29537 if (element.hasUsage()) { 29538 for (CodeableConcept e : element.getUsage()) 29539 composeCodeableConcept("usage", e); 29540 } 29541 if (element.hasCriteriaElement()) { 29542 composeString("criteria", element.getCriteriaElement()); 29543 } 29544 if (element.hasPathElement()) { 29545 composeString("path", element.getPathElement()); 29546 } 29547 } 29548 29549 protected void composeMeasureReport(String name, MeasureReport element) throws IOException { 29550 if (element != null) { 29551 composeDomainResourceAttributes(element); 29552 xml.enter(FHIR_NS, name); 29553 composeMeasureReportElements(element); 29554 composeElementClose(element); 29555 xml.exit(FHIR_NS, name); 29556 } 29557 } 29558 29559 protected void composeMeasureReportElements(MeasureReport element) throws IOException { 29560 composeDomainResourceElements(element); 29561 if (element.hasIdentifier()) { 29562 composeIdentifier("identifier", element.getIdentifier()); 29563 } 29564 if (element.hasStatusElement()) 29565 composeEnumeration("status", element.getStatusElement(), new MeasureReport.MeasureReportStatusEnumFactory()); 29566 if (element.hasTypeElement()) 29567 composeEnumeration("type", element.getTypeElement(), new MeasureReport.MeasureReportTypeEnumFactory()); 29568 if (element.hasMeasure()) { 29569 composeReference("measure", element.getMeasure()); 29570 } 29571 if (element.hasPatient()) { 29572 composeReference("patient", element.getPatient()); 29573 } 29574 if (element.hasDateElement()) { 29575 composeDateTime("date", element.getDateElement()); 29576 } 29577 if (element.hasReportingOrganization()) { 29578 composeReference("reportingOrganization", element.getReportingOrganization()); 29579 } 29580 if (element.hasPeriod()) { 29581 composePeriod("period", element.getPeriod()); 29582 } 29583 if (element.hasGroup()) { 29584 for (MeasureReport.MeasureReportGroupComponent e : element.getGroup()) 29585 composeMeasureReportMeasureReportGroupComponent("group", e); 29586 } 29587 if (element.hasEvaluatedResources()) { 29588 composeReference("evaluatedResources", element.getEvaluatedResources()); 29589 } 29590 } 29591 29592 protected void composeMeasureReportMeasureReportGroupComponent(String name, MeasureReport.MeasureReportGroupComponent element) throws IOException { 29593 if (element != null) { 29594 composeElementAttributes(element); 29595 xml.enter(FHIR_NS, name); 29596 composeMeasureReportMeasureReportGroupComponentElements(element); 29597 composeElementClose(element); 29598 xml.exit(FHIR_NS, name); 29599 } 29600 } 29601 29602 protected void composeMeasureReportMeasureReportGroupComponentElements(MeasureReport.MeasureReportGroupComponent element) throws IOException { 29603 composeBackboneElements(element); 29604 if (element.hasIdentifier()) { 29605 composeIdentifier("identifier", element.getIdentifier()); 29606 } 29607 if (element.hasPopulation()) { 29608 for (MeasureReport.MeasureReportGroupPopulationComponent e : element.getPopulation()) 29609 composeMeasureReportMeasureReportGroupPopulationComponent("population", e); 29610 } 29611 if (element.hasMeasureScoreElement()) { 29612 composeDecimal("measureScore", element.getMeasureScoreElement()); 29613 } 29614 if (element.hasStratifier()) { 29615 for (MeasureReport.MeasureReportGroupStratifierComponent e : element.getStratifier()) 29616 composeMeasureReportMeasureReportGroupStratifierComponent("stratifier", e); 29617 } 29618 } 29619 29620 protected void composeMeasureReportMeasureReportGroupPopulationComponent(String name, MeasureReport.MeasureReportGroupPopulationComponent element) throws IOException { 29621 if (element != null) { 29622 composeElementAttributes(element); 29623 xml.enter(FHIR_NS, name); 29624 composeMeasureReportMeasureReportGroupPopulationComponentElements(element); 29625 composeElementClose(element); 29626 xml.exit(FHIR_NS, name); 29627 } 29628 } 29629 29630 protected void composeMeasureReportMeasureReportGroupPopulationComponentElements(MeasureReport.MeasureReportGroupPopulationComponent element) throws IOException { 29631 composeBackboneElements(element); 29632 if (element.hasIdentifier()) { 29633 composeIdentifier("identifier", element.getIdentifier()); 29634 } 29635 if (element.hasCode()) { 29636 composeCodeableConcept("code", element.getCode()); 29637 } 29638 if (element.hasCountElement()) { 29639 composeInteger("count", element.getCountElement()); 29640 } 29641 if (element.hasPatients()) { 29642 composeReference("patients", element.getPatients()); 29643 } 29644 } 29645 29646 protected void composeMeasureReportMeasureReportGroupStratifierComponent(String name, MeasureReport.MeasureReportGroupStratifierComponent element) throws IOException { 29647 if (element != null) { 29648 composeElementAttributes(element); 29649 xml.enter(FHIR_NS, name); 29650 composeMeasureReportMeasureReportGroupStratifierComponentElements(element); 29651 composeElementClose(element); 29652 xml.exit(FHIR_NS, name); 29653 } 29654 } 29655 29656 protected void composeMeasureReportMeasureReportGroupStratifierComponentElements(MeasureReport.MeasureReportGroupStratifierComponent element) throws IOException { 29657 composeBackboneElements(element); 29658 if (element.hasIdentifier()) { 29659 composeIdentifier("identifier", element.getIdentifier()); 29660 } 29661 if (element.hasStratum()) { 29662 for (MeasureReport.StratifierGroupComponent e : element.getStratum()) 29663 composeMeasureReportStratifierGroupComponent("stratum", e); 29664 } 29665 } 29666 29667 protected void composeMeasureReportStratifierGroupComponent(String name, MeasureReport.StratifierGroupComponent element) throws IOException { 29668 if (element != null) { 29669 composeElementAttributes(element); 29670 xml.enter(FHIR_NS, name); 29671 composeMeasureReportStratifierGroupComponentElements(element); 29672 composeElementClose(element); 29673 xml.exit(FHIR_NS, name); 29674 } 29675 } 29676 29677 protected void composeMeasureReportStratifierGroupComponentElements(MeasureReport.StratifierGroupComponent element) throws IOException { 29678 composeBackboneElements(element); 29679 if (element.hasValueElement()) { 29680 composeString("value", element.getValueElement()); 29681 } 29682 if (element.hasPopulation()) { 29683 for (MeasureReport.StratifierGroupPopulationComponent e : element.getPopulation()) 29684 composeMeasureReportStratifierGroupPopulationComponent("population", e); 29685 } 29686 if (element.hasMeasureScoreElement()) { 29687 composeDecimal("measureScore", element.getMeasureScoreElement()); 29688 } 29689 } 29690 29691 protected void composeMeasureReportStratifierGroupPopulationComponent(String name, MeasureReport.StratifierGroupPopulationComponent element) throws IOException { 29692 if (element != null) { 29693 composeElementAttributes(element); 29694 xml.enter(FHIR_NS, name); 29695 composeMeasureReportStratifierGroupPopulationComponentElements(element); 29696 composeElementClose(element); 29697 xml.exit(FHIR_NS, name); 29698 } 29699 } 29700 29701 protected void composeMeasureReportStratifierGroupPopulationComponentElements(MeasureReport.StratifierGroupPopulationComponent element) throws IOException { 29702 composeBackboneElements(element); 29703 if (element.hasIdentifier()) { 29704 composeIdentifier("identifier", element.getIdentifier()); 29705 } 29706 if (element.hasCode()) { 29707 composeCodeableConcept("code", element.getCode()); 29708 } 29709 if (element.hasCountElement()) { 29710 composeInteger("count", element.getCountElement()); 29711 } 29712 if (element.hasPatients()) { 29713 composeReference("patients", element.getPatients()); 29714 } 29715 } 29716 29717 protected void composeMedia(String name, Media element) throws IOException { 29718 if (element != null) { 29719 composeDomainResourceAttributes(element); 29720 xml.enter(FHIR_NS, name); 29721 composeMediaElements(element); 29722 composeElementClose(element); 29723 xml.exit(FHIR_NS, name); 29724 } 29725 } 29726 29727 protected void composeMediaElements(Media element) throws IOException { 29728 composeDomainResourceElements(element); 29729 if (element.hasIdentifier()) { 29730 for (Identifier e : element.getIdentifier()) 29731 composeIdentifier("identifier", e); 29732 } 29733 if (element.hasBasedOn()) { 29734 for (Reference e : element.getBasedOn()) 29735 composeReference("basedOn", e); 29736 } 29737 if (element.hasTypeElement()) 29738 composeEnumeration("type", element.getTypeElement(), new Media.DigitalMediaTypeEnumFactory()); 29739 if (element.hasSubtype()) { 29740 composeCodeableConcept("subtype", element.getSubtype()); 29741 } 29742 if (element.hasView()) { 29743 composeCodeableConcept("view", element.getView()); 29744 } 29745 if (element.hasSubject()) { 29746 composeReference("subject", element.getSubject()); 29747 } 29748 if (element.hasContext()) { 29749 composeReference("context", element.getContext()); 29750 } 29751 if (element.hasOccurrence()) { 29752 composeType("occurrence", element.getOccurrence()); 29753 } if (element.hasOperator()) { 29754 composeReference("operator", element.getOperator()); 29755 } 29756 if (element.hasReasonCode()) { 29757 for (CodeableConcept e : element.getReasonCode()) 29758 composeCodeableConcept("reasonCode", e); 29759 } 29760 if (element.hasBodySite()) { 29761 composeCodeableConcept("bodySite", element.getBodySite()); 29762 } 29763 if (element.hasDevice()) { 29764 composeReference("device", element.getDevice()); 29765 } 29766 if (element.hasHeightElement()) { 29767 composePositiveInt("height", element.getHeightElement()); 29768 } 29769 if (element.hasWidthElement()) { 29770 composePositiveInt("width", element.getWidthElement()); 29771 } 29772 if (element.hasFramesElement()) { 29773 composePositiveInt("frames", element.getFramesElement()); 29774 } 29775 if (element.hasDurationElement()) { 29776 composeUnsignedInt("duration", element.getDurationElement()); 29777 } 29778 if (element.hasContent()) { 29779 composeAttachment("content", element.getContent()); 29780 } 29781 if (element.hasNote()) { 29782 for (Annotation e : element.getNote()) 29783 composeAnnotation("note", e); 29784 } 29785 } 29786 29787 protected void composeMedication(String name, Medication element) throws IOException { 29788 if (element != null) { 29789 composeDomainResourceAttributes(element); 29790 xml.enter(FHIR_NS, name); 29791 composeMedicationElements(element); 29792 composeElementClose(element); 29793 xml.exit(FHIR_NS, name); 29794 } 29795 } 29796 29797 protected void composeMedicationElements(Medication element) throws IOException { 29798 composeDomainResourceElements(element); 29799 if (element.hasCode()) { 29800 composeCodeableConcept("code", element.getCode()); 29801 } 29802 if (element.hasStatusElement()) 29803 composeEnumeration("status", element.getStatusElement(), new Medication.MedicationStatusEnumFactory()); 29804 if (element.hasIsBrandElement()) { 29805 composeBoolean("isBrand", element.getIsBrandElement()); 29806 } 29807 if (element.hasIsOverTheCounterElement()) { 29808 composeBoolean("isOverTheCounter", element.getIsOverTheCounterElement()); 29809 } 29810 if (element.hasManufacturer()) { 29811 composeReference("manufacturer", element.getManufacturer()); 29812 } 29813 if (element.hasForm()) { 29814 composeCodeableConcept("form", element.getForm()); 29815 } 29816 if (element.hasIngredient()) { 29817 for (Medication.MedicationIngredientComponent e : element.getIngredient()) 29818 composeMedicationMedicationIngredientComponent("ingredient", e); 29819 } 29820 if (element.hasPackage()) { 29821 composeMedicationMedicationPackageComponent("package", element.getPackage()); 29822 } 29823 if (element.hasImage()) { 29824 for (Attachment e : element.getImage()) 29825 composeAttachment("image", e); 29826 } 29827 } 29828 29829 protected void composeMedicationMedicationIngredientComponent(String name, Medication.MedicationIngredientComponent element) throws IOException { 29830 if (element != null) { 29831 composeElementAttributes(element); 29832 xml.enter(FHIR_NS, name); 29833 composeMedicationMedicationIngredientComponentElements(element); 29834 composeElementClose(element); 29835 xml.exit(FHIR_NS, name); 29836 } 29837 } 29838 29839 protected void composeMedicationMedicationIngredientComponentElements(Medication.MedicationIngredientComponent element) throws IOException { 29840 composeBackboneElements(element); 29841 if (element.hasItem()) { 29842 composeType("item", element.getItem()); 29843 } if (element.hasIsActiveElement()) { 29844 composeBoolean("isActive", element.getIsActiveElement()); 29845 } 29846 if (element.hasAmount()) { 29847 composeRatio("amount", element.getAmount()); 29848 } 29849 } 29850 29851 protected void composeMedicationMedicationPackageComponent(String name, Medication.MedicationPackageComponent element) throws IOException { 29852 if (element != null) { 29853 composeElementAttributes(element); 29854 xml.enter(FHIR_NS, name); 29855 composeMedicationMedicationPackageComponentElements(element); 29856 composeElementClose(element); 29857 xml.exit(FHIR_NS, name); 29858 } 29859 } 29860 29861 protected void composeMedicationMedicationPackageComponentElements(Medication.MedicationPackageComponent element) throws IOException { 29862 composeBackboneElements(element); 29863 if (element.hasContainer()) { 29864 composeCodeableConcept("container", element.getContainer()); 29865 } 29866 if (element.hasContent()) { 29867 for (Medication.MedicationPackageContentComponent e : element.getContent()) 29868 composeMedicationMedicationPackageContentComponent("content", e); 29869 } 29870 if (element.hasBatch()) { 29871 for (Medication.MedicationPackageBatchComponent e : element.getBatch()) 29872 composeMedicationMedicationPackageBatchComponent("batch", e); 29873 } 29874 } 29875 29876 protected void composeMedicationMedicationPackageContentComponent(String name, Medication.MedicationPackageContentComponent element) throws IOException { 29877 if (element != null) { 29878 composeElementAttributes(element); 29879 xml.enter(FHIR_NS, name); 29880 composeMedicationMedicationPackageContentComponentElements(element); 29881 composeElementClose(element); 29882 xml.exit(FHIR_NS, name); 29883 } 29884 } 29885 29886 protected void composeMedicationMedicationPackageContentComponentElements(Medication.MedicationPackageContentComponent element) throws IOException { 29887 composeBackboneElements(element); 29888 if (element.hasItem()) { 29889 composeType("item", element.getItem()); 29890 } if (element.hasAmount()) { 29891 composeSimpleQuantity("amount", element.getAmount()); 29892 } 29893 } 29894 29895 protected void composeMedicationMedicationPackageBatchComponent(String name, Medication.MedicationPackageBatchComponent element) throws IOException { 29896 if (element != null) { 29897 composeElementAttributes(element); 29898 xml.enter(FHIR_NS, name); 29899 composeMedicationMedicationPackageBatchComponentElements(element); 29900 composeElementClose(element); 29901 xml.exit(FHIR_NS, name); 29902 } 29903 } 29904 29905 protected void composeMedicationMedicationPackageBatchComponentElements(Medication.MedicationPackageBatchComponent element) throws IOException { 29906 composeBackboneElements(element); 29907 if (element.hasLotNumberElement()) { 29908 composeString("lotNumber", element.getLotNumberElement()); 29909 } 29910 if (element.hasExpirationDateElement()) { 29911 composeDateTime("expirationDate", element.getExpirationDateElement()); 29912 } 29913 } 29914 29915 protected void composeMedicationAdministration(String name, MedicationAdministration element) throws IOException { 29916 if (element != null) { 29917 composeDomainResourceAttributes(element); 29918 xml.enter(FHIR_NS, name); 29919 composeMedicationAdministrationElements(element); 29920 composeElementClose(element); 29921 xml.exit(FHIR_NS, name); 29922 } 29923 } 29924 29925 protected void composeMedicationAdministrationElements(MedicationAdministration element) throws IOException { 29926 composeDomainResourceElements(element); 29927 if (element.hasIdentifier()) { 29928 for (Identifier e : element.getIdentifier()) 29929 composeIdentifier("identifier", e); 29930 } 29931 if (element.hasDefinition()) { 29932 for (Reference e : element.getDefinition()) 29933 composeReference("definition", e); 29934 } 29935 if (element.hasPartOf()) { 29936 for (Reference e : element.getPartOf()) 29937 composeReference("partOf", e); 29938 } 29939 if (element.hasStatusElement()) 29940 composeEnumeration("status", element.getStatusElement(), new MedicationAdministration.MedicationAdministrationStatusEnumFactory()); 29941 if (element.hasCategory()) { 29942 composeCodeableConcept("category", element.getCategory()); 29943 } 29944 if (element.hasMedication()) { 29945 composeType("medication", element.getMedication()); 29946 } if (element.hasSubject()) { 29947 composeReference("subject", element.getSubject()); 29948 } 29949 if (element.hasContext()) { 29950 composeReference("context", element.getContext()); 29951 } 29952 if (element.hasSupportingInformation()) { 29953 for (Reference e : element.getSupportingInformation()) 29954 composeReference("supportingInformation", e); 29955 } 29956 if (element.hasEffective()) { 29957 composeType("effective", element.getEffective()); 29958 } if (element.hasPerformer()) { 29959 for (MedicationAdministration.MedicationAdministrationPerformerComponent e : element.getPerformer()) 29960 composeMedicationAdministrationMedicationAdministrationPerformerComponent("performer", e); 29961 } 29962 if (element.hasNotGivenElement()) { 29963 composeBoolean("notGiven", element.getNotGivenElement()); 29964 } 29965 if (element.hasReasonNotGiven()) { 29966 for (CodeableConcept e : element.getReasonNotGiven()) 29967 composeCodeableConcept("reasonNotGiven", e); 29968 } 29969 if (element.hasReasonCode()) { 29970 for (CodeableConcept e : element.getReasonCode()) 29971 composeCodeableConcept("reasonCode", e); 29972 } 29973 if (element.hasReasonReference()) { 29974 for (Reference e : element.getReasonReference()) 29975 composeReference("reasonReference", e); 29976 } 29977 if (element.hasPrescription()) { 29978 composeReference("prescription", element.getPrescription()); 29979 } 29980 if (element.hasDevice()) { 29981 for (Reference e : element.getDevice()) 29982 composeReference("device", e); 29983 } 29984 if (element.hasNote()) { 29985 for (Annotation e : element.getNote()) 29986 composeAnnotation("note", e); 29987 } 29988 if (element.hasDosage()) { 29989 composeMedicationAdministrationMedicationAdministrationDosageComponent("dosage", element.getDosage()); 29990 } 29991 if (element.hasEventHistory()) { 29992 for (Reference e : element.getEventHistory()) 29993 composeReference("eventHistory", e); 29994 } 29995 } 29996 29997 protected void composeMedicationAdministrationMedicationAdministrationPerformerComponent(String name, MedicationAdministration.MedicationAdministrationPerformerComponent element) throws IOException { 29998 if (element != null) { 29999 composeElementAttributes(element); 30000 xml.enter(FHIR_NS, name); 30001 composeMedicationAdministrationMedicationAdministrationPerformerComponentElements(element); 30002 composeElementClose(element); 30003 xml.exit(FHIR_NS, name); 30004 } 30005 } 30006 30007 protected void composeMedicationAdministrationMedicationAdministrationPerformerComponentElements(MedicationAdministration.MedicationAdministrationPerformerComponent element) throws IOException { 30008 composeBackboneElements(element); 30009 if (element.hasActor()) { 30010 composeReference("actor", element.getActor()); 30011 } 30012 if (element.hasOnBehalfOf()) { 30013 composeReference("onBehalfOf", element.getOnBehalfOf()); 30014 } 30015 } 30016 30017 protected void composeMedicationAdministrationMedicationAdministrationDosageComponent(String name, MedicationAdministration.MedicationAdministrationDosageComponent element) throws IOException { 30018 if (element != null) { 30019 composeElementAttributes(element); 30020 xml.enter(FHIR_NS, name); 30021 composeMedicationAdministrationMedicationAdministrationDosageComponentElements(element); 30022 composeElementClose(element); 30023 xml.exit(FHIR_NS, name); 30024 } 30025 } 30026 30027 protected void composeMedicationAdministrationMedicationAdministrationDosageComponentElements(MedicationAdministration.MedicationAdministrationDosageComponent element) throws IOException { 30028 composeBackboneElements(element); 30029 if (element.hasTextElement()) { 30030 composeString("text", element.getTextElement()); 30031 } 30032 if (element.hasSite()) { 30033 composeCodeableConcept("site", element.getSite()); 30034 } 30035 if (element.hasRoute()) { 30036 composeCodeableConcept("route", element.getRoute()); 30037 } 30038 if (element.hasMethod()) { 30039 composeCodeableConcept("method", element.getMethod()); 30040 } 30041 if (element.hasDose()) { 30042 composeSimpleQuantity("dose", element.getDose()); 30043 } 30044 if (element.hasRate()) { 30045 composeType("rate", element.getRate()); 30046 } } 30047 30048 protected void composeMedicationDispense(String name, MedicationDispense element) throws IOException { 30049 if (element != null) { 30050 composeDomainResourceAttributes(element); 30051 xml.enter(FHIR_NS, name); 30052 composeMedicationDispenseElements(element); 30053 composeElementClose(element); 30054 xml.exit(FHIR_NS, name); 30055 } 30056 } 30057 30058 protected void composeMedicationDispenseElements(MedicationDispense element) throws IOException { 30059 composeDomainResourceElements(element); 30060 if (element.hasIdentifier()) { 30061 for (Identifier e : element.getIdentifier()) 30062 composeIdentifier("identifier", e); 30063 } 30064 if (element.hasPartOf()) { 30065 for (Reference e : element.getPartOf()) 30066 composeReference("partOf", e); 30067 } 30068 if (element.hasStatusElement()) 30069 composeEnumeration("status", element.getStatusElement(), new MedicationDispense.MedicationDispenseStatusEnumFactory()); 30070 if (element.hasCategory()) { 30071 composeCodeableConcept("category", element.getCategory()); 30072 } 30073 if (element.hasMedication()) { 30074 composeType("medication", element.getMedication()); 30075 } if (element.hasSubject()) { 30076 composeReference("subject", element.getSubject()); 30077 } 30078 if (element.hasContext()) { 30079 composeReference("context", element.getContext()); 30080 } 30081 if (element.hasSupportingInformation()) { 30082 for (Reference e : element.getSupportingInformation()) 30083 composeReference("supportingInformation", e); 30084 } 30085 if (element.hasPerformer()) { 30086 for (MedicationDispense.MedicationDispensePerformerComponent e : element.getPerformer()) 30087 composeMedicationDispenseMedicationDispensePerformerComponent("performer", e); 30088 } 30089 if (element.hasAuthorizingPrescription()) { 30090 for (Reference e : element.getAuthorizingPrescription()) 30091 composeReference("authorizingPrescription", e); 30092 } 30093 if (element.hasType()) { 30094 composeCodeableConcept("type", element.getType()); 30095 } 30096 if (element.hasQuantity()) { 30097 composeSimpleQuantity("quantity", element.getQuantity()); 30098 } 30099 if (element.hasDaysSupply()) { 30100 composeSimpleQuantity("daysSupply", element.getDaysSupply()); 30101 } 30102 if (element.hasWhenPreparedElement()) { 30103 composeDateTime("whenPrepared", element.getWhenPreparedElement()); 30104 } 30105 if (element.hasWhenHandedOverElement()) { 30106 composeDateTime("whenHandedOver", element.getWhenHandedOverElement()); 30107 } 30108 if (element.hasDestination()) { 30109 composeReference("destination", element.getDestination()); 30110 } 30111 if (element.hasReceiver()) { 30112 for (Reference e : element.getReceiver()) 30113 composeReference("receiver", e); 30114 } 30115 if (element.hasNote()) { 30116 for (Annotation e : element.getNote()) 30117 composeAnnotation("note", e); 30118 } 30119 if (element.hasDosageInstruction()) { 30120 for (Dosage e : element.getDosageInstruction()) 30121 composeDosage("dosageInstruction", e); 30122 } 30123 if (element.hasSubstitution()) { 30124 composeMedicationDispenseMedicationDispenseSubstitutionComponent("substitution", element.getSubstitution()); 30125 } 30126 if (element.hasDetectedIssue()) { 30127 for (Reference e : element.getDetectedIssue()) 30128 composeReference("detectedIssue", e); 30129 } 30130 if (element.hasNotDoneElement()) { 30131 composeBoolean("notDone", element.getNotDoneElement()); 30132 } 30133 if (element.hasNotDoneReason()) { 30134 composeType("notDoneReason", element.getNotDoneReason()); 30135 } if (element.hasEventHistory()) { 30136 for (Reference e : element.getEventHistory()) 30137 composeReference("eventHistory", e); 30138 } 30139 } 30140 30141 protected void composeMedicationDispenseMedicationDispensePerformerComponent(String name, MedicationDispense.MedicationDispensePerformerComponent element) throws IOException { 30142 if (element != null) { 30143 composeElementAttributes(element); 30144 xml.enter(FHIR_NS, name); 30145 composeMedicationDispenseMedicationDispensePerformerComponentElements(element); 30146 composeElementClose(element); 30147 xml.exit(FHIR_NS, name); 30148 } 30149 } 30150 30151 protected void composeMedicationDispenseMedicationDispensePerformerComponentElements(MedicationDispense.MedicationDispensePerformerComponent element) throws IOException { 30152 composeBackboneElements(element); 30153 if (element.hasActor()) { 30154 composeReference("actor", element.getActor()); 30155 } 30156 if (element.hasOnBehalfOf()) { 30157 composeReference("onBehalfOf", element.getOnBehalfOf()); 30158 } 30159 } 30160 30161 protected void composeMedicationDispenseMedicationDispenseSubstitutionComponent(String name, MedicationDispense.MedicationDispenseSubstitutionComponent element) throws IOException { 30162 if (element != null) { 30163 composeElementAttributes(element); 30164 xml.enter(FHIR_NS, name); 30165 composeMedicationDispenseMedicationDispenseSubstitutionComponentElements(element); 30166 composeElementClose(element); 30167 xml.exit(FHIR_NS, name); 30168 } 30169 } 30170 30171 protected void composeMedicationDispenseMedicationDispenseSubstitutionComponentElements(MedicationDispense.MedicationDispenseSubstitutionComponent element) throws IOException { 30172 composeBackboneElements(element); 30173 if (element.hasWasSubstitutedElement()) { 30174 composeBoolean("wasSubstituted", element.getWasSubstitutedElement()); 30175 } 30176 if (element.hasType()) { 30177 composeCodeableConcept("type", element.getType()); 30178 } 30179 if (element.hasReason()) { 30180 for (CodeableConcept e : element.getReason()) 30181 composeCodeableConcept("reason", e); 30182 } 30183 if (element.hasResponsibleParty()) { 30184 for (Reference e : element.getResponsibleParty()) 30185 composeReference("responsibleParty", e); 30186 } 30187 } 30188 30189 protected void composeMedicationRequest(String name, MedicationRequest element) throws IOException { 30190 if (element != null) { 30191 composeDomainResourceAttributes(element); 30192 xml.enter(FHIR_NS, name); 30193 composeMedicationRequestElements(element); 30194 composeElementClose(element); 30195 xml.exit(FHIR_NS, name); 30196 } 30197 } 30198 30199 protected void composeMedicationRequestElements(MedicationRequest element) throws IOException { 30200 composeDomainResourceElements(element); 30201 if (element.hasIdentifier()) { 30202 for (Identifier e : element.getIdentifier()) 30203 composeIdentifier("identifier", e); 30204 } 30205 if (element.hasDefinition()) { 30206 for (Reference e : element.getDefinition()) 30207 composeReference("definition", e); 30208 } 30209 if (element.hasBasedOn()) { 30210 for (Reference e : element.getBasedOn()) 30211 composeReference("basedOn", e); 30212 } 30213 if (element.hasGroupIdentifier()) { 30214 composeIdentifier("groupIdentifier", element.getGroupIdentifier()); 30215 } 30216 if (element.hasStatusElement()) 30217 composeEnumeration("status", element.getStatusElement(), new MedicationRequest.MedicationRequestStatusEnumFactory()); 30218 if (element.hasIntentElement()) 30219 composeEnumeration("intent", element.getIntentElement(), new MedicationRequest.MedicationRequestIntentEnumFactory()); 30220 if (element.hasCategory()) { 30221 composeCodeableConcept("category", element.getCategory()); 30222 } 30223 if (element.hasPriorityElement()) 30224 composeEnumeration("priority", element.getPriorityElement(), new MedicationRequest.MedicationRequestPriorityEnumFactory()); 30225 if (element.hasMedication()) { 30226 composeType("medication", element.getMedication()); 30227 } if (element.hasSubject()) { 30228 composeReference("subject", element.getSubject()); 30229 } 30230 if (element.hasContext()) { 30231 composeReference("context", element.getContext()); 30232 } 30233 if (element.hasSupportingInformation()) { 30234 for (Reference e : element.getSupportingInformation()) 30235 composeReference("supportingInformation", e); 30236 } 30237 if (element.hasAuthoredOnElement()) { 30238 composeDateTime("authoredOn", element.getAuthoredOnElement()); 30239 } 30240 if (element.hasRequester()) { 30241 composeMedicationRequestMedicationRequestRequesterComponent("requester", element.getRequester()); 30242 } 30243 if (element.hasRecorder()) { 30244 composeReference("recorder", element.getRecorder()); 30245 } 30246 if (element.hasReasonCode()) { 30247 for (CodeableConcept e : element.getReasonCode()) 30248 composeCodeableConcept("reasonCode", e); 30249 } 30250 if (element.hasReasonReference()) { 30251 for (Reference e : element.getReasonReference()) 30252 composeReference("reasonReference", e); 30253 } 30254 if (element.hasNote()) { 30255 for (Annotation e : element.getNote()) 30256 composeAnnotation("note", e); 30257 } 30258 if (element.hasDosageInstruction()) { 30259 for (Dosage e : element.getDosageInstruction()) 30260 composeDosage("dosageInstruction", e); 30261 } 30262 if (element.hasDispenseRequest()) { 30263 composeMedicationRequestMedicationRequestDispenseRequestComponent("dispenseRequest", element.getDispenseRequest()); 30264 } 30265 if (element.hasSubstitution()) { 30266 composeMedicationRequestMedicationRequestSubstitutionComponent("substitution", element.getSubstitution()); 30267 } 30268 if (element.hasPriorPrescription()) { 30269 composeReference("priorPrescription", element.getPriorPrescription()); 30270 } 30271 if (element.hasDetectedIssue()) { 30272 for (Reference e : element.getDetectedIssue()) 30273 composeReference("detectedIssue", e); 30274 } 30275 if (element.hasEventHistory()) { 30276 for (Reference e : element.getEventHistory()) 30277 composeReference("eventHistory", e); 30278 } 30279 } 30280 30281 protected void composeMedicationRequestMedicationRequestRequesterComponent(String name, MedicationRequest.MedicationRequestRequesterComponent element) throws IOException { 30282 if (element != null) { 30283 composeElementAttributes(element); 30284 xml.enter(FHIR_NS, name); 30285 composeMedicationRequestMedicationRequestRequesterComponentElements(element); 30286 composeElementClose(element); 30287 xml.exit(FHIR_NS, name); 30288 } 30289 } 30290 30291 protected void composeMedicationRequestMedicationRequestRequesterComponentElements(MedicationRequest.MedicationRequestRequesterComponent element) throws IOException { 30292 composeBackboneElements(element); 30293 if (element.hasAgent()) { 30294 composeReference("agent", element.getAgent()); 30295 } 30296 if (element.hasOnBehalfOf()) { 30297 composeReference("onBehalfOf", element.getOnBehalfOf()); 30298 } 30299 } 30300 30301 protected void composeMedicationRequestMedicationRequestDispenseRequestComponent(String name, MedicationRequest.MedicationRequestDispenseRequestComponent element) throws IOException { 30302 if (element != null) { 30303 composeElementAttributes(element); 30304 xml.enter(FHIR_NS, name); 30305 composeMedicationRequestMedicationRequestDispenseRequestComponentElements(element); 30306 composeElementClose(element); 30307 xml.exit(FHIR_NS, name); 30308 } 30309 } 30310 30311 protected void composeMedicationRequestMedicationRequestDispenseRequestComponentElements(MedicationRequest.MedicationRequestDispenseRequestComponent element) throws IOException { 30312 composeBackboneElements(element); 30313 if (element.hasValidityPeriod()) { 30314 composePeriod("validityPeriod", element.getValidityPeriod()); 30315 } 30316 if (element.hasNumberOfRepeatsAllowedElement()) { 30317 composePositiveInt("numberOfRepeatsAllowed", element.getNumberOfRepeatsAllowedElement()); 30318 } 30319 if (element.hasQuantity()) { 30320 composeSimpleQuantity("quantity", element.getQuantity()); 30321 } 30322 if (element.hasExpectedSupplyDuration()) { 30323 composeDuration("expectedSupplyDuration", element.getExpectedSupplyDuration()); 30324 } 30325 if (element.hasPerformer()) { 30326 composeReference("performer", element.getPerformer()); 30327 } 30328 } 30329 30330 protected void composeMedicationRequestMedicationRequestSubstitutionComponent(String name, MedicationRequest.MedicationRequestSubstitutionComponent element) throws IOException { 30331 if (element != null) { 30332 composeElementAttributes(element); 30333 xml.enter(FHIR_NS, name); 30334 composeMedicationRequestMedicationRequestSubstitutionComponentElements(element); 30335 composeElementClose(element); 30336 xml.exit(FHIR_NS, name); 30337 } 30338 } 30339 30340 protected void composeMedicationRequestMedicationRequestSubstitutionComponentElements(MedicationRequest.MedicationRequestSubstitutionComponent element) throws IOException { 30341 composeBackboneElements(element); 30342 if (element.hasAllowedElement()) { 30343 composeBoolean("allowed", element.getAllowedElement()); 30344 } 30345 if (element.hasReason()) { 30346 composeCodeableConcept("reason", element.getReason()); 30347 } 30348 } 30349 30350 protected void composeMedicationStatement(String name, MedicationStatement element) throws IOException { 30351 if (element != null) { 30352 composeDomainResourceAttributes(element); 30353 xml.enter(FHIR_NS, name); 30354 composeMedicationStatementElements(element); 30355 composeElementClose(element); 30356 xml.exit(FHIR_NS, name); 30357 } 30358 } 30359 30360 protected void composeMedicationStatementElements(MedicationStatement element) throws IOException { 30361 composeDomainResourceElements(element); 30362 if (element.hasIdentifier()) { 30363 for (Identifier e : element.getIdentifier()) 30364 composeIdentifier("identifier", e); 30365 } 30366 if (element.hasBasedOn()) { 30367 for (Reference e : element.getBasedOn()) 30368 composeReference("basedOn", e); 30369 } 30370 if (element.hasPartOf()) { 30371 for (Reference e : element.getPartOf()) 30372 composeReference("partOf", e); 30373 } 30374 if (element.hasContext()) { 30375 composeReference("context", element.getContext()); 30376 } 30377 if (element.hasStatusElement()) 30378 composeEnumeration("status", element.getStatusElement(), new MedicationStatement.MedicationStatementStatusEnumFactory()); 30379 if (element.hasCategory()) { 30380 composeCodeableConcept("category", element.getCategory()); 30381 } 30382 if (element.hasMedication()) { 30383 composeType("medication", element.getMedication()); 30384 } if (element.hasEffective()) { 30385 composeType("effective", element.getEffective()); 30386 } if (element.hasDateAssertedElement()) { 30387 composeDateTime("dateAsserted", element.getDateAssertedElement()); 30388 } 30389 if (element.hasInformationSource()) { 30390 composeReference("informationSource", element.getInformationSource()); 30391 } 30392 if (element.hasSubject()) { 30393 composeReference("subject", element.getSubject()); 30394 } 30395 if (element.hasDerivedFrom()) { 30396 for (Reference e : element.getDerivedFrom()) 30397 composeReference("derivedFrom", e); 30398 } 30399 if (element.hasTakenElement()) 30400 composeEnumeration("taken", element.getTakenElement(), new MedicationStatement.MedicationStatementTakenEnumFactory()); 30401 if (element.hasReasonNotTaken()) { 30402 for (CodeableConcept e : element.getReasonNotTaken()) 30403 composeCodeableConcept("reasonNotTaken", e); 30404 } 30405 if (element.hasReasonCode()) { 30406 for (CodeableConcept e : element.getReasonCode()) 30407 composeCodeableConcept("reasonCode", e); 30408 } 30409 if (element.hasReasonReference()) { 30410 for (Reference e : element.getReasonReference()) 30411 composeReference("reasonReference", e); 30412 } 30413 if (element.hasNote()) { 30414 for (Annotation e : element.getNote()) 30415 composeAnnotation("note", e); 30416 } 30417 if (element.hasDosage()) { 30418 for (Dosage e : element.getDosage()) 30419 composeDosage("dosage", e); 30420 } 30421 } 30422 30423 protected void composeMessageDefinition(String name, MessageDefinition element) throws IOException { 30424 if (element != null) { 30425 composeDomainResourceAttributes(element); 30426 xml.enter(FHIR_NS, name); 30427 composeMessageDefinitionElements(element); 30428 composeElementClose(element); 30429 xml.exit(FHIR_NS, name); 30430 } 30431 } 30432 30433 protected void composeMessageDefinitionElements(MessageDefinition element) throws IOException { 30434 composeDomainResourceElements(element); 30435 if (element.hasUrlElement()) { 30436 composeUri("url", element.getUrlElement()); 30437 } 30438 if (element.hasIdentifier()) { 30439 composeIdentifier("identifier", element.getIdentifier()); 30440 } 30441 if (element.hasVersionElement()) { 30442 composeString("version", element.getVersionElement()); 30443 } 30444 if (element.hasNameElement()) { 30445 composeString("name", element.getNameElement()); 30446 } 30447 if (element.hasTitleElement()) { 30448 composeString("title", element.getTitleElement()); 30449 } 30450 if (element.hasStatusElement()) 30451 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 30452 if (element.hasExperimentalElement()) { 30453 composeBoolean("experimental", element.getExperimentalElement()); 30454 } 30455 if (element.hasDateElement()) { 30456 composeDateTime("date", element.getDateElement()); 30457 } 30458 if (element.hasPublisherElement()) { 30459 composeString("publisher", element.getPublisherElement()); 30460 } 30461 if (element.hasContact()) { 30462 for (ContactDetail e : element.getContact()) 30463 composeContactDetail("contact", e); 30464 } 30465 if (element.hasDescriptionElement()) { 30466 composeMarkdown("description", element.getDescriptionElement()); 30467 } 30468 if (element.hasUseContext()) { 30469 for (UsageContext e : element.getUseContext()) 30470 composeUsageContext("useContext", e); 30471 } 30472 if (element.hasJurisdiction()) { 30473 for (CodeableConcept e : element.getJurisdiction()) 30474 composeCodeableConcept("jurisdiction", e); 30475 } 30476 if (element.hasPurposeElement()) { 30477 composeMarkdown("purpose", element.getPurposeElement()); 30478 } 30479 if (element.hasCopyrightElement()) { 30480 composeMarkdown("copyright", element.getCopyrightElement()); 30481 } 30482 if (element.hasBase()) { 30483 composeReference("base", element.getBase()); 30484 } 30485 if (element.hasParent()) { 30486 for (Reference e : element.getParent()) 30487 composeReference("parent", e); 30488 } 30489 if (element.hasReplaces()) { 30490 for (Reference e : element.getReplaces()) 30491 composeReference("replaces", e); 30492 } 30493 if (element.hasEvent()) { 30494 composeCoding("event", element.getEvent()); 30495 } 30496 if (element.hasCategoryElement()) 30497 composeEnumeration("category", element.getCategoryElement(), new MessageDefinition.MessageSignificanceCategoryEnumFactory()); 30498 if (element.hasFocus()) { 30499 for (MessageDefinition.MessageDefinitionFocusComponent e : element.getFocus()) 30500 composeMessageDefinitionMessageDefinitionFocusComponent("focus", e); 30501 } 30502 if (element.hasResponseRequiredElement()) { 30503 composeBoolean("responseRequired", element.getResponseRequiredElement()); 30504 } 30505 if (element.hasAllowedResponse()) { 30506 for (MessageDefinition.MessageDefinitionAllowedResponseComponent e : element.getAllowedResponse()) 30507 composeMessageDefinitionMessageDefinitionAllowedResponseComponent("allowedResponse", e); 30508 } 30509 } 30510 30511 protected void composeMessageDefinitionMessageDefinitionFocusComponent(String name, MessageDefinition.MessageDefinitionFocusComponent element) throws IOException { 30512 if (element != null) { 30513 composeElementAttributes(element); 30514 xml.enter(FHIR_NS, name); 30515 composeMessageDefinitionMessageDefinitionFocusComponentElements(element); 30516 composeElementClose(element); 30517 xml.exit(FHIR_NS, name); 30518 } 30519 } 30520 30521 protected void composeMessageDefinitionMessageDefinitionFocusComponentElements(MessageDefinition.MessageDefinitionFocusComponent element) throws IOException { 30522 composeBackboneElements(element); 30523 if (element.hasCodeElement()) { 30524 composeCode("code", element.getCodeElement()); 30525 } 30526 if (element.hasProfile()) { 30527 composeReference("profile", element.getProfile()); 30528 } 30529 if (element.hasMinElement()) { 30530 composeUnsignedInt("min", element.getMinElement()); 30531 } 30532 if (element.hasMaxElement()) { 30533 composeString("max", element.getMaxElement()); 30534 } 30535 } 30536 30537 protected void composeMessageDefinitionMessageDefinitionAllowedResponseComponent(String name, MessageDefinition.MessageDefinitionAllowedResponseComponent element) throws IOException { 30538 if (element != null) { 30539 composeElementAttributes(element); 30540 xml.enter(FHIR_NS, name); 30541 composeMessageDefinitionMessageDefinitionAllowedResponseComponentElements(element); 30542 composeElementClose(element); 30543 xml.exit(FHIR_NS, name); 30544 } 30545 } 30546 30547 protected void composeMessageDefinitionMessageDefinitionAllowedResponseComponentElements(MessageDefinition.MessageDefinitionAllowedResponseComponent element) throws IOException { 30548 composeBackboneElements(element); 30549 if (element.hasMessage()) { 30550 composeReference("message", element.getMessage()); 30551 } 30552 if (element.hasSituationElement()) { 30553 composeMarkdown("situation", element.getSituationElement()); 30554 } 30555 } 30556 30557 protected void composeMessageHeader(String name, MessageHeader element) throws IOException { 30558 if (element != null) { 30559 composeDomainResourceAttributes(element); 30560 xml.enter(FHIR_NS, name); 30561 composeMessageHeaderElements(element); 30562 composeElementClose(element); 30563 xml.exit(FHIR_NS, name); 30564 } 30565 } 30566 30567 protected void composeMessageHeaderElements(MessageHeader element) throws IOException { 30568 composeDomainResourceElements(element); 30569 if (element.hasEvent()) { 30570 composeCoding("event", element.getEvent()); 30571 } 30572 if (element.hasDestination()) { 30573 for (MessageHeader.MessageDestinationComponent e : element.getDestination()) 30574 composeMessageHeaderMessageDestinationComponent("destination", e); 30575 } 30576 if (element.hasReceiver()) { 30577 composeReference("receiver", element.getReceiver()); 30578 } 30579 if (element.hasSender()) { 30580 composeReference("sender", element.getSender()); 30581 } 30582 if (element.hasTimestampElement()) { 30583 composeInstant("timestamp", element.getTimestampElement()); 30584 } 30585 if (element.hasEnterer()) { 30586 composeReference("enterer", element.getEnterer()); 30587 } 30588 if (element.hasAuthor()) { 30589 composeReference("author", element.getAuthor()); 30590 } 30591 if (element.hasSource()) { 30592 composeMessageHeaderMessageSourceComponent("source", element.getSource()); 30593 } 30594 if (element.hasResponsible()) { 30595 composeReference("responsible", element.getResponsible()); 30596 } 30597 if (element.hasReason()) { 30598 composeCodeableConcept("reason", element.getReason()); 30599 } 30600 if (element.hasResponse()) { 30601 composeMessageHeaderMessageHeaderResponseComponent("response", element.getResponse()); 30602 } 30603 if (element.hasFocus()) { 30604 for (Reference e : element.getFocus()) 30605 composeReference("focus", e); 30606 } 30607 } 30608 30609 protected void composeMessageHeaderMessageDestinationComponent(String name, MessageHeader.MessageDestinationComponent element) throws IOException { 30610 if (element != null) { 30611 composeElementAttributes(element); 30612 xml.enter(FHIR_NS, name); 30613 composeMessageHeaderMessageDestinationComponentElements(element); 30614 composeElementClose(element); 30615 xml.exit(FHIR_NS, name); 30616 } 30617 } 30618 30619 protected void composeMessageHeaderMessageDestinationComponentElements(MessageHeader.MessageDestinationComponent element) throws IOException { 30620 composeBackboneElements(element); 30621 if (element.hasNameElement()) { 30622 composeString("name", element.getNameElement()); 30623 } 30624 if (element.hasTarget()) { 30625 composeReference("target", element.getTarget()); 30626 } 30627 if (element.hasEndpointElement()) { 30628 composeUri("endpoint", element.getEndpointElement()); 30629 } 30630 } 30631 30632 protected void composeMessageHeaderMessageSourceComponent(String name, MessageHeader.MessageSourceComponent element) throws IOException { 30633 if (element != null) { 30634 composeElementAttributes(element); 30635 xml.enter(FHIR_NS, name); 30636 composeMessageHeaderMessageSourceComponentElements(element); 30637 composeElementClose(element); 30638 xml.exit(FHIR_NS, name); 30639 } 30640 } 30641 30642 protected void composeMessageHeaderMessageSourceComponentElements(MessageHeader.MessageSourceComponent element) throws IOException { 30643 composeBackboneElements(element); 30644 if (element.hasNameElement()) { 30645 composeString("name", element.getNameElement()); 30646 } 30647 if (element.hasSoftwareElement()) { 30648 composeString("software", element.getSoftwareElement()); 30649 } 30650 if (element.hasVersionElement()) { 30651 composeString("version", element.getVersionElement()); 30652 } 30653 if (element.hasContact()) { 30654 composeContactPoint("contact", element.getContact()); 30655 } 30656 if (element.hasEndpointElement()) { 30657 composeUri("endpoint", element.getEndpointElement()); 30658 } 30659 } 30660 30661 protected void composeMessageHeaderMessageHeaderResponseComponent(String name, MessageHeader.MessageHeaderResponseComponent element) throws IOException { 30662 if (element != null) { 30663 composeElementAttributes(element); 30664 xml.enter(FHIR_NS, name); 30665 composeMessageHeaderMessageHeaderResponseComponentElements(element); 30666 composeElementClose(element); 30667 xml.exit(FHIR_NS, name); 30668 } 30669 } 30670 30671 protected void composeMessageHeaderMessageHeaderResponseComponentElements(MessageHeader.MessageHeaderResponseComponent element) throws IOException { 30672 composeBackboneElements(element); 30673 if (element.hasIdentifierElement()) { 30674 composeId("identifier", element.getIdentifierElement()); 30675 } 30676 if (element.hasCodeElement()) 30677 composeEnumeration("code", element.getCodeElement(), new MessageHeader.ResponseTypeEnumFactory()); 30678 if (element.hasDetails()) { 30679 composeReference("details", element.getDetails()); 30680 } 30681 } 30682 30683 protected void composeNamingSystem(String name, NamingSystem element) throws IOException { 30684 if (element != null) { 30685 composeDomainResourceAttributes(element); 30686 xml.enter(FHIR_NS, name); 30687 composeNamingSystemElements(element); 30688 composeElementClose(element); 30689 xml.exit(FHIR_NS, name); 30690 } 30691 } 30692 30693 protected void composeNamingSystemElements(NamingSystem element) throws IOException { 30694 composeDomainResourceElements(element); 30695 if (element.hasNameElement()) { 30696 composeString("name", element.getNameElement()); 30697 } 30698 if (element.hasStatusElement()) 30699 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 30700 if (element.hasKindElement()) 30701 composeEnumeration("kind", element.getKindElement(), new NamingSystem.NamingSystemTypeEnumFactory()); 30702 if (element.hasDateElement()) { 30703 composeDateTime("date", element.getDateElement()); 30704 } 30705 if (element.hasPublisherElement()) { 30706 composeString("publisher", element.getPublisherElement()); 30707 } 30708 if (element.hasContact()) { 30709 for (ContactDetail e : element.getContact()) 30710 composeContactDetail("contact", e); 30711 } 30712 if (element.hasResponsibleElement()) { 30713 composeString("responsible", element.getResponsibleElement()); 30714 } 30715 if (element.hasType()) { 30716 composeCodeableConcept("type", element.getType()); 30717 } 30718 if (element.hasDescriptionElement()) { 30719 composeMarkdown("description", element.getDescriptionElement()); 30720 } 30721 if (element.hasUseContext()) { 30722 for (UsageContext e : element.getUseContext()) 30723 composeUsageContext("useContext", e); 30724 } 30725 if (element.hasJurisdiction()) { 30726 for (CodeableConcept e : element.getJurisdiction()) 30727 composeCodeableConcept("jurisdiction", e); 30728 } 30729 if (element.hasUsageElement()) { 30730 composeString("usage", element.getUsageElement()); 30731 } 30732 if (element.hasUniqueId()) { 30733 for (NamingSystem.NamingSystemUniqueIdComponent e : element.getUniqueId()) 30734 composeNamingSystemNamingSystemUniqueIdComponent("uniqueId", e); 30735 } 30736 if (element.hasReplacedBy()) { 30737 composeReference("replacedBy", element.getReplacedBy()); 30738 } 30739 } 30740 30741 protected void composeNamingSystemNamingSystemUniqueIdComponent(String name, NamingSystem.NamingSystemUniqueIdComponent element) throws IOException { 30742 if (element != null) { 30743 composeElementAttributes(element); 30744 xml.enter(FHIR_NS, name); 30745 composeNamingSystemNamingSystemUniqueIdComponentElements(element); 30746 composeElementClose(element); 30747 xml.exit(FHIR_NS, name); 30748 } 30749 } 30750 30751 protected void composeNamingSystemNamingSystemUniqueIdComponentElements(NamingSystem.NamingSystemUniqueIdComponent element) throws IOException { 30752 composeBackboneElements(element); 30753 if (element.hasTypeElement()) 30754 composeEnumeration("type", element.getTypeElement(), new NamingSystem.NamingSystemIdentifierTypeEnumFactory()); 30755 if (element.hasValueElement()) { 30756 composeString("value", element.getValueElement()); 30757 } 30758 if (element.hasPreferredElement()) { 30759 composeBoolean("preferred", element.getPreferredElement()); 30760 } 30761 if (element.hasCommentElement()) { 30762 composeString("comment", element.getCommentElement()); 30763 } 30764 if (element.hasPeriod()) { 30765 composePeriod("period", element.getPeriod()); 30766 } 30767 } 30768 30769 protected void composeNutritionOrder(String name, NutritionOrder element) throws IOException { 30770 if (element != null) { 30771 composeDomainResourceAttributes(element); 30772 xml.enter(FHIR_NS, name); 30773 composeNutritionOrderElements(element); 30774 composeElementClose(element); 30775 xml.exit(FHIR_NS, name); 30776 } 30777 } 30778 30779 protected void composeNutritionOrderElements(NutritionOrder element) throws IOException { 30780 composeDomainResourceElements(element); 30781 if (element.hasIdentifier()) { 30782 for (Identifier e : element.getIdentifier()) 30783 composeIdentifier("identifier", e); 30784 } 30785 if (element.hasStatusElement()) 30786 composeEnumeration("status", element.getStatusElement(), new NutritionOrder.NutritionOrderStatusEnumFactory()); 30787 if (element.hasPatient()) { 30788 composeReference("patient", element.getPatient()); 30789 } 30790 if (element.hasEncounter()) { 30791 composeReference("encounter", element.getEncounter()); 30792 } 30793 if (element.hasDateTimeElement()) { 30794 composeDateTime("dateTime", element.getDateTimeElement()); 30795 } 30796 if (element.hasOrderer()) { 30797 composeReference("orderer", element.getOrderer()); 30798 } 30799 if (element.hasAllergyIntolerance()) { 30800 for (Reference e : element.getAllergyIntolerance()) 30801 composeReference("allergyIntolerance", e); 30802 } 30803 if (element.hasFoodPreferenceModifier()) { 30804 for (CodeableConcept e : element.getFoodPreferenceModifier()) 30805 composeCodeableConcept("foodPreferenceModifier", e); 30806 } 30807 if (element.hasExcludeFoodModifier()) { 30808 for (CodeableConcept e : element.getExcludeFoodModifier()) 30809 composeCodeableConcept("excludeFoodModifier", e); 30810 } 30811 if (element.hasOralDiet()) { 30812 composeNutritionOrderNutritionOrderOralDietComponent("oralDiet", element.getOralDiet()); 30813 } 30814 if (element.hasSupplement()) { 30815 for (NutritionOrder.NutritionOrderSupplementComponent e : element.getSupplement()) 30816 composeNutritionOrderNutritionOrderSupplementComponent("supplement", e); 30817 } 30818 if (element.hasEnteralFormula()) { 30819 composeNutritionOrderNutritionOrderEnteralFormulaComponent("enteralFormula", element.getEnteralFormula()); 30820 } 30821 } 30822 30823 protected void composeNutritionOrderNutritionOrderOralDietComponent(String name, NutritionOrder.NutritionOrderOralDietComponent element) throws IOException { 30824 if (element != null) { 30825 composeElementAttributes(element); 30826 xml.enter(FHIR_NS, name); 30827 composeNutritionOrderNutritionOrderOralDietComponentElements(element); 30828 composeElementClose(element); 30829 xml.exit(FHIR_NS, name); 30830 } 30831 } 30832 30833 protected void composeNutritionOrderNutritionOrderOralDietComponentElements(NutritionOrder.NutritionOrderOralDietComponent element) throws IOException { 30834 composeBackboneElements(element); 30835 if (element.hasType()) { 30836 for (CodeableConcept e : element.getType()) 30837 composeCodeableConcept("type", e); 30838 } 30839 if (element.hasSchedule()) { 30840 for (Timing e : element.getSchedule()) 30841 composeTiming("schedule", e); 30842 } 30843 if (element.hasNutrient()) { 30844 for (NutritionOrder.NutritionOrderOralDietNutrientComponent e : element.getNutrient()) 30845 composeNutritionOrderNutritionOrderOralDietNutrientComponent("nutrient", e); 30846 } 30847 if (element.hasTexture()) { 30848 for (NutritionOrder.NutritionOrderOralDietTextureComponent e : element.getTexture()) 30849 composeNutritionOrderNutritionOrderOralDietTextureComponent("texture", e); 30850 } 30851 if (element.hasFluidConsistencyType()) { 30852 for (CodeableConcept e : element.getFluidConsistencyType()) 30853 composeCodeableConcept("fluidConsistencyType", e); 30854 } 30855 if (element.hasInstructionElement()) { 30856 composeString("instruction", element.getInstructionElement()); 30857 } 30858 } 30859 30860 protected void composeNutritionOrderNutritionOrderOralDietNutrientComponent(String name, NutritionOrder.NutritionOrderOralDietNutrientComponent element) throws IOException { 30861 if (element != null) { 30862 composeElementAttributes(element); 30863 xml.enter(FHIR_NS, name); 30864 composeNutritionOrderNutritionOrderOralDietNutrientComponentElements(element); 30865 composeElementClose(element); 30866 xml.exit(FHIR_NS, name); 30867 } 30868 } 30869 30870 protected void composeNutritionOrderNutritionOrderOralDietNutrientComponentElements(NutritionOrder.NutritionOrderOralDietNutrientComponent element) throws IOException { 30871 composeBackboneElements(element); 30872 if (element.hasModifier()) { 30873 composeCodeableConcept("modifier", element.getModifier()); 30874 } 30875 if (element.hasAmount()) { 30876 composeSimpleQuantity("amount", element.getAmount()); 30877 } 30878 } 30879 30880 protected void composeNutritionOrderNutritionOrderOralDietTextureComponent(String name, NutritionOrder.NutritionOrderOralDietTextureComponent element) throws IOException { 30881 if (element != null) { 30882 composeElementAttributes(element); 30883 xml.enter(FHIR_NS, name); 30884 composeNutritionOrderNutritionOrderOralDietTextureComponentElements(element); 30885 composeElementClose(element); 30886 xml.exit(FHIR_NS, name); 30887 } 30888 } 30889 30890 protected void composeNutritionOrderNutritionOrderOralDietTextureComponentElements(NutritionOrder.NutritionOrderOralDietTextureComponent element) throws IOException { 30891 composeBackboneElements(element); 30892 if (element.hasModifier()) { 30893 composeCodeableConcept("modifier", element.getModifier()); 30894 } 30895 if (element.hasFoodType()) { 30896 composeCodeableConcept("foodType", element.getFoodType()); 30897 } 30898 } 30899 30900 protected void composeNutritionOrderNutritionOrderSupplementComponent(String name, NutritionOrder.NutritionOrderSupplementComponent element) throws IOException { 30901 if (element != null) { 30902 composeElementAttributes(element); 30903 xml.enter(FHIR_NS, name); 30904 composeNutritionOrderNutritionOrderSupplementComponentElements(element); 30905 composeElementClose(element); 30906 xml.exit(FHIR_NS, name); 30907 } 30908 } 30909 30910 protected void composeNutritionOrderNutritionOrderSupplementComponentElements(NutritionOrder.NutritionOrderSupplementComponent element) throws IOException { 30911 composeBackboneElements(element); 30912 if (element.hasType()) { 30913 composeCodeableConcept("type", element.getType()); 30914 } 30915 if (element.hasProductNameElement()) { 30916 composeString("productName", element.getProductNameElement()); 30917 } 30918 if (element.hasSchedule()) { 30919 for (Timing e : element.getSchedule()) 30920 composeTiming("schedule", e); 30921 } 30922 if (element.hasQuantity()) { 30923 composeSimpleQuantity("quantity", element.getQuantity()); 30924 } 30925 if (element.hasInstructionElement()) { 30926 composeString("instruction", element.getInstructionElement()); 30927 } 30928 } 30929 30930 protected void composeNutritionOrderNutritionOrderEnteralFormulaComponent(String name, NutritionOrder.NutritionOrderEnteralFormulaComponent element) throws IOException { 30931 if (element != null) { 30932 composeElementAttributes(element); 30933 xml.enter(FHIR_NS, name); 30934 composeNutritionOrderNutritionOrderEnteralFormulaComponentElements(element); 30935 composeElementClose(element); 30936 xml.exit(FHIR_NS, name); 30937 } 30938 } 30939 30940 protected void composeNutritionOrderNutritionOrderEnteralFormulaComponentElements(NutritionOrder.NutritionOrderEnteralFormulaComponent element) throws IOException { 30941 composeBackboneElements(element); 30942 if (element.hasBaseFormulaType()) { 30943 composeCodeableConcept("baseFormulaType", element.getBaseFormulaType()); 30944 } 30945 if (element.hasBaseFormulaProductNameElement()) { 30946 composeString("baseFormulaProductName", element.getBaseFormulaProductNameElement()); 30947 } 30948 if (element.hasAdditiveType()) { 30949 composeCodeableConcept("additiveType", element.getAdditiveType()); 30950 } 30951 if (element.hasAdditiveProductNameElement()) { 30952 composeString("additiveProductName", element.getAdditiveProductNameElement()); 30953 } 30954 if (element.hasCaloricDensity()) { 30955 composeSimpleQuantity("caloricDensity", element.getCaloricDensity()); 30956 } 30957 if (element.hasRouteofAdministration()) { 30958 composeCodeableConcept("routeofAdministration", element.getRouteofAdministration()); 30959 } 30960 if (element.hasAdministration()) { 30961 for (NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent e : element.getAdministration()) 30962 composeNutritionOrderNutritionOrderEnteralFormulaAdministrationComponent("administration", e); 30963 } 30964 if (element.hasMaxVolumeToDeliver()) { 30965 composeSimpleQuantity("maxVolumeToDeliver", element.getMaxVolumeToDeliver()); 30966 } 30967 if (element.hasAdministrationInstructionElement()) { 30968 composeString("administrationInstruction", element.getAdministrationInstructionElement()); 30969 } 30970 } 30971 30972 protected void composeNutritionOrderNutritionOrderEnteralFormulaAdministrationComponent(String name, NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent element) throws IOException { 30973 if (element != null) { 30974 composeElementAttributes(element); 30975 xml.enter(FHIR_NS, name); 30976 composeNutritionOrderNutritionOrderEnteralFormulaAdministrationComponentElements(element); 30977 composeElementClose(element); 30978 xml.exit(FHIR_NS, name); 30979 } 30980 } 30981 30982 protected void composeNutritionOrderNutritionOrderEnteralFormulaAdministrationComponentElements(NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent element) throws IOException { 30983 composeBackboneElements(element); 30984 if (element.hasSchedule()) { 30985 composeTiming("schedule", element.getSchedule()); 30986 } 30987 if (element.hasQuantity()) { 30988 composeSimpleQuantity("quantity", element.getQuantity()); 30989 } 30990 if (element.hasRate()) { 30991 composeType("rate", element.getRate()); 30992 } } 30993 30994 protected void composeObservation(String name, Observation element) throws IOException { 30995 if (element != null) { 30996 composeDomainResourceAttributes(element); 30997 xml.enter(FHIR_NS, name); 30998 composeObservationElements(element); 30999 composeElementClose(element); 31000 xml.exit(FHIR_NS, name); 31001 } 31002 } 31003 31004 protected void composeObservationElements(Observation element) throws IOException { 31005 composeDomainResourceElements(element); 31006 if (element.hasIdentifier()) { 31007 for (Identifier e : element.getIdentifier()) 31008 composeIdentifier("identifier", e); 31009 } 31010 if (element.hasBasedOn()) { 31011 for (Reference e : element.getBasedOn()) 31012 composeReference("basedOn", e); 31013 } 31014 if (element.hasStatusElement()) 31015 composeEnumeration("status", element.getStatusElement(), new Observation.ObservationStatusEnumFactory()); 31016 if (element.hasCategory()) { 31017 for (CodeableConcept e : element.getCategory()) 31018 composeCodeableConcept("category", e); 31019 } 31020 if (element.hasCode()) { 31021 composeCodeableConcept("code", element.getCode()); 31022 } 31023 if (element.hasSubject()) { 31024 composeReference("subject", element.getSubject()); 31025 } 31026 if (element.hasContext()) { 31027 composeReference("context", element.getContext()); 31028 } 31029 if (element.hasEffective()) { 31030 composeType("effective", element.getEffective()); 31031 } if (element.hasIssuedElement()) { 31032 composeInstant("issued", element.getIssuedElement()); 31033 } 31034 if (element.hasPerformer()) { 31035 for (Reference e : element.getPerformer()) 31036 composeReference("performer", e); 31037 } 31038 if (element.hasValue()) { 31039 composeType("value", element.getValue()); 31040 } if (element.hasDataAbsentReason()) { 31041 composeCodeableConcept("dataAbsentReason", element.getDataAbsentReason()); 31042 } 31043 if (element.hasInterpretation()) { 31044 composeCodeableConcept("interpretation", element.getInterpretation()); 31045 } 31046 if (element.hasCommentElement()) { 31047 composeString("comment", element.getCommentElement()); 31048 } 31049 if (element.hasBodySite()) { 31050 composeCodeableConcept("bodySite", element.getBodySite()); 31051 } 31052 if (element.hasMethod()) { 31053 composeCodeableConcept("method", element.getMethod()); 31054 } 31055 if (element.hasSpecimen()) { 31056 composeReference("specimen", element.getSpecimen()); 31057 } 31058 if (element.hasDevice()) { 31059 composeReference("device", element.getDevice()); 31060 } 31061 if (element.hasReferenceRange()) { 31062 for (Observation.ObservationReferenceRangeComponent e : element.getReferenceRange()) 31063 composeObservationObservationReferenceRangeComponent("referenceRange", e); 31064 } 31065 if (element.hasRelated()) { 31066 for (Observation.ObservationRelatedComponent e : element.getRelated()) 31067 composeObservationObservationRelatedComponent("related", e); 31068 } 31069 if (element.hasComponent()) { 31070 for (Observation.ObservationComponentComponent e : element.getComponent()) 31071 composeObservationObservationComponentComponent("component", e); 31072 } 31073 } 31074 31075 protected void composeObservationObservationReferenceRangeComponent(String name, Observation.ObservationReferenceRangeComponent element) throws IOException { 31076 if (element != null) { 31077 composeElementAttributes(element); 31078 xml.enter(FHIR_NS, name); 31079 composeObservationObservationReferenceRangeComponentElements(element); 31080 composeElementClose(element); 31081 xml.exit(FHIR_NS, name); 31082 } 31083 } 31084 31085 protected void composeObservationObservationReferenceRangeComponentElements(Observation.ObservationReferenceRangeComponent element) throws IOException { 31086 composeBackboneElements(element); 31087 if (element.hasLow()) { 31088 composeSimpleQuantity("low", element.getLow()); 31089 } 31090 if (element.hasHigh()) { 31091 composeSimpleQuantity("high", element.getHigh()); 31092 } 31093 if (element.hasType()) { 31094 composeCodeableConcept("type", element.getType()); 31095 } 31096 if (element.hasAppliesTo()) { 31097 for (CodeableConcept e : element.getAppliesTo()) 31098 composeCodeableConcept("appliesTo", e); 31099 } 31100 if (element.hasAge()) { 31101 composeRange("age", element.getAge()); 31102 } 31103 if (element.hasTextElement()) { 31104 composeString("text", element.getTextElement()); 31105 } 31106 } 31107 31108 protected void composeObservationObservationRelatedComponent(String name, Observation.ObservationRelatedComponent element) throws IOException { 31109 if (element != null) { 31110 composeElementAttributes(element); 31111 xml.enter(FHIR_NS, name); 31112 composeObservationObservationRelatedComponentElements(element); 31113 composeElementClose(element); 31114 xml.exit(FHIR_NS, name); 31115 } 31116 } 31117 31118 protected void composeObservationObservationRelatedComponentElements(Observation.ObservationRelatedComponent element) throws IOException { 31119 composeBackboneElements(element); 31120 if (element.hasTypeElement()) 31121 composeEnumeration("type", element.getTypeElement(), new Observation.ObservationRelationshipTypeEnumFactory()); 31122 if (element.hasTarget()) { 31123 composeReference("target", element.getTarget()); 31124 } 31125 } 31126 31127 protected void composeObservationObservationComponentComponent(String name, Observation.ObservationComponentComponent element) throws IOException { 31128 if (element != null) { 31129 composeElementAttributes(element); 31130 xml.enter(FHIR_NS, name); 31131 composeObservationObservationComponentComponentElements(element); 31132 composeElementClose(element); 31133 xml.exit(FHIR_NS, name); 31134 } 31135 } 31136 31137 protected void composeObservationObservationComponentComponentElements(Observation.ObservationComponentComponent element) throws IOException { 31138 composeBackboneElements(element); 31139 if (element.hasCode()) { 31140 composeCodeableConcept("code", element.getCode()); 31141 } 31142 if (element.hasValue()) { 31143 composeType("value", element.getValue()); 31144 } if (element.hasDataAbsentReason()) { 31145 composeCodeableConcept("dataAbsentReason", element.getDataAbsentReason()); 31146 } 31147 if (element.hasInterpretation()) { 31148 composeCodeableConcept("interpretation", element.getInterpretation()); 31149 } 31150 if (element.hasReferenceRange()) { 31151 for (Observation.ObservationReferenceRangeComponent e : element.getReferenceRange()) 31152 composeObservationObservationReferenceRangeComponent("referenceRange", e); 31153 } 31154 } 31155 31156 protected void composeOperationDefinition(String name, OperationDefinition element) throws IOException { 31157 if (element != null) { 31158 composeDomainResourceAttributes(element); 31159 xml.enter(FHIR_NS, name); 31160 composeOperationDefinitionElements(element); 31161 composeElementClose(element); 31162 xml.exit(FHIR_NS, name); 31163 } 31164 } 31165 31166 protected void composeOperationDefinitionElements(OperationDefinition element) throws IOException { 31167 composeDomainResourceElements(element); 31168 if (element.hasUrlElement()) { 31169 composeUri("url", element.getUrlElement()); 31170 } 31171 if (element.hasVersionElement()) { 31172 composeString("version", element.getVersionElement()); 31173 } 31174 if (element.hasNameElement()) { 31175 composeString("name", element.getNameElement()); 31176 } 31177 if (element.hasStatusElement()) 31178 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 31179 if (element.hasKindElement()) 31180 composeEnumeration("kind", element.getKindElement(), new OperationDefinition.OperationKindEnumFactory()); 31181 if (element.hasExperimentalElement()) { 31182 composeBoolean("experimental", element.getExperimentalElement()); 31183 } 31184 if (element.hasDateElement()) { 31185 composeDateTime("date", element.getDateElement()); 31186 } 31187 if (element.hasPublisherElement()) { 31188 composeString("publisher", element.getPublisherElement()); 31189 } 31190 if (element.hasContact()) { 31191 for (ContactDetail e : element.getContact()) 31192 composeContactDetail("contact", e); 31193 } 31194 if (element.hasDescriptionElement()) { 31195 composeMarkdown("description", element.getDescriptionElement()); 31196 } 31197 if (element.hasUseContext()) { 31198 for (UsageContext e : element.getUseContext()) 31199 composeUsageContext("useContext", e); 31200 } 31201 if (element.hasJurisdiction()) { 31202 for (CodeableConcept e : element.getJurisdiction()) 31203 composeCodeableConcept("jurisdiction", e); 31204 } 31205 if (element.hasPurposeElement()) { 31206 composeMarkdown("purpose", element.getPurposeElement()); 31207 } 31208 if (element.hasIdempotentElement()) { 31209 composeBoolean("idempotent", element.getIdempotentElement()); 31210 } 31211 if (element.hasCodeElement()) { 31212 composeCode("code", element.getCodeElement()); 31213 } 31214 if (element.hasCommentElement()) { 31215 composeString("comment", element.getCommentElement()); 31216 } 31217 if (element.hasBase()) { 31218 composeReference("base", element.getBase()); 31219 } 31220 if (element.hasResource()) { 31221 for (CodeType e : element.getResource()) 31222 composeCode("resource", e); 31223 } 31224 if (element.hasSystemElement()) { 31225 composeBoolean("system", element.getSystemElement()); 31226 } 31227 if (element.hasTypeElement()) { 31228 composeBoolean("type", element.getTypeElement()); 31229 } 31230 if (element.hasInstanceElement()) { 31231 composeBoolean("instance", element.getInstanceElement()); 31232 } 31233 if (element.hasParameter()) { 31234 for (OperationDefinition.OperationDefinitionParameterComponent e : element.getParameter()) 31235 composeOperationDefinitionOperationDefinitionParameterComponent("parameter", e); 31236 } 31237 if (element.hasOverload()) { 31238 for (OperationDefinition.OperationDefinitionOverloadComponent e : element.getOverload()) 31239 composeOperationDefinitionOperationDefinitionOverloadComponent("overload", e); 31240 } 31241 } 31242 31243 protected void composeOperationDefinitionOperationDefinitionParameterComponent(String name, OperationDefinition.OperationDefinitionParameterComponent element) throws IOException { 31244 if (element != null) { 31245 composeElementAttributes(element); 31246 xml.enter(FHIR_NS, name); 31247 composeOperationDefinitionOperationDefinitionParameterComponentElements(element); 31248 composeElementClose(element); 31249 xml.exit(FHIR_NS, name); 31250 } 31251 } 31252 31253 protected void composeOperationDefinitionOperationDefinitionParameterComponentElements(OperationDefinition.OperationDefinitionParameterComponent element) throws IOException { 31254 composeBackboneElements(element); 31255 if (element.hasNameElement()) { 31256 composeCode("name", element.getNameElement()); 31257 } 31258 if (element.hasUseElement()) 31259 composeEnumeration("use", element.getUseElement(), new OperationDefinition.OperationParameterUseEnumFactory()); 31260 if (element.hasMinElement()) { 31261 composeInteger("min", element.getMinElement()); 31262 } 31263 if (element.hasMaxElement()) { 31264 composeString("max", element.getMaxElement()); 31265 } 31266 if (element.hasDocumentationElement()) { 31267 composeString("documentation", element.getDocumentationElement()); 31268 } 31269 if (element.hasTypeElement()) { 31270 composeCode("type", element.getTypeElement()); 31271 } 31272 if (element.hasSearchTypeElement()) 31273 composeEnumeration("searchType", element.getSearchTypeElement(), new Enumerations.SearchParamTypeEnumFactory()); 31274 if (element.hasProfile()) { 31275 composeReference("profile", element.getProfile()); 31276 } 31277 if (element.hasBinding()) { 31278 composeOperationDefinitionOperationDefinitionParameterBindingComponent("binding", element.getBinding()); 31279 } 31280 if (element.hasPart()) { 31281 for (OperationDefinition.OperationDefinitionParameterComponent e : element.getPart()) 31282 composeOperationDefinitionOperationDefinitionParameterComponent("part", e); 31283 } 31284 } 31285 31286 protected void composeOperationDefinitionOperationDefinitionParameterBindingComponent(String name, OperationDefinition.OperationDefinitionParameterBindingComponent element) throws IOException { 31287 if (element != null) { 31288 composeElementAttributes(element); 31289 xml.enter(FHIR_NS, name); 31290 composeOperationDefinitionOperationDefinitionParameterBindingComponentElements(element); 31291 composeElementClose(element); 31292 xml.exit(FHIR_NS, name); 31293 } 31294 } 31295 31296 protected void composeOperationDefinitionOperationDefinitionParameterBindingComponentElements(OperationDefinition.OperationDefinitionParameterBindingComponent element) throws IOException { 31297 composeBackboneElements(element); 31298 if (element.hasStrengthElement()) 31299 composeEnumeration("strength", element.getStrengthElement(), new Enumerations.BindingStrengthEnumFactory()); 31300 if (element.hasValueSet()) { 31301 composeType("valueSet", element.getValueSet()); 31302 } } 31303 31304 protected void composeOperationDefinitionOperationDefinitionOverloadComponent(String name, OperationDefinition.OperationDefinitionOverloadComponent element) throws IOException { 31305 if (element != null) { 31306 composeElementAttributes(element); 31307 xml.enter(FHIR_NS, name); 31308 composeOperationDefinitionOperationDefinitionOverloadComponentElements(element); 31309 composeElementClose(element); 31310 xml.exit(FHIR_NS, name); 31311 } 31312 } 31313 31314 protected void composeOperationDefinitionOperationDefinitionOverloadComponentElements(OperationDefinition.OperationDefinitionOverloadComponent element) throws IOException { 31315 composeBackboneElements(element); 31316 if (element.hasParameterName()) { 31317 for (StringType e : element.getParameterName()) 31318 composeString("parameterName", e); 31319 } 31320 if (element.hasCommentElement()) { 31321 composeString("comment", element.getCommentElement()); 31322 } 31323 } 31324 31325 protected void composeOperationOutcome(String name, OperationOutcome element) throws IOException { 31326 if (element != null) { 31327 composeDomainResourceAttributes(element); 31328 xml.enter(FHIR_NS, name); 31329 composeOperationOutcomeElements(element); 31330 composeElementClose(element); 31331 xml.exit(FHIR_NS, name); 31332 } 31333 } 31334 31335 protected void composeOperationOutcomeElements(OperationOutcome element) throws IOException { 31336 composeDomainResourceElements(element); 31337 if (element.hasIssue()) { 31338 for (OperationOutcome.OperationOutcomeIssueComponent e : element.getIssue()) 31339 composeOperationOutcomeOperationOutcomeIssueComponent("issue", e); 31340 } 31341 } 31342 31343 protected void composeOperationOutcomeOperationOutcomeIssueComponent(String name, OperationOutcome.OperationOutcomeIssueComponent element) throws IOException { 31344 if (element != null) { 31345 composeElementAttributes(element); 31346 xml.enter(FHIR_NS, name); 31347 composeOperationOutcomeOperationOutcomeIssueComponentElements(element); 31348 composeElementClose(element); 31349 xml.exit(FHIR_NS, name); 31350 } 31351 } 31352 31353 protected void composeOperationOutcomeOperationOutcomeIssueComponentElements(OperationOutcome.OperationOutcomeIssueComponent element) throws IOException { 31354 composeBackboneElements(element); 31355 if (element.hasSeverityElement()) 31356 composeEnumeration("severity", element.getSeverityElement(), new OperationOutcome.IssueSeverityEnumFactory()); 31357 if (element.hasCodeElement()) 31358 composeEnumeration("code", element.getCodeElement(), new OperationOutcome.IssueTypeEnumFactory()); 31359 if (element.hasDetails()) { 31360 composeCodeableConcept("details", element.getDetails()); 31361 } 31362 if (element.hasDiagnosticsElement()) { 31363 composeString("diagnostics", element.getDiagnosticsElement()); 31364 } 31365 if (element.hasLocation()) { 31366 for (StringType e : element.getLocation()) 31367 composeString("location", e); 31368 } 31369 if (element.hasExpression()) { 31370 for (StringType e : element.getExpression()) 31371 composeString("expression", e); 31372 } 31373 } 31374 31375 protected void composeOrganization(String name, Organization element) throws IOException { 31376 if (element != null) { 31377 composeDomainResourceAttributes(element); 31378 xml.enter(FHIR_NS, name); 31379 composeOrganizationElements(element); 31380 composeElementClose(element); 31381 xml.exit(FHIR_NS, name); 31382 } 31383 } 31384 31385 protected void composeOrganizationElements(Organization element) throws IOException { 31386 composeDomainResourceElements(element); 31387 if (element.hasIdentifier()) { 31388 for (Identifier e : element.getIdentifier()) 31389 composeIdentifier("identifier", e); 31390 } 31391 if (element.hasActiveElement()) { 31392 composeBoolean("active", element.getActiveElement()); 31393 } 31394 if (element.hasType()) { 31395 for (CodeableConcept e : element.getType()) 31396 composeCodeableConcept("type", e); 31397 } 31398 if (element.hasNameElement()) { 31399 composeString("name", element.getNameElement()); 31400 } 31401 if (element.hasAlias()) { 31402 for (StringType e : element.getAlias()) 31403 composeString("alias", e); 31404 } 31405 if (element.hasTelecom()) { 31406 for (ContactPoint e : element.getTelecom()) 31407 composeContactPoint("telecom", e); 31408 } 31409 if (element.hasAddress()) { 31410 for (Address e : element.getAddress()) 31411 composeAddress("address", e); 31412 } 31413 if (element.hasPartOf()) { 31414 composeReference("partOf", element.getPartOf()); 31415 } 31416 if (element.hasContact()) { 31417 for (Organization.OrganizationContactComponent e : element.getContact()) 31418 composeOrganizationOrganizationContactComponent("contact", e); 31419 } 31420 if (element.hasEndpoint()) { 31421 for (Reference e : element.getEndpoint()) 31422 composeReference("endpoint", e); 31423 } 31424 } 31425 31426 protected void composeOrganizationOrganizationContactComponent(String name, Organization.OrganizationContactComponent element) throws IOException { 31427 if (element != null) { 31428 composeElementAttributes(element); 31429 xml.enter(FHIR_NS, name); 31430 composeOrganizationOrganizationContactComponentElements(element); 31431 composeElementClose(element); 31432 xml.exit(FHIR_NS, name); 31433 } 31434 } 31435 31436 protected void composeOrganizationOrganizationContactComponentElements(Organization.OrganizationContactComponent element) throws IOException { 31437 composeBackboneElements(element); 31438 if (element.hasPurpose()) { 31439 composeCodeableConcept("purpose", element.getPurpose()); 31440 } 31441 if (element.hasName()) { 31442 composeHumanName("name", element.getName()); 31443 } 31444 if (element.hasTelecom()) { 31445 for (ContactPoint e : element.getTelecom()) 31446 composeContactPoint("telecom", e); 31447 } 31448 if (element.hasAddress()) { 31449 composeAddress("address", element.getAddress()); 31450 } 31451 } 31452 31453 protected void composePatient(String name, Patient element) throws IOException { 31454 if (element != null) { 31455 composeDomainResourceAttributes(element); 31456 xml.enter(FHIR_NS, name); 31457 composePatientElements(element); 31458 composeElementClose(element); 31459 xml.exit(FHIR_NS, name); 31460 } 31461 } 31462 31463 protected void composePatientElements(Patient element) throws IOException { 31464 composeDomainResourceElements(element); 31465 if (element.hasIdentifier()) { 31466 for (Identifier e : element.getIdentifier()) 31467 composeIdentifier("identifier", e); 31468 } 31469 if (element.hasActiveElement()) { 31470 composeBoolean("active", element.getActiveElement()); 31471 } 31472 if (element.hasName()) { 31473 for (HumanName e : element.getName()) 31474 composeHumanName("name", e); 31475 } 31476 if (element.hasTelecom()) { 31477 for (ContactPoint e : element.getTelecom()) 31478 composeContactPoint("telecom", e); 31479 } 31480 if (element.hasGenderElement()) 31481 composeEnumeration("gender", element.getGenderElement(), new Enumerations.AdministrativeGenderEnumFactory()); 31482 if (element.hasBirthDateElement()) { 31483 composeDate("birthDate", element.getBirthDateElement()); 31484 } 31485 if (element.hasDeceased()) { 31486 composeType("deceased", element.getDeceased()); 31487 } if (element.hasAddress()) { 31488 for (Address e : element.getAddress()) 31489 composeAddress("address", e); 31490 } 31491 if (element.hasMaritalStatus()) { 31492 composeCodeableConcept("maritalStatus", element.getMaritalStatus()); 31493 } 31494 if (element.hasMultipleBirth()) { 31495 composeType("multipleBirth", element.getMultipleBirth()); 31496 } if (element.hasPhoto()) { 31497 for (Attachment e : element.getPhoto()) 31498 composeAttachment("photo", e); 31499 } 31500 if (element.hasContact()) { 31501 for (Patient.ContactComponent e : element.getContact()) 31502 composePatientContactComponent("contact", e); 31503 } 31504 if (element.hasAnimal()) { 31505 composePatientAnimalComponent("animal", element.getAnimal()); 31506 } 31507 if (element.hasCommunication()) { 31508 for (Patient.PatientCommunicationComponent e : element.getCommunication()) 31509 composePatientPatientCommunicationComponent("communication", e); 31510 } 31511 if (element.hasGeneralPractitioner()) { 31512 for (Reference e : element.getGeneralPractitioner()) 31513 composeReference("generalPractitioner", e); 31514 } 31515 if (element.hasManagingOrganization()) { 31516 composeReference("managingOrganization", element.getManagingOrganization()); 31517 } 31518 if (element.hasLink()) { 31519 for (Patient.PatientLinkComponent e : element.getLink()) 31520 composePatientPatientLinkComponent("link", e); 31521 } 31522 } 31523 31524 protected void composePatientContactComponent(String name, Patient.ContactComponent element) throws IOException { 31525 if (element != null) { 31526 composeElementAttributes(element); 31527 xml.enter(FHIR_NS, name); 31528 composePatientContactComponentElements(element); 31529 composeElementClose(element); 31530 xml.exit(FHIR_NS, name); 31531 } 31532 } 31533 31534 protected void composePatientContactComponentElements(Patient.ContactComponent element) throws IOException { 31535 composeBackboneElements(element); 31536 if (element.hasRelationship()) { 31537 for (CodeableConcept e : element.getRelationship()) 31538 composeCodeableConcept("relationship", e); 31539 } 31540 if (element.hasName()) { 31541 composeHumanName("name", element.getName()); 31542 } 31543 if (element.hasTelecom()) { 31544 for (ContactPoint e : element.getTelecom()) 31545 composeContactPoint("telecom", e); 31546 } 31547 if (element.hasAddress()) { 31548 composeAddress("address", element.getAddress()); 31549 } 31550 if (element.hasGenderElement()) 31551 composeEnumeration("gender", element.getGenderElement(), new Enumerations.AdministrativeGenderEnumFactory()); 31552 if (element.hasOrganization()) { 31553 composeReference("organization", element.getOrganization()); 31554 } 31555 if (element.hasPeriod()) { 31556 composePeriod("period", element.getPeriod()); 31557 } 31558 } 31559 31560 protected void composePatientAnimalComponent(String name, Patient.AnimalComponent element) throws IOException { 31561 if (element != null) { 31562 composeElementAttributes(element); 31563 xml.enter(FHIR_NS, name); 31564 composePatientAnimalComponentElements(element); 31565 composeElementClose(element); 31566 xml.exit(FHIR_NS, name); 31567 } 31568 } 31569 31570 protected void composePatientAnimalComponentElements(Patient.AnimalComponent element) throws IOException { 31571 composeBackboneElements(element); 31572 if (element.hasSpecies()) { 31573 composeCodeableConcept("species", element.getSpecies()); 31574 } 31575 if (element.hasBreed()) { 31576 composeCodeableConcept("breed", element.getBreed()); 31577 } 31578 if (element.hasGenderStatus()) { 31579 composeCodeableConcept("genderStatus", element.getGenderStatus()); 31580 } 31581 } 31582 31583 protected void composePatientPatientCommunicationComponent(String name, Patient.PatientCommunicationComponent element) throws IOException { 31584 if (element != null) { 31585 composeElementAttributes(element); 31586 xml.enter(FHIR_NS, name); 31587 composePatientPatientCommunicationComponentElements(element); 31588 composeElementClose(element); 31589 xml.exit(FHIR_NS, name); 31590 } 31591 } 31592 31593 protected void composePatientPatientCommunicationComponentElements(Patient.PatientCommunicationComponent element) throws IOException { 31594 composeBackboneElements(element); 31595 if (element.hasLanguage()) { 31596 composeCodeableConcept("language", element.getLanguage()); 31597 } 31598 if (element.hasPreferredElement()) { 31599 composeBoolean("preferred", element.getPreferredElement()); 31600 } 31601 } 31602 31603 protected void composePatientPatientLinkComponent(String name, Patient.PatientLinkComponent element) throws IOException { 31604 if (element != null) { 31605 composeElementAttributes(element); 31606 xml.enter(FHIR_NS, name); 31607 composePatientPatientLinkComponentElements(element); 31608 composeElementClose(element); 31609 xml.exit(FHIR_NS, name); 31610 } 31611 } 31612 31613 protected void composePatientPatientLinkComponentElements(Patient.PatientLinkComponent element) throws IOException { 31614 composeBackboneElements(element); 31615 if (element.hasOther()) { 31616 composeReference("other", element.getOther()); 31617 } 31618 if (element.hasTypeElement()) 31619 composeEnumeration("type", element.getTypeElement(), new Patient.LinkTypeEnumFactory()); 31620 } 31621 31622 protected void composePaymentNotice(String name, PaymentNotice element) throws IOException { 31623 if (element != null) { 31624 composeDomainResourceAttributes(element); 31625 xml.enter(FHIR_NS, name); 31626 composePaymentNoticeElements(element); 31627 composeElementClose(element); 31628 xml.exit(FHIR_NS, name); 31629 } 31630 } 31631 31632 protected void composePaymentNoticeElements(PaymentNotice element) throws IOException { 31633 composeDomainResourceElements(element); 31634 if (element.hasIdentifier()) { 31635 for (Identifier e : element.getIdentifier()) 31636 composeIdentifier("identifier", e); 31637 } 31638 if (element.hasStatusElement()) 31639 composeEnumeration("status", element.getStatusElement(), new PaymentNotice.PaymentNoticeStatusEnumFactory()); 31640 if (element.hasRequest()) { 31641 composeReference("request", element.getRequest()); 31642 } 31643 if (element.hasResponse()) { 31644 composeReference("response", element.getResponse()); 31645 } 31646 if (element.hasStatusDateElement()) { 31647 composeDate("statusDate", element.getStatusDateElement()); 31648 } 31649 if (element.hasCreatedElement()) { 31650 composeDateTime("created", element.getCreatedElement()); 31651 } 31652 if (element.hasTarget()) { 31653 composeReference("target", element.getTarget()); 31654 } 31655 if (element.hasProvider()) { 31656 composeReference("provider", element.getProvider()); 31657 } 31658 if (element.hasOrganization()) { 31659 composeReference("organization", element.getOrganization()); 31660 } 31661 if (element.hasPaymentStatus()) { 31662 composeCodeableConcept("paymentStatus", element.getPaymentStatus()); 31663 } 31664 } 31665 31666 protected void composePaymentReconciliation(String name, PaymentReconciliation element) throws IOException { 31667 if (element != null) { 31668 composeDomainResourceAttributes(element); 31669 xml.enter(FHIR_NS, name); 31670 composePaymentReconciliationElements(element); 31671 composeElementClose(element); 31672 xml.exit(FHIR_NS, name); 31673 } 31674 } 31675 31676 protected void composePaymentReconciliationElements(PaymentReconciliation element) throws IOException { 31677 composeDomainResourceElements(element); 31678 if (element.hasIdentifier()) { 31679 for (Identifier e : element.getIdentifier()) 31680 composeIdentifier("identifier", e); 31681 } 31682 if (element.hasStatusElement()) 31683 composeEnumeration("status", element.getStatusElement(), new PaymentReconciliation.PaymentReconciliationStatusEnumFactory()); 31684 if (element.hasPeriod()) { 31685 composePeriod("period", element.getPeriod()); 31686 } 31687 if (element.hasCreatedElement()) { 31688 composeDateTime("created", element.getCreatedElement()); 31689 } 31690 if (element.hasOrganization()) { 31691 composeReference("organization", element.getOrganization()); 31692 } 31693 if (element.hasRequest()) { 31694 composeReference("request", element.getRequest()); 31695 } 31696 if (element.hasOutcome()) { 31697 composeCodeableConcept("outcome", element.getOutcome()); 31698 } 31699 if (element.hasDispositionElement()) { 31700 composeString("disposition", element.getDispositionElement()); 31701 } 31702 if (element.hasRequestProvider()) { 31703 composeReference("requestProvider", element.getRequestProvider()); 31704 } 31705 if (element.hasRequestOrganization()) { 31706 composeReference("requestOrganization", element.getRequestOrganization()); 31707 } 31708 if (element.hasDetail()) { 31709 for (PaymentReconciliation.DetailsComponent e : element.getDetail()) 31710 composePaymentReconciliationDetailsComponent("detail", e); 31711 } 31712 if (element.hasForm()) { 31713 composeCodeableConcept("form", element.getForm()); 31714 } 31715 if (element.hasTotal()) { 31716 composeMoney("total", element.getTotal()); 31717 } 31718 if (element.hasProcessNote()) { 31719 for (PaymentReconciliation.NotesComponent e : element.getProcessNote()) 31720 composePaymentReconciliationNotesComponent("processNote", e); 31721 } 31722 } 31723 31724 protected void composePaymentReconciliationDetailsComponent(String name, PaymentReconciliation.DetailsComponent element) throws IOException { 31725 if (element != null) { 31726 composeElementAttributes(element); 31727 xml.enter(FHIR_NS, name); 31728 composePaymentReconciliationDetailsComponentElements(element); 31729 composeElementClose(element); 31730 xml.exit(FHIR_NS, name); 31731 } 31732 } 31733 31734 protected void composePaymentReconciliationDetailsComponentElements(PaymentReconciliation.DetailsComponent element) throws IOException { 31735 composeBackboneElements(element); 31736 if (element.hasType()) { 31737 composeCodeableConcept("type", element.getType()); 31738 } 31739 if (element.hasRequest()) { 31740 composeReference("request", element.getRequest()); 31741 } 31742 if (element.hasResponse()) { 31743 composeReference("response", element.getResponse()); 31744 } 31745 if (element.hasSubmitter()) { 31746 composeReference("submitter", element.getSubmitter()); 31747 } 31748 if (element.hasPayee()) { 31749 composeReference("payee", element.getPayee()); 31750 } 31751 if (element.hasDateElement()) { 31752 composeDate("date", element.getDateElement()); 31753 } 31754 if (element.hasAmount()) { 31755 composeMoney("amount", element.getAmount()); 31756 } 31757 } 31758 31759 protected void composePaymentReconciliationNotesComponent(String name, PaymentReconciliation.NotesComponent element) throws IOException { 31760 if (element != null) { 31761 composeElementAttributes(element); 31762 xml.enter(FHIR_NS, name); 31763 composePaymentReconciliationNotesComponentElements(element); 31764 composeElementClose(element); 31765 xml.exit(FHIR_NS, name); 31766 } 31767 } 31768 31769 protected void composePaymentReconciliationNotesComponentElements(PaymentReconciliation.NotesComponent element) throws IOException { 31770 composeBackboneElements(element); 31771 if (element.hasType()) { 31772 composeCodeableConcept("type", element.getType()); 31773 } 31774 if (element.hasTextElement()) { 31775 composeString("text", element.getTextElement()); 31776 } 31777 } 31778 31779 protected void composePerson(String name, Person element) throws IOException { 31780 if (element != null) { 31781 composeDomainResourceAttributes(element); 31782 xml.enter(FHIR_NS, name); 31783 composePersonElements(element); 31784 composeElementClose(element); 31785 xml.exit(FHIR_NS, name); 31786 } 31787 } 31788 31789 protected void composePersonElements(Person element) throws IOException { 31790 composeDomainResourceElements(element); 31791 if (element.hasIdentifier()) { 31792 for (Identifier e : element.getIdentifier()) 31793 composeIdentifier("identifier", e); 31794 } 31795 if (element.hasName()) { 31796 for (HumanName e : element.getName()) 31797 composeHumanName("name", e); 31798 } 31799 if (element.hasTelecom()) { 31800 for (ContactPoint e : element.getTelecom()) 31801 composeContactPoint("telecom", e); 31802 } 31803 if (element.hasGenderElement()) 31804 composeEnumeration("gender", element.getGenderElement(), new Enumerations.AdministrativeGenderEnumFactory()); 31805 if (element.hasBirthDateElement()) { 31806 composeDate("birthDate", element.getBirthDateElement()); 31807 } 31808 if (element.hasAddress()) { 31809 for (Address e : element.getAddress()) 31810 composeAddress("address", e); 31811 } 31812 if (element.hasPhoto()) { 31813 composeAttachment("photo", element.getPhoto()); 31814 } 31815 if (element.hasManagingOrganization()) { 31816 composeReference("managingOrganization", element.getManagingOrganization()); 31817 } 31818 if (element.hasActiveElement()) { 31819 composeBoolean("active", element.getActiveElement()); 31820 } 31821 if (element.hasLink()) { 31822 for (Person.PersonLinkComponent e : element.getLink()) 31823 composePersonPersonLinkComponent("link", e); 31824 } 31825 } 31826 31827 protected void composePersonPersonLinkComponent(String name, Person.PersonLinkComponent element) throws IOException { 31828 if (element != null) { 31829 composeElementAttributes(element); 31830 xml.enter(FHIR_NS, name); 31831 composePersonPersonLinkComponentElements(element); 31832 composeElementClose(element); 31833 xml.exit(FHIR_NS, name); 31834 } 31835 } 31836 31837 protected void composePersonPersonLinkComponentElements(Person.PersonLinkComponent element) throws IOException { 31838 composeBackboneElements(element); 31839 if (element.hasTarget()) { 31840 composeReference("target", element.getTarget()); 31841 } 31842 if (element.hasAssuranceElement()) 31843 composeEnumeration("assurance", element.getAssuranceElement(), new Person.IdentityAssuranceLevelEnumFactory()); 31844 } 31845 31846 protected void composePlanDefinition(String name, PlanDefinition element) throws IOException { 31847 if (element != null) { 31848 composeDomainResourceAttributes(element); 31849 xml.enter(FHIR_NS, name); 31850 composePlanDefinitionElements(element); 31851 composeElementClose(element); 31852 xml.exit(FHIR_NS, name); 31853 } 31854 } 31855 31856 protected void composePlanDefinitionElements(PlanDefinition element) throws IOException { 31857 composeDomainResourceElements(element); 31858 if (element.hasUrlElement()) { 31859 composeUri("url", element.getUrlElement()); 31860 } 31861 if (element.hasIdentifier()) { 31862 for (Identifier e : element.getIdentifier()) 31863 composeIdentifier("identifier", e); 31864 } 31865 if (element.hasVersionElement()) { 31866 composeString("version", element.getVersionElement()); 31867 } 31868 if (element.hasNameElement()) { 31869 composeString("name", element.getNameElement()); 31870 } 31871 if (element.hasTitleElement()) { 31872 composeString("title", element.getTitleElement()); 31873 } 31874 if (element.hasType()) { 31875 composeCodeableConcept("type", element.getType()); 31876 } 31877 if (element.hasStatusElement()) 31878 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 31879 if (element.hasExperimentalElement()) { 31880 composeBoolean("experimental", element.getExperimentalElement()); 31881 } 31882 if (element.hasDateElement()) { 31883 composeDateTime("date", element.getDateElement()); 31884 } 31885 if (element.hasPublisherElement()) { 31886 composeString("publisher", element.getPublisherElement()); 31887 } 31888 if (element.hasDescriptionElement()) { 31889 composeMarkdown("description", element.getDescriptionElement()); 31890 } 31891 if (element.hasPurposeElement()) { 31892 composeMarkdown("purpose", element.getPurposeElement()); 31893 } 31894 if (element.hasUsageElement()) { 31895 composeString("usage", element.getUsageElement()); 31896 } 31897 if (element.hasApprovalDateElement()) { 31898 composeDate("approvalDate", element.getApprovalDateElement()); 31899 } 31900 if (element.hasLastReviewDateElement()) { 31901 composeDate("lastReviewDate", element.getLastReviewDateElement()); 31902 } 31903 if (element.hasEffectivePeriod()) { 31904 composePeriod("effectivePeriod", element.getEffectivePeriod()); 31905 } 31906 if (element.hasUseContext()) { 31907 for (UsageContext e : element.getUseContext()) 31908 composeUsageContext("useContext", e); 31909 } 31910 if (element.hasJurisdiction()) { 31911 for (CodeableConcept e : element.getJurisdiction()) 31912 composeCodeableConcept("jurisdiction", e); 31913 } 31914 if (element.hasTopic()) { 31915 for (CodeableConcept e : element.getTopic()) 31916 composeCodeableConcept("topic", e); 31917 } 31918 if (element.hasContributor()) { 31919 for (Contributor e : element.getContributor()) 31920 composeContributor("contributor", e); 31921 } 31922 if (element.hasContact()) { 31923 for (ContactDetail e : element.getContact()) 31924 composeContactDetail("contact", e); 31925 } 31926 if (element.hasCopyrightElement()) { 31927 composeMarkdown("copyright", element.getCopyrightElement()); 31928 } 31929 if (element.hasRelatedArtifact()) { 31930 for (RelatedArtifact e : element.getRelatedArtifact()) 31931 composeRelatedArtifact("relatedArtifact", e); 31932 } 31933 if (element.hasLibrary()) { 31934 for (Reference e : element.getLibrary()) 31935 composeReference("library", e); 31936 } 31937 if (element.hasGoal()) { 31938 for (PlanDefinition.PlanDefinitionGoalComponent e : element.getGoal()) 31939 composePlanDefinitionPlanDefinitionGoalComponent("goal", e); 31940 } 31941 if (element.hasAction()) { 31942 for (PlanDefinition.PlanDefinitionActionComponent e : element.getAction()) 31943 composePlanDefinitionPlanDefinitionActionComponent("action", e); 31944 } 31945 } 31946 31947 protected void composePlanDefinitionPlanDefinitionGoalComponent(String name, PlanDefinition.PlanDefinitionGoalComponent element) throws IOException { 31948 if (element != null) { 31949 composeElementAttributes(element); 31950 xml.enter(FHIR_NS, name); 31951 composePlanDefinitionPlanDefinitionGoalComponentElements(element); 31952 composeElementClose(element); 31953 xml.exit(FHIR_NS, name); 31954 } 31955 } 31956 31957 protected void composePlanDefinitionPlanDefinitionGoalComponentElements(PlanDefinition.PlanDefinitionGoalComponent element) throws IOException { 31958 composeBackboneElements(element); 31959 if (element.hasCategory()) { 31960 composeCodeableConcept("category", element.getCategory()); 31961 } 31962 if (element.hasDescription()) { 31963 composeCodeableConcept("description", element.getDescription()); 31964 } 31965 if (element.hasPriority()) { 31966 composeCodeableConcept("priority", element.getPriority()); 31967 } 31968 if (element.hasStart()) { 31969 composeCodeableConcept("start", element.getStart()); 31970 } 31971 if (element.hasAddresses()) { 31972 for (CodeableConcept e : element.getAddresses()) 31973 composeCodeableConcept("addresses", e); 31974 } 31975 if (element.hasDocumentation()) { 31976 for (RelatedArtifact e : element.getDocumentation()) 31977 composeRelatedArtifact("documentation", e); 31978 } 31979 if (element.hasTarget()) { 31980 for (PlanDefinition.PlanDefinitionGoalTargetComponent e : element.getTarget()) 31981 composePlanDefinitionPlanDefinitionGoalTargetComponent("target", e); 31982 } 31983 } 31984 31985 protected void composePlanDefinitionPlanDefinitionGoalTargetComponent(String name, PlanDefinition.PlanDefinitionGoalTargetComponent element) throws IOException { 31986 if (element != null) { 31987 composeElementAttributes(element); 31988 xml.enter(FHIR_NS, name); 31989 composePlanDefinitionPlanDefinitionGoalTargetComponentElements(element); 31990 composeElementClose(element); 31991 xml.exit(FHIR_NS, name); 31992 } 31993 } 31994 31995 protected void composePlanDefinitionPlanDefinitionGoalTargetComponentElements(PlanDefinition.PlanDefinitionGoalTargetComponent element) throws IOException { 31996 composeBackboneElements(element); 31997 if (element.hasMeasure()) { 31998 composeCodeableConcept("measure", element.getMeasure()); 31999 } 32000 if (element.hasDetail()) { 32001 composeType("detail", element.getDetail()); 32002 } if (element.hasDue()) { 32003 composeDuration("due", element.getDue()); 32004 } 32005 } 32006 32007 protected void composePlanDefinitionPlanDefinitionActionComponent(String name, PlanDefinition.PlanDefinitionActionComponent element) throws IOException { 32008 if (element != null) { 32009 composeElementAttributes(element); 32010 xml.enter(FHIR_NS, name); 32011 composePlanDefinitionPlanDefinitionActionComponentElements(element); 32012 composeElementClose(element); 32013 xml.exit(FHIR_NS, name); 32014 } 32015 } 32016 32017 protected void composePlanDefinitionPlanDefinitionActionComponentElements(PlanDefinition.PlanDefinitionActionComponent element) throws IOException { 32018 composeBackboneElements(element); 32019 if (element.hasLabelElement()) { 32020 composeString("label", element.getLabelElement()); 32021 } 32022 if (element.hasTitleElement()) { 32023 composeString("title", element.getTitleElement()); 32024 } 32025 if (element.hasDescriptionElement()) { 32026 composeString("description", element.getDescriptionElement()); 32027 } 32028 if (element.hasTextEquivalentElement()) { 32029 composeString("textEquivalent", element.getTextEquivalentElement()); 32030 } 32031 if (element.hasCode()) { 32032 for (CodeableConcept e : element.getCode()) 32033 composeCodeableConcept("code", e); 32034 } 32035 if (element.hasReason()) { 32036 for (CodeableConcept e : element.getReason()) 32037 composeCodeableConcept("reason", e); 32038 } 32039 if (element.hasDocumentation()) { 32040 for (RelatedArtifact e : element.getDocumentation()) 32041 composeRelatedArtifact("documentation", e); 32042 } 32043 if (element.hasGoalId()) { 32044 for (IdType e : element.getGoalId()) 32045 composeId("goalId", e); 32046 } 32047 if (element.hasTriggerDefinition()) { 32048 for (TriggerDefinition e : element.getTriggerDefinition()) 32049 composeTriggerDefinition("triggerDefinition", e); 32050 } 32051 if (element.hasCondition()) { 32052 for (PlanDefinition.PlanDefinitionActionConditionComponent e : element.getCondition()) 32053 composePlanDefinitionPlanDefinitionActionConditionComponent("condition", e); 32054 } 32055 if (element.hasInput()) { 32056 for (DataRequirement e : element.getInput()) 32057 composeDataRequirement("input", e); 32058 } 32059 if (element.hasOutput()) { 32060 for (DataRequirement e : element.getOutput()) 32061 composeDataRequirement("output", e); 32062 } 32063 if (element.hasRelatedAction()) { 32064 for (PlanDefinition.PlanDefinitionActionRelatedActionComponent e : element.getRelatedAction()) 32065 composePlanDefinitionPlanDefinitionActionRelatedActionComponent("relatedAction", e); 32066 } 32067 if (element.hasTiming()) { 32068 composeType("timing", element.getTiming()); 32069 } if (element.hasParticipant()) { 32070 for (PlanDefinition.PlanDefinitionActionParticipantComponent e : element.getParticipant()) 32071 composePlanDefinitionPlanDefinitionActionParticipantComponent("participant", e); 32072 } 32073 if (element.hasType()) { 32074 composeCoding("type", element.getType()); 32075 } 32076 if (element.hasGroupingBehaviorElement()) 32077 composeEnumeration("groupingBehavior", element.getGroupingBehaviorElement(), new PlanDefinition.ActionGroupingBehaviorEnumFactory()); 32078 if (element.hasSelectionBehaviorElement()) 32079 composeEnumeration("selectionBehavior", element.getSelectionBehaviorElement(), new PlanDefinition.ActionSelectionBehaviorEnumFactory()); 32080 if (element.hasRequiredBehaviorElement()) 32081 composeEnumeration("requiredBehavior", element.getRequiredBehaviorElement(), new PlanDefinition.ActionRequiredBehaviorEnumFactory()); 32082 if (element.hasPrecheckBehaviorElement()) 32083 composeEnumeration("precheckBehavior", element.getPrecheckBehaviorElement(), new PlanDefinition.ActionPrecheckBehaviorEnumFactory()); 32084 if (element.hasCardinalityBehaviorElement()) 32085 composeEnumeration("cardinalityBehavior", element.getCardinalityBehaviorElement(), new PlanDefinition.ActionCardinalityBehaviorEnumFactory()); 32086 if (element.hasDefinition()) { 32087 composeReference("definition", element.getDefinition()); 32088 } 32089 if (element.hasTransform()) { 32090 composeReference("transform", element.getTransform()); 32091 } 32092 if (element.hasDynamicValue()) { 32093 for (PlanDefinition.PlanDefinitionActionDynamicValueComponent e : element.getDynamicValue()) 32094 composePlanDefinitionPlanDefinitionActionDynamicValueComponent("dynamicValue", e); 32095 } 32096 if (element.hasAction()) { 32097 for (PlanDefinition.PlanDefinitionActionComponent e : element.getAction()) 32098 composePlanDefinitionPlanDefinitionActionComponent("action", e); 32099 } 32100 } 32101 32102 protected void composePlanDefinitionPlanDefinitionActionConditionComponent(String name, PlanDefinition.PlanDefinitionActionConditionComponent element) throws IOException { 32103 if (element != null) { 32104 composeElementAttributes(element); 32105 xml.enter(FHIR_NS, name); 32106 composePlanDefinitionPlanDefinitionActionConditionComponentElements(element); 32107 composeElementClose(element); 32108 xml.exit(FHIR_NS, name); 32109 } 32110 } 32111 32112 protected void composePlanDefinitionPlanDefinitionActionConditionComponentElements(PlanDefinition.PlanDefinitionActionConditionComponent element) throws IOException { 32113 composeBackboneElements(element); 32114 if (element.hasKindElement()) 32115 composeEnumeration("kind", element.getKindElement(), new PlanDefinition.ActionConditionKindEnumFactory()); 32116 if (element.hasDescriptionElement()) { 32117 composeString("description", element.getDescriptionElement()); 32118 } 32119 if (element.hasLanguageElement()) { 32120 composeString("language", element.getLanguageElement()); 32121 } 32122 if (element.hasExpressionElement()) { 32123 composeString("expression", element.getExpressionElement()); 32124 } 32125 } 32126 32127 protected void composePlanDefinitionPlanDefinitionActionRelatedActionComponent(String name, PlanDefinition.PlanDefinitionActionRelatedActionComponent element) throws IOException { 32128 if (element != null) { 32129 composeElementAttributes(element); 32130 xml.enter(FHIR_NS, name); 32131 composePlanDefinitionPlanDefinitionActionRelatedActionComponentElements(element); 32132 composeElementClose(element); 32133 xml.exit(FHIR_NS, name); 32134 } 32135 } 32136 32137 protected void composePlanDefinitionPlanDefinitionActionRelatedActionComponentElements(PlanDefinition.PlanDefinitionActionRelatedActionComponent element) throws IOException { 32138 composeBackboneElements(element); 32139 if (element.hasActionIdElement()) { 32140 composeId("actionId", element.getActionIdElement()); 32141 } 32142 if (element.hasRelationshipElement()) 32143 composeEnumeration("relationship", element.getRelationshipElement(), new PlanDefinition.ActionRelationshipTypeEnumFactory()); 32144 if (element.hasOffset()) { 32145 composeType("offset", element.getOffset()); 32146 } } 32147 32148 protected void composePlanDefinitionPlanDefinitionActionParticipantComponent(String name, PlanDefinition.PlanDefinitionActionParticipantComponent element) throws IOException { 32149 if (element != null) { 32150 composeElementAttributes(element); 32151 xml.enter(FHIR_NS, name); 32152 composePlanDefinitionPlanDefinitionActionParticipantComponentElements(element); 32153 composeElementClose(element); 32154 xml.exit(FHIR_NS, name); 32155 } 32156 } 32157 32158 protected void composePlanDefinitionPlanDefinitionActionParticipantComponentElements(PlanDefinition.PlanDefinitionActionParticipantComponent element) throws IOException { 32159 composeBackboneElements(element); 32160 if (element.hasTypeElement()) 32161 composeEnumeration("type", element.getTypeElement(), new PlanDefinition.ActionParticipantTypeEnumFactory()); 32162 if (element.hasRole()) { 32163 composeCodeableConcept("role", element.getRole()); 32164 } 32165 } 32166 32167 protected void composePlanDefinitionPlanDefinitionActionDynamicValueComponent(String name, PlanDefinition.PlanDefinitionActionDynamicValueComponent element) throws IOException { 32168 if (element != null) { 32169 composeElementAttributes(element); 32170 xml.enter(FHIR_NS, name); 32171 composePlanDefinitionPlanDefinitionActionDynamicValueComponentElements(element); 32172 composeElementClose(element); 32173 xml.exit(FHIR_NS, name); 32174 } 32175 } 32176 32177 protected void composePlanDefinitionPlanDefinitionActionDynamicValueComponentElements(PlanDefinition.PlanDefinitionActionDynamicValueComponent element) throws IOException { 32178 composeBackboneElements(element); 32179 if (element.hasDescriptionElement()) { 32180 composeString("description", element.getDescriptionElement()); 32181 } 32182 if (element.hasPathElement()) { 32183 composeString("path", element.getPathElement()); 32184 } 32185 if (element.hasLanguageElement()) { 32186 composeString("language", element.getLanguageElement()); 32187 } 32188 if (element.hasExpressionElement()) { 32189 composeString("expression", element.getExpressionElement()); 32190 } 32191 } 32192 32193 protected void composePractitioner(String name, Practitioner element) throws IOException { 32194 if (element != null) { 32195 composeDomainResourceAttributes(element); 32196 xml.enter(FHIR_NS, name); 32197 composePractitionerElements(element); 32198 composeElementClose(element); 32199 xml.exit(FHIR_NS, name); 32200 } 32201 } 32202 32203 protected void composePractitionerElements(Practitioner element) throws IOException { 32204 composeDomainResourceElements(element); 32205 if (element.hasIdentifier()) { 32206 for (Identifier e : element.getIdentifier()) 32207 composeIdentifier("identifier", e); 32208 } 32209 if (element.hasActiveElement()) { 32210 composeBoolean("active", element.getActiveElement()); 32211 } 32212 if (element.hasName()) { 32213 for (HumanName e : element.getName()) 32214 composeHumanName("name", e); 32215 } 32216 if (element.hasTelecom()) { 32217 for (ContactPoint e : element.getTelecom()) 32218 composeContactPoint("telecom", e); 32219 } 32220 if (element.hasAddress()) { 32221 for (Address e : element.getAddress()) 32222 composeAddress("address", e); 32223 } 32224 if (element.hasGenderElement()) 32225 composeEnumeration("gender", element.getGenderElement(), new Enumerations.AdministrativeGenderEnumFactory()); 32226 if (element.hasBirthDateElement()) { 32227 composeDate("birthDate", element.getBirthDateElement()); 32228 } 32229 if (element.hasPhoto()) { 32230 for (Attachment e : element.getPhoto()) 32231 composeAttachment("photo", e); 32232 } 32233 if (element.hasQualification()) { 32234 for (Practitioner.PractitionerQualificationComponent e : element.getQualification()) 32235 composePractitionerPractitionerQualificationComponent("qualification", e); 32236 } 32237 if (element.hasCommunication()) { 32238 for (CodeableConcept e : element.getCommunication()) 32239 composeCodeableConcept("communication", e); 32240 } 32241 } 32242 32243 protected void composePractitionerPractitionerQualificationComponent(String name, Practitioner.PractitionerQualificationComponent element) throws IOException { 32244 if (element != null) { 32245 composeElementAttributes(element); 32246 xml.enter(FHIR_NS, name); 32247 composePractitionerPractitionerQualificationComponentElements(element); 32248 composeElementClose(element); 32249 xml.exit(FHIR_NS, name); 32250 } 32251 } 32252 32253 protected void composePractitionerPractitionerQualificationComponentElements(Practitioner.PractitionerQualificationComponent element) throws IOException { 32254 composeBackboneElements(element); 32255 if (element.hasIdentifier()) { 32256 for (Identifier e : element.getIdentifier()) 32257 composeIdentifier("identifier", e); 32258 } 32259 if (element.hasCode()) { 32260 composeCodeableConcept("code", element.getCode()); 32261 } 32262 if (element.hasPeriod()) { 32263 composePeriod("period", element.getPeriod()); 32264 } 32265 if (element.hasIssuer()) { 32266 composeReference("issuer", element.getIssuer()); 32267 } 32268 } 32269 32270 protected void composePractitionerRole(String name, PractitionerRole element) throws IOException { 32271 if (element != null) { 32272 composeDomainResourceAttributes(element); 32273 xml.enter(FHIR_NS, name); 32274 composePractitionerRoleElements(element); 32275 composeElementClose(element); 32276 xml.exit(FHIR_NS, name); 32277 } 32278 } 32279 32280 protected void composePractitionerRoleElements(PractitionerRole element) throws IOException { 32281 composeDomainResourceElements(element); 32282 if (element.hasIdentifier()) { 32283 for (Identifier e : element.getIdentifier()) 32284 composeIdentifier("identifier", e); 32285 } 32286 if (element.hasActiveElement()) { 32287 composeBoolean("active", element.getActiveElement()); 32288 } 32289 if (element.hasPeriod()) { 32290 composePeriod("period", element.getPeriod()); 32291 } 32292 if (element.hasPractitioner()) { 32293 composeReference("practitioner", element.getPractitioner()); 32294 } 32295 if (element.hasOrganization()) { 32296 composeReference("organization", element.getOrganization()); 32297 } 32298 if (element.hasCode()) { 32299 for (CodeableConcept e : element.getCode()) 32300 composeCodeableConcept("code", e); 32301 } 32302 if (element.hasSpecialty()) { 32303 for (CodeableConcept e : element.getSpecialty()) 32304 composeCodeableConcept("specialty", e); 32305 } 32306 if (element.hasLocation()) { 32307 for (Reference e : element.getLocation()) 32308 composeReference("location", e); 32309 } 32310 if (element.hasHealthcareService()) { 32311 for (Reference e : element.getHealthcareService()) 32312 composeReference("healthcareService", e); 32313 } 32314 if (element.hasTelecom()) { 32315 for (ContactPoint e : element.getTelecom()) 32316 composeContactPoint("telecom", e); 32317 } 32318 if (element.hasAvailableTime()) { 32319 for (PractitionerRole.PractitionerRoleAvailableTimeComponent e : element.getAvailableTime()) 32320 composePractitionerRolePractitionerRoleAvailableTimeComponent("availableTime", e); 32321 } 32322 if (element.hasNotAvailable()) { 32323 for (PractitionerRole.PractitionerRoleNotAvailableComponent e : element.getNotAvailable()) 32324 composePractitionerRolePractitionerRoleNotAvailableComponent("notAvailable", e); 32325 } 32326 if (element.hasAvailabilityExceptionsElement()) { 32327 composeString("availabilityExceptions", element.getAvailabilityExceptionsElement()); 32328 } 32329 if (element.hasEndpoint()) { 32330 for (Reference e : element.getEndpoint()) 32331 composeReference("endpoint", e); 32332 } 32333 } 32334 32335 protected void composePractitionerRolePractitionerRoleAvailableTimeComponent(String name, PractitionerRole.PractitionerRoleAvailableTimeComponent element) throws IOException { 32336 if (element != null) { 32337 composeElementAttributes(element); 32338 xml.enter(FHIR_NS, name); 32339 composePractitionerRolePractitionerRoleAvailableTimeComponentElements(element); 32340 composeElementClose(element); 32341 xml.exit(FHIR_NS, name); 32342 } 32343 } 32344 32345 protected void composePractitionerRolePractitionerRoleAvailableTimeComponentElements(PractitionerRole.PractitionerRoleAvailableTimeComponent element) throws IOException { 32346 composeBackboneElements(element); 32347 if (element.hasDaysOfWeek()) 32348 for (Enumeration<PractitionerRole.DaysOfWeek> e : element.getDaysOfWeek()) 32349 composeEnumeration("daysOfWeek", e, new PractitionerRole.DaysOfWeekEnumFactory()); 32350 if (element.hasAllDayElement()) { 32351 composeBoolean("allDay", element.getAllDayElement()); 32352 } 32353 if (element.hasAvailableStartTimeElement()) { 32354 composeTime("availableStartTime", element.getAvailableStartTimeElement()); 32355 } 32356 if (element.hasAvailableEndTimeElement()) { 32357 composeTime("availableEndTime", element.getAvailableEndTimeElement()); 32358 } 32359 } 32360 32361 protected void composePractitionerRolePractitionerRoleNotAvailableComponent(String name, PractitionerRole.PractitionerRoleNotAvailableComponent element) throws IOException { 32362 if (element != null) { 32363 composeElementAttributes(element); 32364 xml.enter(FHIR_NS, name); 32365 composePractitionerRolePractitionerRoleNotAvailableComponentElements(element); 32366 composeElementClose(element); 32367 xml.exit(FHIR_NS, name); 32368 } 32369 } 32370 32371 protected void composePractitionerRolePractitionerRoleNotAvailableComponentElements(PractitionerRole.PractitionerRoleNotAvailableComponent element) throws IOException { 32372 composeBackboneElements(element); 32373 if (element.hasDescriptionElement()) { 32374 composeString("description", element.getDescriptionElement()); 32375 } 32376 if (element.hasDuring()) { 32377 composePeriod("during", element.getDuring()); 32378 } 32379 } 32380 32381 protected void composeProcedure(String name, Procedure element) throws IOException { 32382 if (element != null) { 32383 composeDomainResourceAttributes(element); 32384 xml.enter(FHIR_NS, name); 32385 composeProcedureElements(element); 32386 composeElementClose(element); 32387 xml.exit(FHIR_NS, name); 32388 } 32389 } 32390 32391 protected void composeProcedureElements(Procedure element) throws IOException { 32392 composeDomainResourceElements(element); 32393 if (element.hasIdentifier()) { 32394 for (Identifier e : element.getIdentifier()) 32395 composeIdentifier("identifier", e); 32396 } 32397 if (element.hasDefinition()) { 32398 for (Reference e : element.getDefinition()) 32399 composeReference("definition", e); 32400 } 32401 if (element.hasBasedOn()) { 32402 for (Reference e : element.getBasedOn()) 32403 composeReference("basedOn", e); 32404 } 32405 if (element.hasPartOf()) { 32406 for (Reference e : element.getPartOf()) 32407 composeReference("partOf", e); 32408 } 32409 if (element.hasStatusElement()) 32410 composeEnumeration("status", element.getStatusElement(), new Procedure.ProcedureStatusEnumFactory()); 32411 if (element.hasNotDoneElement()) { 32412 composeBoolean("notDone", element.getNotDoneElement()); 32413 } 32414 if (element.hasNotDoneReason()) { 32415 composeCodeableConcept("notDoneReason", element.getNotDoneReason()); 32416 } 32417 if (element.hasCategory()) { 32418 composeCodeableConcept("category", element.getCategory()); 32419 } 32420 if (element.hasCode()) { 32421 composeCodeableConcept("code", element.getCode()); 32422 } 32423 if (element.hasSubject()) { 32424 composeReference("subject", element.getSubject()); 32425 } 32426 if (element.hasContext()) { 32427 composeReference("context", element.getContext()); 32428 } 32429 if (element.hasPerformed()) { 32430 composeType("performed", element.getPerformed()); 32431 } if (element.hasPerformer()) { 32432 for (Procedure.ProcedurePerformerComponent e : element.getPerformer()) 32433 composeProcedureProcedurePerformerComponent("performer", e); 32434 } 32435 if (element.hasLocation()) { 32436 composeReference("location", element.getLocation()); 32437 } 32438 if (element.hasReasonCode()) { 32439 for (CodeableConcept e : element.getReasonCode()) 32440 composeCodeableConcept("reasonCode", e); 32441 } 32442 if (element.hasReasonReference()) { 32443 for (Reference e : element.getReasonReference()) 32444 composeReference("reasonReference", e); 32445 } 32446 if (element.hasBodySite()) { 32447 for (CodeableConcept e : element.getBodySite()) 32448 composeCodeableConcept("bodySite", e); 32449 } 32450 if (element.hasOutcome()) { 32451 composeCodeableConcept("outcome", element.getOutcome()); 32452 } 32453 if (element.hasReport()) { 32454 for (Reference e : element.getReport()) 32455 composeReference("report", e); 32456 } 32457 if (element.hasComplication()) { 32458 for (CodeableConcept e : element.getComplication()) 32459 composeCodeableConcept("complication", e); 32460 } 32461 if (element.hasComplicationDetail()) { 32462 for (Reference e : element.getComplicationDetail()) 32463 composeReference("complicationDetail", e); 32464 } 32465 if (element.hasFollowUp()) { 32466 for (CodeableConcept e : element.getFollowUp()) 32467 composeCodeableConcept("followUp", e); 32468 } 32469 if (element.hasNote()) { 32470 for (Annotation e : element.getNote()) 32471 composeAnnotation("note", e); 32472 } 32473 if (element.hasFocalDevice()) { 32474 for (Procedure.ProcedureFocalDeviceComponent e : element.getFocalDevice()) 32475 composeProcedureProcedureFocalDeviceComponent("focalDevice", e); 32476 } 32477 if (element.hasUsedReference()) { 32478 for (Reference e : element.getUsedReference()) 32479 composeReference("usedReference", e); 32480 } 32481 if (element.hasUsedCode()) { 32482 for (CodeableConcept e : element.getUsedCode()) 32483 composeCodeableConcept("usedCode", e); 32484 } 32485 } 32486 32487 protected void composeProcedureProcedurePerformerComponent(String name, Procedure.ProcedurePerformerComponent element) throws IOException { 32488 if (element != null) { 32489 composeElementAttributes(element); 32490 xml.enter(FHIR_NS, name); 32491 composeProcedureProcedurePerformerComponentElements(element); 32492 composeElementClose(element); 32493 xml.exit(FHIR_NS, name); 32494 } 32495 } 32496 32497 protected void composeProcedureProcedurePerformerComponentElements(Procedure.ProcedurePerformerComponent element) throws IOException { 32498 composeBackboneElements(element); 32499 if (element.hasRole()) { 32500 composeCodeableConcept("role", element.getRole()); 32501 } 32502 if (element.hasActor()) { 32503 composeReference("actor", element.getActor()); 32504 } 32505 if (element.hasOnBehalfOf()) { 32506 composeReference("onBehalfOf", element.getOnBehalfOf()); 32507 } 32508 } 32509 32510 protected void composeProcedureProcedureFocalDeviceComponent(String name, Procedure.ProcedureFocalDeviceComponent element) throws IOException { 32511 if (element != null) { 32512 composeElementAttributes(element); 32513 xml.enter(FHIR_NS, name); 32514 composeProcedureProcedureFocalDeviceComponentElements(element); 32515 composeElementClose(element); 32516 xml.exit(FHIR_NS, name); 32517 } 32518 } 32519 32520 protected void composeProcedureProcedureFocalDeviceComponentElements(Procedure.ProcedureFocalDeviceComponent element) throws IOException { 32521 composeBackboneElements(element); 32522 if (element.hasAction()) { 32523 composeCodeableConcept("action", element.getAction()); 32524 } 32525 if (element.hasManipulated()) { 32526 composeReference("manipulated", element.getManipulated()); 32527 } 32528 } 32529 32530 protected void composeProcedureRequest(String name, ProcedureRequest element) throws IOException { 32531 if (element != null) { 32532 composeDomainResourceAttributes(element); 32533 xml.enter(FHIR_NS, name); 32534 composeProcedureRequestElements(element); 32535 composeElementClose(element); 32536 xml.exit(FHIR_NS, name); 32537 } 32538 } 32539 32540 protected void composeProcedureRequestElements(ProcedureRequest element) throws IOException { 32541 composeDomainResourceElements(element); 32542 if (element.hasIdentifier()) { 32543 for (Identifier e : element.getIdentifier()) 32544 composeIdentifier("identifier", e); 32545 } 32546 if (element.hasDefinition()) { 32547 for (Reference e : element.getDefinition()) 32548 composeReference("definition", e); 32549 } 32550 if (element.hasBasedOn()) { 32551 for (Reference e : element.getBasedOn()) 32552 composeReference("basedOn", e); 32553 } 32554 if (element.hasReplaces()) { 32555 for (Reference e : element.getReplaces()) 32556 composeReference("replaces", e); 32557 } 32558 if (element.hasRequisition()) { 32559 composeIdentifier("requisition", element.getRequisition()); 32560 } 32561 if (element.hasStatusElement()) 32562 composeEnumeration("status", element.getStatusElement(), new ProcedureRequest.ProcedureRequestStatusEnumFactory()); 32563 if (element.hasIntentElement()) 32564 composeEnumeration("intent", element.getIntentElement(), new ProcedureRequest.ProcedureRequestIntentEnumFactory()); 32565 if (element.hasPriorityElement()) 32566 composeEnumeration("priority", element.getPriorityElement(), new ProcedureRequest.ProcedureRequestPriorityEnumFactory()); 32567 if (element.hasDoNotPerformElement()) { 32568 composeBoolean("doNotPerform", element.getDoNotPerformElement()); 32569 } 32570 if (element.hasCategory()) { 32571 for (CodeableConcept e : element.getCategory()) 32572 composeCodeableConcept("category", e); 32573 } 32574 if (element.hasCode()) { 32575 composeCodeableConcept("code", element.getCode()); 32576 } 32577 if (element.hasSubject()) { 32578 composeReference("subject", element.getSubject()); 32579 } 32580 if (element.hasContext()) { 32581 composeReference("context", element.getContext()); 32582 } 32583 if (element.hasOccurrence()) { 32584 composeType("occurrence", element.getOccurrence()); 32585 } if (element.hasAsNeeded()) { 32586 composeType("asNeeded", element.getAsNeeded()); 32587 } if (element.hasAuthoredOnElement()) { 32588 composeDateTime("authoredOn", element.getAuthoredOnElement()); 32589 } 32590 if (element.hasRequester()) { 32591 composeProcedureRequestProcedureRequestRequesterComponent("requester", element.getRequester()); 32592 } 32593 if (element.hasPerformerType()) { 32594 composeCodeableConcept("performerType", element.getPerformerType()); 32595 } 32596 if (element.hasPerformer()) { 32597 composeReference("performer", element.getPerformer()); 32598 } 32599 if (element.hasReasonCode()) { 32600 for (CodeableConcept e : element.getReasonCode()) 32601 composeCodeableConcept("reasonCode", e); 32602 } 32603 if (element.hasReasonReference()) { 32604 for (Reference e : element.getReasonReference()) 32605 composeReference("reasonReference", e); 32606 } 32607 if (element.hasSupportingInfo()) { 32608 for (Reference e : element.getSupportingInfo()) 32609 composeReference("supportingInfo", e); 32610 } 32611 if (element.hasSpecimen()) { 32612 for (Reference e : element.getSpecimen()) 32613 composeReference("specimen", e); 32614 } 32615 if (element.hasBodySite()) { 32616 for (CodeableConcept e : element.getBodySite()) 32617 composeCodeableConcept("bodySite", e); 32618 } 32619 if (element.hasNote()) { 32620 for (Annotation e : element.getNote()) 32621 composeAnnotation("note", e); 32622 } 32623 if (element.hasRelevantHistory()) { 32624 for (Reference e : element.getRelevantHistory()) 32625 composeReference("relevantHistory", e); 32626 } 32627 } 32628 32629 protected void composeProcedureRequestProcedureRequestRequesterComponent(String name, ProcedureRequest.ProcedureRequestRequesterComponent element) throws IOException { 32630 if (element != null) { 32631 composeElementAttributes(element); 32632 xml.enter(FHIR_NS, name); 32633 composeProcedureRequestProcedureRequestRequesterComponentElements(element); 32634 composeElementClose(element); 32635 xml.exit(FHIR_NS, name); 32636 } 32637 } 32638 32639 protected void composeProcedureRequestProcedureRequestRequesterComponentElements(ProcedureRequest.ProcedureRequestRequesterComponent element) throws IOException { 32640 composeBackboneElements(element); 32641 if (element.hasAgent()) { 32642 composeReference("agent", element.getAgent()); 32643 } 32644 if (element.hasOnBehalfOf()) { 32645 composeReference("onBehalfOf", element.getOnBehalfOf()); 32646 } 32647 } 32648 32649 protected void composeProcessRequest(String name, ProcessRequest element) throws IOException { 32650 if (element != null) { 32651 composeDomainResourceAttributes(element); 32652 xml.enter(FHIR_NS, name); 32653 composeProcessRequestElements(element); 32654 composeElementClose(element); 32655 xml.exit(FHIR_NS, name); 32656 } 32657 } 32658 32659 protected void composeProcessRequestElements(ProcessRequest element) throws IOException { 32660 composeDomainResourceElements(element); 32661 if (element.hasIdentifier()) { 32662 for (Identifier e : element.getIdentifier()) 32663 composeIdentifier("identifier", e); 32664 } 32665 if (element.hasStatusElement()) 32666 composeEnumeration("status", element.getStatusElement(), new ProcessRequest.ProcessRequestStatusEnumFactory()); 32667 if (element.hasActionElement()) 32668 composeEnumeration("action", element.getActionElement(), new ProcessRequest.ActionListEnumFactory()); 32669 if (element.hasTarget()) { 32670 composeReference("target", element.getTarget()); 32671 } 32672 if (element.hasCreatedElement()) { 32673 composeDateTime("created", element.getCreatedElement()); 32674 } 32675 if (element.hasProvider()) { 32676 composeReference("provider", element.getProvider()); 32677 } 32678 if (element.hasOrganization()) { 32679 composeReference("organization", element.getOrganization()); 32680 } 32681 if (element.hasRequest()) { 32682 composeReference("request", element.getRequest()); 32683 } 32684 if (element.hasResponse()) { 32685 composeReference("response", element.getResponse()); 32686 } 32687 if (element.hasNullifyElement()) { 32688 composeBoolean("nullify", element.getNullifyElement()); 32689 } 32690 if (element.hasReferenceElement()) { 32691 composeString("reference", element.getReferenceElement()); 32692 } 32693 if (element.hasItem()) { 32694 for (ProcessRequest.ItemsComponent e : element.getItem()) 32695 composeProcessRequestItemsComponent("item", e); 32696 } 32697 if (element.hasInclude()) { 32698 for (StringType e : element.getInclude()) 32699 composeString("include", e); 32700 } 32701 if (element.hasExclude()) { 32702 for (StringType e : element.getExclude()) 32703 composeString("exclude", e); 32704 } 32705 if (element.hasPeriod()) { 32706 composePeriod("period", element.getPeriod()); 32707 } 32708 } 32709 32710 protected void composeProcessRequestItemsComponent(String name, ProcessRequest.ItemsComponent element) throws IOException { 32711 if (element != null) { 32712 composeElementAttributes(element); 32713 xml.enter(FHIR_NS, name); 32714 composeProcessRequestItemsComponentElements(element); 32715 composeElementClose(element); 32716 xml.exit(FHIR_NS, name); 32717 } 32718 } 32719 32720 protected void composeProcessRequestItemsComponentElements(ProcessRequest.ItemsComponent element) throws IOException { 32721 composeBackboneElements(element); 32722 if (element.hasSequenceLinkIdElement()) { 32723 composeInteger("sequenceLinkId", element.getSequenceLinkIdElement()); 32724 } 32725 } 32726 32727 protected void composeProcessResponse(String name, ProcessResponse element) throws IOException { 32728 if (element != null) { 32729 composeDomainResourceAttributes(element); 32730 xml.enter(FHIR_NS, name); 32731 composeProcessResponseElements(element); 32732 composeElementClose(element); 32733 xml.exit(FHIR_NS, name); 32734 } 32735 } 32736 32737 protected void composeProcessResponseElements(ProcessResponse element) throws IOException { 32738 composeDomainResourceElements(element); 32739 if (element.hasIdentifier()) { 32740 for (Identifier e : element.getIdentifier()) 32741 composeIdentifier("identifier", e); 32742 } 32743 if (element.hasStatusElement()) 32744 composeEnumeration("status", element.getStatusElement(), new ProcessResponse.ProcessResponseStatusEnumFactory()); 32745 if (element.hasCreatedElement()) { 32746 composeDateTime("created", element.getCreatedElement()); 32747 } 32748 if (element.hasOrganization()) { 32749 composeReference("organization", element.getOrganization()); 32750 } 32751 if (element.hasRequest()) { 32752 composeReference("request", element.getRequest()); 32753 } 32754 if (element.hasOutcome()) { 32755 composeCodeableConcept("outcome", element.getOutcome()); 32756 } 32757 if (element.hasDispositionElement()) { 32758 composeString("disposition", element.getDispositionElement()); 32759 } 32760 if (element.hasRequestProvider()) { 32761 composeReference("requestProvider", element.getRequestProvider()); 32762 } 32763 if (element.hasRequestOrganization()) { 32764 composeReference("requestOrganization", element.getRequestOrganization()); 32765 } 32766 if (element.hasForm()) { 32767 composeCodeableConcept("form", element.getForm()); 32768 } 32769 if (element.hasProcessNote()) { 32770 for (ProcessResponse.ProcessResponseProcessNoteComponent e : element.getProcessNote()) 32771 composeProcessResponseProcessResponseProcessNoteComponent("processNote", e); 32772 } 32773 if (element.hasError()) { 32774 for (CodeableConcept e : element.getError()) 32775 composeCodeableConcept("error", e); 32776 } 32777 if (element.hasCommunicationRequest()) { 32778 for (Reference e : element.getCommunicationRequest()) 32779 composeReference("communicationRequest", e); 32780 } 32781 } 32782 32783 protected void composeProcessResponseProcessResponseProcessNoteComponent(String name, ProcessResponse.ProcessResponseProcessNoteComponent element) throws IOException { 32784 if (element != null) { 32785 composeElementAttributes(element); 32786 xml.enter(FHIR_NS, name); 32787 composeProcessResponseProcessResponseProcessNoteComponentElements(element); 32788 composeElementClose(element); 32789 xml.exit(FHIR_NS, name); 32790 } 32791 } 32792 32793 protected void composeProcessResponseProcessResponseProcessNoteComponentElements(ProcessResponse.ProcessResponseProcessNoteComponent element) throws IOException { 32794 composeBackboneElements(element); 32795 if (element.hasType()) { 32796 composeCodeableConcept("type", element.getType()); 32797 } 32798 if (element.hasTextElement()) { 32799 composeString("text", element.getTextElement()); 32800 } 32801 } 32802 32803 protected void composeProvenance(String name, Provenance element) throws IOException { 32804 if (element != null) { 32805 composeDomainResourceAttributes(element); 32806 xml.enter(FHIR_NS, name); 32807 composeProvenanceElements(element); 32808 composeElementClose(element); 32809 xml.exit(FHIR_NS, name); 32810 } 32811 } 32812 32813 protected void composeProvenanceElements(Provenance element) throws IOException { 32814 composeDomainResourceElements(element); 32815 if (element.hasTarget()) { 32816 for (Reference e : element.getTarget()) 32817 composeReference("target", e); 32818 } 32819 if (element.hasPeriod()) { 32820 composePeriod("period", element.getPeriod()); 32821 } 32822 if (element.hasRecordedElement()) { 32823 composeInstant("recorded", element.getRecordedElement()); 32824 } 32825 if (element.hasPolicy()) { 32826 for (UriType e : element.getPolicy()) 32827 composeUri("policy", e); 32828 } 32829 if (element.hasLocation()) { 32830 composeReference("location", element.getLocation()); 32831 } 32832 if (element.hasReason()) { 32833 for (Coding e : element.getReason()) 32834 composeCoding("reason", e); 32835 } 32836 if (element.hasActivity()) { 32837 composeCoding("activity", element.getActivity()); 32838 } 32839 if (element.hasAgent()) { 32840 for (Provenance.ProvenanceAgentComponent e : element.getAgent()) 32841 composeProvenanceProvenanceAgentComponent("agent", e); 32842 } 32843 if (element.hasEntity()) { 32844 for (Provenance.ProvenanceEntityComponent e : element.getEntity()) 32845 composeProvenanceProvenanceEntityComponent("entity", e); 32846 } 32847 if (element.hasSignature()) { 32848 for (Signature e : element.getSignature()) 32849 composeSignature("signature", e); 32850 } 32851 } 32852 32853 protected void composeProvenanceProvenanceAgentComponent(String name, Provenance.ProvenanceAgentComponent element) throws IOException { 32854 if (element != null) { 32855 composeElementAttributes(element); 32856 xml.enter(FHIR_NS, name); 32857 composeProvenanceProvenanceAgentComponentElements(element); 32858 composeElementClose(element); 32859 xml.exit(FHIR_NS, name); 32860 } 32861 } 32862 32863 protected void composeProvenanceProvenanceAgentComponentElements(Provenance.ProvenanceAgentComponent element) throws IOException { 32864 composeBackboneElements(element); 32865 if (element.hasRole()) { 32866 for (CodeableConcept e : element.getRole()) 32867 composeCodeableConcept("role", e); 32868 } 32869 if (element.hasWho()) { 32870 composeType("who", element.getWho()); 32871 } if (element.hasOnBehalfOf()) { 32872 composeType("onBehalfOf", element.getOnBehalfOf()); 32873 } if (element.hasRelatedAgentType()) { 32874 composeCodeableConcept("relatedAgentType", element.getRelatedAgentType()); 32875 } 32876 } 32877 32878 protected void composeProvenanceProvenanceEntityComponent(String name, Provenance.ProvenanceEntityComponent element) throws IOException { 32879 if (element != null) { 32880 composeElementAttributes(element); 32881 xml.enter(FHIR_NS, name); 32882 composeProvenanceProvenanceEntityComponentElements(element); 32883 composeElementClose(element); 32884 xml.exit(FHIR_NS, name); 32885 } 32886 } 32887 32888 protected void composeProvenanceProvenanceEntityComponentElements(Provenance.ProvenanceEntityComponent element) throws IOException { 32889 composeBackboneElements(element); 32890 if (element.hasRoleElement()) 32891 composeEnumeration("role", element.getRoleElement(), new Provenance.ProvenanceEntityRoleEnumFactory()); 32892 if (element.hasWhat()) { 32893 composeType("what", element.getWhat()); 32894 } if (element.hasAgent()) { 32895 for (Provenance.ProvenanceAgentComponent e : element.getAgent()) 32896 composeProvenanceProvenanceAgentComponent("agent", e); 32897 } 32898 } 32899 32900 protected void composeQuestionnaire(String name, Questionnaire element) throws IOException { 32901 if (element != null) { 32902 composeDomainResourceAttributes(element); 32903 xml.enter(FHIR_NS, name); 32904 composeQuestionnaireElements(element); 32905 composeElementClose(element); 32906 xml.exit(FHIR_NS, name); 32907 } 32908 } 32909 32910 protected void composeQuestionnaireElements(Questionnaire element) throws IOException { 32911 composeDomainResourceElements(element); 32912 if (element.hasUrlElement()) { 32913 composeUri("url", element.getUrlElement()); 32914 } 32915 if (element.hasIdentifier()) { 32916 for (Identifier e : element.getIdentifier()) 32917 composeIdentifier("identifier", e); 32918 } 32919 if (element.hasVersionElement()) { 32920 composeString("version", element.getVersionElement()); 32921 } 32922 if (element.hasNameElement()) { 32923 composeString("name", element.getNameElement()); 32924 } 32925 if (element.hasTitleElement()) { 32926 composeString("title", element.getTitleElement()); 32927 } 32928 if (element.hasStatusElement()) 32929 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 32930 if (element.hasExperimentalElement()) { 32931 composeBoolean("experimental", element.getExperimentalElement()); 32932 } 32933 if (element.hasDateElement()) { 32934 composeDateTime("date", element.getDateElement()); 32935 } 32936 if (element.hasPublisherElement()) { 32937 composeString("publisher", element.getPublisherElement()); 32938 } 32939 if (element.hasDescriptionElement()) { 32940 composeMarkdown("description", element.getDescriptionElement()); 32941 } 32942 if (element.hasPurposeElement()) { 32943 composeMarkdown("purpose", element.getPurposeElement()); 32944 } 32945 if (element.hasApprovalDateElement()) { 32946 composeDate("approvalDate", element.getApprovalDateElement()); 32947 } 32948 if (element.hasLastReviewDateElement()) { 32949 composeDate("lastReviewDate", element.getLastReviewDateElement()); 32950 } 32951 if (element.hasEffectivePeriod()) { 32952 composePeriod("effectivePeriod", element.getEffectivePeriod()); 32953 } 32954 if (element.hasUseContext()) { 32955 for (UsageContext e : element.getUseContext()) 32956 composeUsageContext("useContext", e); 32957 } 32958 if (element.hasJurisdiction()) { 32959 for (CodeableConcept e : element.getJurisdiction()) 32960 composeCodeableConcept("jurisdiction", e); 32961 } 32962 if (element.hasContact()) { 32963 for (ContactDetail e : element.getContact()) 32964 composeContactDetail("contact", e); 32965 } 32966 if (element.hasCopyrightElement()) { 32967 composeMarkdown("copyright", element.getCopyrightElement()); 32968 } 32969 if (element.hasCode()) { 32970 for (Coding e : element.getCode()) 32971 composeCoding("code", e); 32972 } 32973 if (element.hasSubjectType()) { 32974 for (CodeType e : element.getSubjectType()) 32975 composeCode("subjectType", e); 32976 } 32977 if (element.hasItem()) { 32978 for (Questionnaire.QuestionnaireItemComponent e : element.getItem()) 32979 composeQuestionnaireQuestionnaireItemComponent("item", e); 32980 } 32981 } 32982 32983 protected void composeQuestionnaireQuestionnaireItemComponent(String name, Questionnaire.QuestionnaireItemComponent element) throws IOException { 32984 if (element != null) { 32985 composeElementAttributes(element); 32986 xml.enter(FHIR_NS, name); 32987 composeQuestionnaireQuestionnaireItemComponentElements(element); 32988 composeElementClose(element); 32989 xml.exit(FHIR_NS, name); 32990 } 32991 } 32992 32993 protected void composeQuestionnaireQuestionnaireItemComponentElements(Questionnaire.QuestionnaireItemComponent element) throws IOException { 32994 composeBackboneElements(element); 32995 if (element.hasLinkIdElement()) { 32996 composeString("linkId", element.getLinkIdElement()); 32997 } 32998 if (element.hasDefinitionElement()) { 32999 composeUri("definition", element.getDefinitionElement()); 33000 } 33001 if (element.hasCode()) { 33002 for (Coding e : element.getCode()) 33003 composeCoding("code", e); 33004 } 33005 if (element.hasPrefixElement()) { 33006 composeString("prefix", element.getPrefixElement()); 33007 } 33008 if (element.hasTextElement()) { 33009 composeString("text", element.getTextElement()); 33010 } 33011 if (element.hasTypeElement()) 33012 composeEnumeration("type", element.getTypeElement(), new Questionnaire.QuestionnaireItemTypeEnumFactory()); 33013 if (element.hasEnableWhen()) { 33014 for (Questionnaire.QuestionnaireItemEnableWhenComponent e : element.getEnableWhen()) 33015 composeQuestionnaireQuestionnaireItemEnableWhenComponent("enableWhen", e); 33016 } 33017 if (element.hasRequiredElement()) { 33018 composeBoolean("required", element.getRequiredElement()); 33019 } 33020 if (element.hasRepeatsElement()) { 33021 composeBoolean("repeats", element.getRepeatsElement()); 33022 } 33023 if (element.hasReadOnlyElement()) { 33024 composeBoolean("readOnly", element.getReadOnlyElement()); 33025 } 33026 if (element.hasMaxLengthElement()) { 33027 composeInteger("maxLength", element.getMaxLengthElement()); 33028 } 33029 if (element.hasOptions()) { 33030 composeReference("options", element.getOptions()); 33031 } 33032 if (element.hasOption()) { 33033 for (Questionnaire.QuestionnaireItemOptionComponent e : element.getOption()) 33034 composeQuestionnaireQuestionnaireItemOptionComponent("option", e); 33035 } 33036 if (element.hasInitial()) { 33037 composeType("initial", element.getInitial()); 33038 } if (element.hasItem()) { 33039 for (Questionnaire.QuestionnaireItemComponent e : element.getItem()) 33040 composeQuestionnaireQuestionnaireItemComponent("item", e); 33041 } 33042 } 33043 33044 protected void composeQuestionnaireQuestionnaireItemEnableWhenComponent(String name, Questionnaire.QuestionnaireItemEnableWhenComponent element) throws IOException { 33045 if (element != null) { 33046 composeElementAttributes(element); 33047 xml.enter(FHIR_NS, name); 33048 composeQuestionnaireQuestionnaireItemEnableWhenComponentElements(element); 33049 composeElementClose(element); 33050 xml.exit(FHIR_NS, name); 33051 } 33052 } 33053 33054 protected void composeQuestionnaireQuestionnaireItemEnableWhenComponentElements(Questionnaire.QuestionnaireItemEnableWhenComponent element) throws IOException { 33055 composeBackboneElements(element); 33056 if (element.hasQuestionElement()) { 33057 composeString("question", element.getQuestionElement()); 33058 } 33059 if (element.hasHasAnswerElement()) { 33060 composeBoolean("hasAnswer", element.getHasAnswerElement()); 33061 } 33062 if (element.hasAnswer()) { 33063 composeType("answer", element.getAnswer()); 33064 } } 33065 33066 protected void composeQuestionnaireQuestionnaireItemOptionComponent(String name, Questionnaire.QuestionnaireItemOptionComponent element) throws IOException { 33067 if (element != null) { 33068 composeElementAttributes(element); 33069 xml.enter(FHIR_NS, name); 33070 composeQuestionnaireQuestionnaireItemOptionComponentElements(element); 33071 composeElementClose(element); 33072 xml.exit(FHIR_NS, name); 33073 } 33074 } 33075 33076 protected void composeQuestionnaireQuestionnaireItemOptionComponentElements(Questionnaire.QuestionnaireItemOptionComponent element) throws IOException { 33077 composeBackboneElements(element); 33078 if (element.hasValue()) { 33079 composeType("value", element.getValue()); 33080 } } 33081 33082 protected void composeQuestionnaireResponse(String name, QuestionnaireResponse element) throws IOException { 33083 if (element != null) { 33084 composeDomainResourceAttributes(element); 33085 xml.enter(FHIR_NS, name); 33086 composeQuestionnaireResponseElements(element); 33087 composeElementClose(element); 33088 xml.exit(FHIR_NS, name); 33089 } 33090 } 33091 33092 protected void composeQuestionnaireResponseElements(QuestionnaireResponse element) throws IOException { 33093 composeDomainResourceElements(element); 33094 if (element.hasIdentifier()) { 33095 composeIdentifier("identifier", element.getIdentifier()); 33096 } 33097 if (element.hasBasedOn()) { 33098 for (Reference e : element.getBasedOn()) 33099 composeReference("basedOn", e); 33100 } 33101 if (element.hasParent()) { 33102 for (Reference e : element.getParent()) 33103 composeReference("parent", e); 33104 } 33105 if (element.hasQuestionnaire()) { 33106 composeReference("questionnaire", element.getQuestionnaire()); 33107 } 33108 if (element.hasStatusElement()) 33109 composeEnumeration("status", element.getStatusElement(), new QuestionnaireResponse.QuestionnaireResponseStatusEnumFactory()); 33110 if (element.hasSubject()) { 33111 composeReference("subject", element.getSubject()); 33112 } 33113 if (element.hasContext()) { 33114 composeReference("context", element.getContext()); 33115 } 33116 if (element.hasAuthoredElement()) { 33117 composeDateTime("authored", element.getAuthoredElement()); 33118 } 33119 if (element.hasAuthor()) { 33120 composeReference("author", element.getAuthor()); 33121 } 33122 if (element.hasSource()) { 33123 composeReference("source", element.getSource()); 33124 } 33125 if (element.hasItem()) { 33126 for (QuestionnaireResponse.QuestionnaireResponseItemComponent e : element.getItem()) 33127 composeQuestionnaireResponseQuestionnaireResponseItemComponent("item", e); 33128 } 33129 } 33130 33131 protected void composeQuestionnaireResponseQuestionnaireResponseItemComponent(String name, QuestionnaireResponse.QuestionnaireResponseItemComponent element) throws IOException { 33132 if (element != null) { 33133 composeElementAttributes(element); 33134 xml.enter(FHIR_NS, name); 33135 composeQuestionnaireResponseQuestionnaireResponseItemComponentElements(element); 33136 composeElementClose(element); 33137 xml.exit(FHIR_NS, name); 33138 } 33139 } 33140 33141 protected void composeQuestionnaireResponseQuestionnaireResponseItemComponentElements(QuestionnaireResponse.QuestionnaireResponseItemComponent element) throws IOException { 33142 composeBackboneElements(element); 33143 if (element.hasLinkIdElement()) { 33144 composeString("linkId", element.getLinkIdElement()); 33145 } 33146 if (element.hasDefinitionElement()) { 33147 composeUri("definition", element.getDefinitionElement()); 33148 } 33149 if (element.hasTextElement()) { 33150 composeString("text", element.getTextElement()); 33151 } 33152 if (element.hasSubject()) { 33153 composeReference("subject", element.getSubject()); 33154 } 33155 if (element.hasAnswer()) { 33156 for (QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent e : element.getAnswer()) 33157 composeQuestionnaireResponseQuestionnaireResponseItemAnswerComponent("answer", e); 33158 } 33159 if (element.hasItem()) { 33160 for (QuestionnaireResponse.QuestionnaireResponseItemComponent e : element.getItem()) 33161 composeQuestionnaireResponseQuestionnaireResponseItemComponent("item", e); 33162 } 33163 } 33164 33165 protected void composeQuestionnaireResponseQuestionnaireResponseItemAnswerComponent(String name, QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent element) throws IOException { 33166 if (element != null) { 33167 composeElementAttributes(element); 33168 xml.enter(FHIR_NS, name); 33169 composeQuestionnaireResponseQuestionnaireResponseItemAnswerComponentElements(element); 33170 composeElementClose(element); 33171 xml.exit(FHIR_NS, name); 33172 } 33173 } 33174 33175 protected void composeQuestionnaireResponseQuestionnaireResponseItemAnswerComponentElements(QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent element) throws IOException { 33176 composeBackboneElements(element); 33177 if (element.hasValue()) { 33178 composeType("value", element.getValue()); 33179 } if (element.hasItem()) { 33180 for (QuestionnaireResponse.QuestionnaireResponseItemComponent e : element.getItem()) 33181 composeQuestionnaireResponseQuestionnaireResponseItemComponent("item", e); 33182 } 33183 } 33184 33185 protected void composeReferralRequest(String name, ReferralRequest element) throws IOException { 33186 if (element != null) { 33187 composeDomainResourceAttributes(element); 33188 xml.enter(FHIR_NS, name); 33189 composeReferralRequestElements(element); 33190 composeElementClose(element); 33191 xml.exit(FHIR_NS, name); 33192 } 33193 } 33194 33195 protected void composeReferralRequestElements(ReferralRequest element) throws IOException { 33196 composeDomainResourceElements(element); 33197 if (element.hasIdentifier()) { 33198 for (Identifier e : element.getIdentifier()) 33199 composeIdentifier("identifier", e); 33200 } 33201 if (element.hasDefinition()) { 33202 for (Reference e : element.getDefinition()) 33203 composeReference("definition", e); 33204 } 33205 if (element.hasBasedOn()) { 33206 for (Reference e : element.getBasedOn()) 33207 composeReference("basedOn", e); 33208 } 33209 if (element.hasReplaces()) { 33210 for (Reference e : element.getReplaces()) 33211 composeReference("replaces", e); 33212 } 33213 if (element.hasGroupIdentifier()) { 33214 composeIdentifier("groupIdentifier", element.getGroupIdentifier()); 33215 } 33216 if (element.hasStatusElement()) 33217 composeEnumeration("status", element.getStatusElement(), new ReferralRequest.ReferralRequestStatusEnumFactory()); 33218 if (element.hasIntentElement()) 33219 composeEnumeration("intent", element.getIntentElement(), new ReferralRequest.ReferralCategoryEnumFactory()); 33220 if (element.hasType()) { 33221 composeCodeableConcept("type", element.getType()); 33222 } 33223 if (element.hasPriorityElement()) 33224 composeEnumeration("priority", element.getPriorityElement(), new ReferralRequest.ReferralPriorityEnumFactory()); 33225 if (element.hasServiceRequested()) { 33226 for (CodeableConcept e : element.getServiceRequested()) 33227 composeCodeableConcept("serviceRequested", e); 33228 } 33229 if (element.hasSubject()) { 33230 composeReference("subject", element.getSubject()); 33231 } 33232 if (element.hasContext()) { 33233 composeReference("context", element.getContext()); 33234 } 33235 if (element.hasOccurrence()) { 33236 composeType("occurrence", element.getOccurrence()); 33237 } if (element.hasAuthoredOnElement()) { 33238 composeDateTime("authoredOn", element.getAuthoredOnElement()); 33239 } 33240 if (element.hasRequester()) { 33241 composeReferralRequestReferralRequestRequesterComponent("requester", element.getRequester()); 33242 } 33243 if (element.hasSpecialty()) { 33244 composeCodeableConcept("specialty", element.getSpecialty()); 33245 } 33246 if (element.hasRecipient()) { 33247 for (Reference e : element.getRecipient()) 33248 composeReference("recipient", e); 33249 } 33250 if (element.hasReasonCode()) { 33251 for (CodeableConcept e : element.getReasonCode()) 33252 composeCodeableConcept("reasonCode", e); 33253 } 33254 if (element.hasReasonReference()) { 33255 for (Reference e : element.getReasonReference()) 33256 composeReference("reasonReference", e); 33257 } 33258 if (element.hasDescriptionElement()) { 33259 composeString("description", element.getDescriptionElement()); 33260 } 33261 if (element.hasSupportingInfo()) { 33262 for (Reference e : element.getSupportingInfo()) 33263 composeReference("supportingInfo", e); 33264 } 33265 if (element.hasNote()) { 33266 for (Annotation e : element.getNote()) 33267 composeAnnotation("note", e); 33268 } 33269 if (element.hasRelevantHistory()) { 33270 for (Reference e : element.getRelevantHistory()) 33271 composeReference("relevantHistory", e); 33272 } 33273 } 33274 33275 protected void composeReferralRequestReferralRequestRequesterComponent(String name, ReferralRequest.ReferralRequestRequesterComponent element) throws IOException { 33276 if (element != null) { 33277 composeElementAttributes(element); 33278 xml.enter(FHIR_NS, name); 33279 composeReferralRequestReferralRequestRequesterComponentElements(element); 33280 composeElementClose(element); 33281 xml.exit(FHIR_NS, name); 33282 } 33283 } 33284 33285 protected void composeReferralRequestReferralRequestRequesterComponentElements(ReferralRequest.ReferralRequestRequesterComponent element) throws IOException { 33286 composeBackboneElements(element); 33287 if (element.hasAgent()) { 33288 composeReference("agent", element.getAgent()); 33289 } 33290 if (element.hasOnBehalfOf()) { 33291 composeReference("onBehalfOf", element.getOnBehalfOf()); 33292 } 33293 } 33294 33295 protected void composeRelatedPerson(String name, RelatedPerson element) throws IOException { 33296 if (element != null) { 33297 composeDomainResourceAttributes(element); 33298 xml.enter(FHIR_NS, name); 33299 composeRelatedPersonElements(element); 33300 composeElementClose(element); 33301 xml.exit(FHIR_NS, name); 33302 } 33303 } 33304 33305 protected void composeRelatedPersonElements(RelatedPerson element) throws IOException { 33306 composeDomainResourceElements(element); 33307 if (element.hasIdentifier()) { 33308 for (Identifier e : element.getIdentifier()) 33309 composeIdentifier("identifier", e); 33310 } 33311 if (element.hasActiveElement()) { 33312 composeBoolean("active", element.getActiveElement()); 33313 } 33314 if (element.hasPatient()) { 33315 composeReference("patient", element.getPatient()); 33316 } 33317 if (element.hasRelationship()) { 33318 composeCodeableConcept("relationship", element.getRelationship()); 33319 } 33320 if (element.hasName()) { 33321 for (HumanName e : element.getName()) 33322 composeHumanName("name", e); 33323 } 33324 if (element.hasTelecom()) { 33325 for (ContactPoint e : element.getTelecom()) 33326 composeContactPoint("telecom", e); 33327 } 33328 if (element.hasGenderElement()) 33329 composeEnumeration("gender", element.getGenderElement(), new Enumerations.AdministrativeGenderEnumFactory()); 33330 if (element.hasBirthDateElement()) { 33331 composeDate("birthDate", element.getBirthDateElement()); 33332 } 33333 if (element.hasAddress()) { 33334 for (Address e : element.getAddress()) 33335 composeAddress("address", e); 33336 } 33337 if (element.hasPhoto()) { 33338 for (Attachment e : element.getPhoto()) 33339 composeAttachment("photo", e); 33340 } 33341 if (element.hasPeriod()) { 33342 composePeriod("period", element.getPeriod()); 33343 } 33344 } 33345 33346 protected void composeRequestGroup(String name, RequestGroup element) throws IOException { 33347 if (element != null) { 33348 composeDomainResourceAttributes(element); 33349 xml.enter(FHIR_NS, name); 33350 composeRequestGroupElements(element); 33351 composeElementClose(element); 33352 xml.exit(FHIR_NS, name); 33353 } 33354 } 33355 33356 protected void composeRequestGroupElements(RequestGroup element) throws IOException { 33357 composeDomainResourceElements(element); 33358 if (element.hasIdentifier()) { 33359 for (Identifier e : element.getIdentifier()) 33360 composeIdentifier("identifier", e); 33361 } 33362 if (element.hasDefinition()) { 33363 for (Reference e : element.getDefinition()) 33364 composeReference("definition", e); 33365 } 33366 if (element.hasBasedOn()) { 33367 for (Reference e : element.getBasedOn()) 33368 composeReference("basedOn", e); 33369 } 33370 if (element.hasReplaces()) { 33371 for (Reference e : element.getReplaces()) 33372 composeReference("replaces", e); 33373 } 33374 if (element.hasGroupIdentifier()) { 33375 composeIdentifier("groupIdentifier", element.getGroupIdentifier()); 33376 } 33377 if (element.hasStatusElement()) 33378 composeEnumeration("status", element.getStatusElement(), new RequestGroup.RequestStatusEnumFactory()); 33379 if (element.hasIntentElement()) 33380 composeEnumeration("intent", element.getIntentElement(), new RequestGroup.RequestIntentEnumFactory()); 33381 if (element.hasPriorityElement()) 33382 composeEnumeration("priority", element.getPriorityElement(), new RequestGroup.RequestPriorityEnumFactory()); 33383 if (element.hasSubject()) { 33384 composeReference("subject", element.getSubject()); 33385 } 33386 if (element.hasContext()) { 33387 composeReference("context", element.getContext()); 33388 } 33389 if (element.hasAuthoredOnElement()) { 33390 composeDateTime("authoredOn", element.getAuthoredOnElement()); 33391 } 33392 if (element.hasAuthor()) { 33393 composeReference("author", element.getAuthor()); 33394 } 33395 if (element.hasReason()) { 33396 composeType("reason", element.getReason()); 33397 } if (element.hasNote()) { 33398 for (Annotation e : element.getNote()) 33399 composeAnnotation("note", e); 33400 } 33401 if (element.hasAction()) { 33402 for (RequestGroup.RequestGroupActionComponent e : element.getAction()) 33403 composeRequestGroupRequestGroupActionComponent("action", e); 33404 } 33405 } 33406 33407 protected void composeRequestGroupRequestGroupActionComponent(String name, RequestGroup.RequestGroupActionComponent element) throws IOException { 33408 if (element != null) { 33409 composeElementAttributes(element); 33410 xml.enter(FHIR_NS, name); 33411 composeRequestGroupRequestGroupActionComponentElements(element); 33412 composeElementClose(element); 33413 xml.exit(FHIR_NS, name); 33414 } 33415 } 33416 33417 protected void composeRequestGroupRequestGroupActionComponentElements(RequestGroup.RequestGroupActionComponent element) throws IOException { 33418 composeBackboneElements(element); 33419 if (element.hasLabelElement()) { 33420 composeString("label", element.getLabelElement()); 33421 } 33422 if (element.hasTitleElement()) { 33423 composeString("title", element.getTitleElement()); 33424 } 33425 if (element.hasDescriptionElement()) { 33426 composeString("description", element.getDescriptionElement()); 33427 } 33428 if (element.hasTextEquivalentElement()) { 33429 composeString("textEquivalent", element.getTextEquivalentElement()); 33430 } 33431 if (element.hasCode()) { 33432 for (CodeableConcept e : element.getCode()) 33433 composeCodeableConcept("code", e); 33434 } 33435 if (element.hasDocumentation()) { 33436 for (RelatedArtifact e : element.getDocumentation()) 33437 composeRelatedArtifact("documentation", e); 33438 } 33439 if (element.hasCondition()) { 33440 for (RequestGroup.RequestGroupActionConditionComponent e : element.getCondition()) 33441 composeRequestGroupRequestGroupActionConditionComponent("condition", e); 33442 } 33443 if (element.hasRelatedAction()) { 33444 for (RequestGroup.RequestGroupActionRelatedActionComponent e : element.getRelatedAction()) 33445 composeRequestGroupRequestGroupActionRelatedActionComponent("relatedAction", e); 33446 } 33447 if (element.hasTiming()) { 33448 composeType("timing", element.getTiming()); 33449 } if (element.hasParticipant()) { 33450 for (Reference e : element.getParticipant()) 33451 composeReference("participant", e); 33452 } 33453 if (element.hasType()) { 33454 composeCoding("type", element.getType()); 33455 } 33456 if (element.hasGroupingBehaviorElement()) 33457 composeEnumeration("groupingBehavior", element.getGroupingBehaviorElement(), new RequestGroup.ActionGroupingBehaviorEnumFactory()); 33458 if (element.hasSelectionBehaviorElement()) 33459 composeEnumeration("selectionBehavior", element.getSelectionBehaviorElement(), new RequestGroup.ActionSelectionBehaviorEnumFactory()); 33460 if (element.hasRequiredBehaviorElement()) 33461 composeEnumeration("requiredBehavior", element.getRequiredBehaviorElement(), new RequestGroup.ActionRequiredBehaviorEnumFactory()); 33462 if (element.hasPrecheckBehaviorElement()) 33463 composeEnumeration("precheckBehavior", element.getPrecheckBehaviorElement(), new RequestGroup.ActionPrecheckBehaviorEnumFactory()); 33464 if (element.hasCardinalityBehaviorElement()) 33465 composeEnumeration("cardinalityBehavior", element.getCardinalityBehaviorElement(), new RequestGroup.ActionCardinalityBehaviorEnumFactory()); 33466 if (element.hasResource()) { 33467 composeReference("resource", element.getResource()); 33468 } 33469 if (element.hasAction()) { 33470 for (RequestGroup.RequestGroupActionComponent e : element.getAction()) 33471 composeRequestGroupRequestGroupActionComponent("action", e); 33472 } 33473 } 33474 33475 protected void composeRequestGroupRequestGroupActionConditionComponent(String name, RequestGroup.RequestGroupActionConditionComponent element) throws IOException { 33476 if (element != null) { 33477 composeElementAttributes(element); 33478 xml.enter(FHIR_NS, name); 33479 composeRequestGroupRequestGroupActionConditionComponentElements(element); 33480 composeElementClose(element); 33481 xml.exit(FHIR_NS, name); 33482 } 33483 } 33484 33485 protected void composeRequestGroupRequestGroupActionConditionComponentElements(RequestGroup.RequestGroupActionConditionComponent element) throws IOException { 33486 composeBackboneElements(element); 33487 if (element.hasKindElement()) 33488 composeEnumeration("kind", element.getKindElement(), new RequestGroup.ActionConditionKindEnumFactory()); 33489 if (element.hasDescriptionElement()) { 33490 composeString("description", element.getDescriptionElement()); 33491 } 33492 if (element.hasLanguageElement()) { 33493 composeString("language", element.getLanguageElement()); 33494 } 33495 if (element.hasExpressionElement()) { 33496 composeString("expression", element.getExpressionElement()); 33497 } 33498 } 33499 33500 protected void composeRequestGroupRequestGroupActionRelatedActionComponent(String name, RequestGroup.RequestGroupActionRelatedActionComponent element) throws IOException { 33501 if (element != null) { 33502 composeElementAttributes(element); 33503 xml.enter(FHIR_NS, name); 33504 composeRequestGroupRequestGroupActionRelatedActionComponentElements(element); 33505 composeElementClose(element); 33506 xml.exit(FHIR_NS, name); 33507 } 33508 } 33509 33510 protected void composeRequestGroupRequestGroupActionRelatedActionComponentElements(RequestGroup.RequestGroupActionRelatedActionComponent element) throws IOException { 33511 composeBackboneElements(element); 33512 if (element.hasActionIdElement()) { 33513 composeId("actionId", element.getActionIdElement()); 33514 } 33515 if (element.hasRelationshipElement()) 33516 composeEnumeration("relationship", element.getRelationshipElement(), new RequestGroup.ActionRelationshipTypeEnumFactory()); 33517 if (element.hasOffset()) { 33518 composeType("offset", element.getOffset()); 33519 } } 33520 33521 protected void composeResearchStudy(String name, ResearchStudy element) throws IOException { 33522 if (element != null) { 33523 composeDomainResourceAttributes(element); 33524 xml.enter(FHIR_NS, name); 33525 composeResearchStudyElements(element); 33526 composeElementClose(element); 33527 xml.exit(FHIR_NS, name); 33528 } 33529 } 33530 33531 protected void composeResearchStudyElements(ResearchStudy element) throws IOException { 33532 composeDomainResourceElements(element); 33533 if (element.hasIdentifier()) { 33534 for (Identifier e : element.getIdentifier()) 33535 composeIdentifier("identifier", e); 33536 } 33537 if (element.hasTitleElement()) { 33538 composeString("title", element.getTitleElement()); 33539 } 33540 if (element.hasProtocol()) { 33541 for (Reference e : element.getProtocol()) 33542 composeReference("protocol", e); 33543 } 33544 if (element.hasPartOf()) { 33545 for (Reference e : element.getPartOf()) 33546 composeReference("partOf", e); 33547 } 33548 if (element.hasStatusElement()) 33549 composeEnumeration("status", element.getStatusElement(), new ResearchStudy.ResearchStudyStatusEnumFactory()); 33550 if (element.hasCategory()) { 33551 for (CodeableConcept e : element.getCategory()) 33552 composeCodeableConcept("category", e); 33553 } 33554 if (element.hasFocus()) { 33555 for (CodeableConcept e : element.getFocus()) 33556 composeCodeableConcept("focus", e); 33557 } 33558 if (element.hasContact()) { 33559 for (ContactDetail e : element.getContact()) 33560 composeContactDetail("contact", e); 33561 } 33562 if (element.hasRelatedArtifact()) { 33563 for (RelatedArtifact e : element.getRelatedArtifact()) 33564 composeRelatedArtifact("relatedArtifact", e); 33565 } 33566 if (element.hasKeyword()) { 33567 for (CodeableConcept e : element.getKeyword()) 33568 composeCodeableConcept("keyword", e); 33569 } 33570 if (element.hasJurisdiction()) { 33571 for (CodeableConcept e : element.getJurisdiction()) 33572 composeCodeableConcept("jurisdiction", e); 33573 } 33574 if (element.hasDescriptionElement()) { 33575 composeMarkdown("description", element.getDescriptionElement()); 33576 } 33577 if (element.hasEnrollment()) { 33578 for (Reference e : element.getEnrollment()) 33579 composeReference("enrollment", e); 33580 } 33581 if (element.hasPeriod()) { 33582 composePeriod("period", element.getPeriod()); 33583 } 33584 if (element.hasSponsor()) { 33585 composeReference("sponsor", element.getSponsor()); 33586 } 33587 if (element.hasPrincipalInvestigator()) { 33588 composeReference("principalInvestigator", element.getPrincipalInvestigator()); 33589 } 33590 if (element.hasSite()) { 33591 for (Reference e : element.getSite()) 33592 composeReference("site", e); 33593 } 33594 if (element.hasReasonStopped()) { 33595 composeCodeableConcept("reasonStopped", element.getReasonStopped()); 33596 } 33597 if (element.hasNote()) { 33598 for (Annotation e : element.getNote()) 33599 composeAnnotation("note", e); 33600 } 33601 if (element.hasArm()) { 33602 for (ResearchStudy.ResearchStudyArmComponent e : element.getArm()) 33603 composeResearchStudyResearchStudyArmComponent("arm", e); 33604 } 33605 } 33606 33607 protected void composeResearchStudyResearchStudyArmComponent(String name, ResearchStudy.ResearchStudyArmComponent element) throws IOException { 33608 if (element != null) { 33609 composeElementAttributes(element); 33610 xml.enter(FHIR_NS, name); 33611 composeResearchStudyResearchStudyArmComponentElements(element); 33612 composeElementClose(element); 33613 xml.exit(FHIR_NS, name); 33614 } 33615 } 33616 33617 protected void composeResearchStudyResearchStudyArmComponentElements(ResearchStudy.ResearchStudyArmComponent element) throws IOException { 33618 composeBackboneElements(element); 33619 if (element.hasNameElement()) { 33620 composeString("name", element.getNameElement()); 33621 } 33622 if (element.hasCode()) { 33623 composeCodeableConcept("code", element.getCode()); 33624 } 33625 if (element.hasDescriptionElement()) { 33626 composeString("description", element.getDescriptionElement()); 33627 } 33628 } 33629 33630 protected void composeResearchSubject(String name, ResearchSubject element) throws IOException { 33631 if (element != null) { 33632 composeDomainResourceAttributes(element); 33633 xml.enter(FHIR_NS, name); 33634 composeResearchSubjectElements(element); 33635 composeElementClose(element); 33636 xml.exit(FHIR_NS, name); 33637 } 33638 } 33639 33640 protected void composeResearchSubjectElements(ResearchSubject element) throws IOException { 33641 composeDomainResourceElements(element); 33642 if (element.hasIdentifier()) { 33643 composeIdentifier("identifier", element.getIdentifier()); 33644 } 33645 if (element.hasStatusElement()) 33646 composeEnumeration("status", element.getStatusElement(), new ResearchSubject.ResearchSubjectStatusEnumFactory()); 33647 if (element.hasPeriod()) { 33648 composePeriod("period", element.getPeriod()); 33649 } 33650 if (element.hasStudy()) { 33651 composeReference("study", element.getStudy()); 33652 } 33653 if (element.hasIndividual()) { 33654 composeReference("individual", element.getIndividual()); 33655 } 33656 if (element.hasAssignedArmElement()) { 33657 composeString("assignedArm", element.getAssignedArmElement()); 33658 } 33659 if (element.hasActualArmElement()) { 33660 composeString("actualArm", element.getActualArmElement()); 33661 } 33662 if (element.hasConsent()) { 33663 composeReference("consent", element.getConsent()); 33664 } 33665 } 33666 33667 protected void composeRiskAssessment(String name, RiskAssessment element) throws IOException { 33668 if (element != null) { 33669 composeDomainResourceAttributes(element); 33670 xml.enter(FHIR_NS, name); 33671 composeRiskAssessmentElements(element); 33672 composeElementClose(element); 33673 xml.exit(FHIR_NS, name); 33674 } 33675 } 33676 33677 protected void composeRiskAssessmentElements(RiskAssessment element) throws IOException { 33678 composeDomainResourceElements(element); 33679 if (element.hasIdentifier()) { 33680 composeIdentifier("identifier", element.getIdentifier()); 33681 } 33682 if (element.hasBasedOn()) { 33683 composeReference("basedOn", element.getBasedOn()); 33684 } 33685 if (element.hasParent()) { 33686 composeReference("parent", element.getParent()); 33687 } 33688 if (element.hasStatusElement()) 33689 composeEnumeration("status", element.getStatusElement(), new RiskAssessment.RiskAssessmentStatusEnumFactory()); 33690 if (element.hasMethod()) { 33691 composeCodeableConcept("method", element.getMethod()); 33692 } 33693 if (element.hasCode()) { 33694 composeCodeableConcept("code", element.getCode()); 33695 } 33696 if (element.hasSubject()) { 33697 composeReference("subject", element.getSubject()); 33698 } 33699 if (element.hasContext()) { 33700 composeReference("context", element.getContext()); 33701 } 33702 if (element.hasOccurrence()) { 33703 composeType("occurrence", element.getOccurrence()); 33704 } if (element.hasCondition()) { 33705 composeReference("condition", element.getCondition()); 33706 } 33707 if (element.hasPerformer()) { 33708 composeReference("performer", element.getPerformer()); 33709 } 33710 if (element.hasReason()) { 33711 composeType("reason", element.getReason()); 33712 } if (element.hasBasis()) { 33713 for (Reference e : element.getBasis()) 33714 composeReference("basis", e); 33715 } 33716 if (element.hasPrediction()) { 33717 for (RiskAssessment.RiskAssessmentPredictionComponent e : element.getPrediction()) 33718 composeRiskAssessmentRiskAssessmentPredictionComponent("prediction", e); 33719 } 33720 if (element.hasMitigationElement()) { 33721 composeString("mitigation", element.getMitigationElement()); 33722 } 33723 if (element.hasCommentElement()) { 33724 composeString("comment", element.getCommentElement()); 33725 } 33726 } 33727 33728 protected void composeRiskAssessmentRiskAssessmentPredictionComponent(String name, RiskAssessment.RiskAssessmentPredictionComponent element) throws IOException { 33729 if (element != null) { 33730 composeElementAttributes(element); 33731 xml.enter(FHIR_NS, name); 33732 composeRiskAssessmentRiskAssessmentPredictionComponentElements(element); 33733 composeElementClose(element); 33734 xml.exit(FHIR_NS, name); 33735 } 33736 } 33737 33738 protected void composeRiskAssessmentRiskAssessmentPredictionComponentElements(RiskAssessment.RiskAssessmentPredictionComponent element) throws IOException { 33739 composeBackboneElements(element); 33740 if (element.hasOutcome()) { 33741 composeCodeableConcept("outcome", element.getOutcome()); 33742 } 33743 if (element.hasProbability()) { 33744 composeType("probability", element.getProbability()); 33745 } if (element.hasQualitativeRisk()) { 33746 composeCodeableConcept("qualitativeRisk", element.getQualitativeRisk()); 33747 } 33748 if (element.hasRelativeRiskElement()) { 33749 composeDecimal("relativeRisk", element.getRelativeRiskElement()); 33750 } 33751 if (element.hasWhen()) { 33752 composeType("when", element.getWhen()); 33753 } if (element.hasRationaleElement()) { 33754 composeString("rationale", element.getRationaleElement()); 33755 } 33756 } 33757 33758 protected void composeSchedule(String name, Schedule element) throws IOException { 33759 if (element != null) { 33760 composeDomainResourceAttributes(element); 33761 xml.enter(FHIR_NS, name); 33762 composeScheduleElements(element); 33763 composeElementClose(element); 33764 xml.exit(FHIR_NS, name); 33765 } 33766 } 33767 33768 protected void composeScheduleElements(Schedule element) throws IOException { 33769 composeDomainResourceElements(element); 33770 if (element.hasIdentifier()) { 33771 for (Identifier e : element.getIdentifier()) 33772 composeIdentifier("identifier", e); 33773 } 33774 if (element.hasActiveElement()) { 33775 composeBoolean("active", element.getActiveElement()); 33776 } 33777 if (element.hasServiceCategory()) { 33778 composeCodeableConcept("serviceCategory", element.getServiceCategory()); 33779 } 33780 if (element.hasServiceType()) { 33781 for (CodeableConcept e : element.getServiceType()) 33782 composeCodeableConcept("serviceType", e); 33783 } 33784 if (element.hasSpecialty()) { 33785 for (CodeableConcept e : element.getSpecialty()) 33786 composeCodeableConcept("specialty", e); 33787 } 33788 if (element.hasActor()) { 33789 for (Reference e : element.getActor()) 33790 composeReference("actor", e); 33791 } 33792 if (element.hasPlanningHorizon()) { 33793 composePeriod("planningHorizon", element.getPlanningHorizon()); 33794 } 33795 if (element.hasCommentElement()) { 33796 composeString("comment", element.getCommentElement()); 33797 } 33798 } 33799 33800 protected void composeSearchParameter(String name, SearchParameter element) throws IOException { 33801 if (element != null) { 33802 composeDomainResourceAttributes(element); 33803 xml.enter(FHIR_NS, name); 33804 composeSearchParameterElements(element); 33805 composeElementClose(element); 33806 xml.exit(FHIR_NS, name); 33807 } 33808 } 33809 33810 protected void composeSearchParameterElements(SearchParameter element) throws IOException { 33811 composeDomainResourceElements(element); 33812 if (element.hasUrlElement()) { 33813 composeUri("url", element.getUrlElement()); 33814 } 33815 if (element.hasVersionElement()) { 33816 composeString("version", element.getVersionElement()); 33817 } 33818 if (element.hasNameElement()) { 33819 composeString("name", element.getNameElement()); 33820 } 33821 if (element.hasStatusElement()) 33822 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 33823 if (element.hasExperimentalElement()) { 33824 composeBoolean("experimental", element.getExperimentalElement()); 33825 } 33826 if (element.hasDateElement()) { 33827 composeDateTime("date", element.getDateElement()); 33828 } 33829 if (element.hasPublisherElement()) { 33830 composeString("publisher", element.getPublisherElement()); 33831 } 33832 if (element.hasContact()) { 33833 for (ContactDetail e : element.getContact()) 33834 composeContactDetail("contact", e); 33835 } 33836 if (element.hasUseContext()) { 33837 for (UsageContext e : element.getUseContext()) 33838 composeUsageContext("useContext", e); 33839 } 33840 if (element.hasJurisdiction()) { 33841 for (CodeableConcept e : element.getJurisdiction()) 33842 composeCodeableConcept("jurisdiction", e); 33843 } 33844 if (element.hasPurposeElement()) { 33845 composeMarkdown("purpose", element.getPurposeElement()); 33846 } 33847 if (element.hasCodeElement()) { 33848 composeCode("code", element.getCodeElement()); 33849 } 33850 if (element.hasBase()) { 33851 for (CodeType e : element.getBase()) 33852 composeCode("base", e); 33853 } 33854 if (element.hasTypeElement()) 33855 composeEnumeration("type", element.getTypeElement(), new Enumerations.SearchParamTypeEnumFactory()); 33856 if (element.hasDerivedFromElement()) { 33857 composeUri("derivedFrom", element.getDerivedFromElement()); 33858 } 33859 if (element.hasDescriptionElement()) { 33860 composeMarkdown("description", element.getDescriptionElement()); 33861 } 33862 if (element.hasExpressionElement()) { 33863 composeString("expression", element.getExpressionElement()); 33864 } 33865 if (element.hasXpathElement()) { 33866 composeString("xpath", element.getXpathElement()); 33867 } 33868 if (element.hasXpathUsageElement()) 33869 composeEnumeration("xpathUsage", element.getXpathUsageElement(), new SearchParameter.XPathUsageTypeEnumFactory()); 33870 if (element.hasTarget()) { 33871 for (CodeType e : element.getTarget()) 33872 composeCode("target", e); 33873 } 33874 if (element.hasComparator()) 33875 for (Enumeration<SearchParameter.SearchComparator> e : element.getComparator()) 33876 composeEnumeration("comparator", e, new SearchParameter.SearchComparatorEnumFactory()); 33877 if (element.hasModifier()) 33878 for (Enumeration<SearchParameter.SearchModifierCode> e : element.getModifier()) 33879 composeEnumeration("modifier", e, new SearchParameter.SearchModifierCodeEnumFactory()); 33880 if (element.hasChain()) { 33881 for (StringType e : element.getChain()) 33882 composeString("chain", e); 33883 } 33884 if (element.hasComponent()) { 33885 for (SearchParameter.SearchParameterComponentComponent e : element.getComponent()) 33886 composeSearchParameterSearchParameterComponentComponent("component", e); 33887 } 33888 } 33889 33890 protected void composeSearchParameterSearchParameterComponentComponent(String name, SearchParameter.SearchParameterComponentComponent element) throws IOException { 33891 if (element != null) { 33892 composeElementAttributes(element); 33893 xml.enter(FHIR_NS, name); 33894 composeSearchParameterSearchParameterComponentComponentElements(element); 33895 composeElementClose(element); 33896 xml.exit(FHIR_NS, name); 33897 } 33898 } 33899 33900 protected void composeSearchParameterSearchParameterComponentComponentElements(SearchParameter.SearchParameterComponentComponent element) throws IOException { 33901 composeBackboneElements(element); 33902 if (element.hasDefinition()) { 33903 composeReference("definition", element.getDefinition()); 33904 } 33905 if (element.hasExpressionElement()) { 33906 composeString("expression", element.getExpressionElement()); 33907 } 33908 } 33909 33910 protected void composeSequence(String name, Sequence element) throws IOException { 33911 if (element != null) { 33912 composeDomainResourceAttributes(element); 33913 xml.enter(FHIR_NS, name); 33914 composeSequenceElements(element); 33915 composeElementClose(element); 33916 xml.exit(FHIR_NS, name); 33917 } 33918 } 33919 33920 protected void composeSequenceElements(Sequence element) throws IOException { 33921 composeDomainResourceElements(element); 33922 if (element.hasIdentifier()) { 33923 for (Identifier e : element.getIdentifier()) 33924 composeIdentifier("identifier", e); 33925 } 33926 if (element.hasTypeElement()) 33927 composeEnumeration("type", element.getTypeElement(), new Sequence.SequenceTypeEnumFactory()); 33928 if (element.hasCoordinateSystemElement()) { 33929 composeInteger("coordinateSystem", element.getCoordinateSystemElement()); 33930 } 33931 if (element.hasPatient()) { 33932 composeReference("patient", element.getPatient()); 33933 } 33934 if (element.hasSpecimen()) { 33935 composeReference("specimen", element.getSpecimen()); 33936 } 33937 if (element.hasDevice()) { 33938 composeReference("device", element.getDevice()); 33939 } 33940 if (element.hasPerformer()) { 33941 composeReference("performer", element.getPerformer()); 33942 } 33943 if (element.hasQuantity()) { 33944 composeQuantity("quantity", element.getQuantity()); 33945 } 33946 if (element.hasReferenceSeq()) { 33947 composeSequenceSequenceReferenceSeqComponent("referenceSeq", element.getReferenceSeq()); 33948 } 33949 if (element.hasVariant()) { 33950 for (Sequence.SequenceVariantComponent e : element.getVariant()) 33951 composeSequenceSequenceVariantComponent("variant", e); 33952 } 33953 if (element.hasObservedSeqElement()) { 33954 composeString("observedSeq", element.getObservedSeqElement()); 33955 } 33956 if (element.hasQuality()) { 33957 for (Sequence.SequenceQualityComponent e : element.getQuality()) 33958 composeSequenceSequenceQualityComponent("quality", e); 33959 } 33960 if (element.hasReadCoverageElement()) { 33961 composeInteger("readCoverage", element.getReadCoverageElement()); 33962 } 33963 if (element.hasRepository()) { 33964 for (Sequence.SequenceRepositoryComponent e : element.getRepository()) 33965 composeSequenceSequenceRepositoryComponent("repository", e); 33966 } 33967 if (element.hasPointer()) { 33968 for (Reference e : element.getPointer()) 33969 composeReference("pointer", e); 33970 } 33971 } 33972 33973 protected void composeSequenceSequenceReferenceSeqComponent(String name, Sequence.SequenceReferenceSeqComponent element) throws IOException { 33974 if (element != null) { 33975 composeElementAttributes(element); 33976 xml.enter(FHIR_NS, name); 33977 composeSequenceSequenceReferenceSeqComponentElements(element); 33978 composeElementClose(element); 33979 xml.exit(FHIR_NS, name); 33980 } 33981 } 33982 33983 protected void composeSequenceSequenceReferenceSeqComponentElements(Sequence.SequenceReferenceSeqComponent element) throws IOException { 33984 composeBackboneElements(element); 33985 if (element.hasChromosome()) { 33986 composeCodeableConcept("chromosome", element.getChromosome()); 33987 } 33988 if (element.hasGenomeBuildElement()) { 33989 composeString("genomeBuild", element.getGenomeBuildElement()); 33990 } 33991 if (element.hasReferenceSeqId()) { 33992 composeCodeableConcept("referenceSeqId", element.getReferenceSeqId()); 33993 } 33994 if (element.hasReferenceSeqPointer()) { 33995 composeReference("referenceSeqPointer", element.getReferenceSeqPointer()); 33996 } 33997 if (element.hasReferenceSeqStringElement()) { 33998 composeString("referenceSeqString", element.getReferenceSeqStringElement()); 33999 } 34000 if (element.hasStrandElement()) { 34001 composeInteger("strand", element.getStrandElement()); 34002 } 34003 if (element.hasWindowStartElement()) { 34004 composeInteger("windowStart", element.getWindowStartElement()); 34005 } 34006 if (element.hasWindowEndElement()) { 34007 composeInteger("windowEnd", element.getWindowEndElement()); 34008 } 34009 } 34010 34011 protected void composeSequenceSequenceVariantComponent(String name, Sequence.SequenceVariantComponent element) throws IOException { 34012 if (element != null) { 34013 composeElementAttributes(element); 34014 xml.enter(FHIR_NS, name); 34015 composeSequenceSequenceVariantComponentElements(element); 34016 composeElementClose(element); 34017 xml.exit(FHIR_NS, name); 34018 } 34019 } 34020 34021 protected void composeSequenceSequenceVariantComponentElements(Sequence.SequenceVariantComponent element) throws IOException { 34022 composeBackboneElements(element); 34023 if (element.hasStartElement()) { 34024 composeInteger("start", element.getStartElement()); 34025 } 34026 if (element.hasEndElement()) { 34027 composeInteger("end", element.getEndElement()); 34028 } 34029 if (element.hasObservedAlleleElement()) { 34030 composeString("observedAllele", element.getObservedAlleleElement()); 34031 } 34032 if (element.hasReferenceAlleleElement()) { 34033 composeString("referenceAllele", element.getReferenceAlleleElement()); 34034 } 34035 if (element.hasCigarElement()) { 34036 composeString("cigar", element.getCigarElement()); 34037 } 34038 if (element.hasVariantPointer()) { 34039 composeReference("variantPointer", element.getVariantPointer()); 34040 } 34041 } 34042 34043 protected void composeSequenceSequenceQualityComponent(String name, Sequence.SequenceQualityComponent element) throws IOException { 34044 if (element != null) { 34045 composeElementAttributes(element); 34046 xml.enter(FHIR_NS, name); 34047 composeSequenceSequenceQualityComponentElements(element); 34048 composeElementClose(element); 34049 xml.exit(FHIR_NS, name); 34050 } 34051 } 34052 34053 protected void composeSequenceSequenceQualityComponentElements(Sequence.SequenceQualityComponent element) throws IOException { 34054 composeBackboneElements(element); 34055 if (element.hasTypeElement()) 34056 composeEnumeration("type", element.getTypeElement(), new Sequence.QualityTypeEnumFactory()); 34057 if (element.hasStandardSequence()) { 34058 composeCodeableConcept("standardSequence", element.getStandardSequence()); 34059 } 34060 if (element.hasStartElement()) { 34061 composeInteger("start", element.getStartElement()); 34062 } 34063 if (element.hasEndElement()) { 34064 composeInteger("end", element.getEndElement()); 34065 } 34066 if (element.hasScore()) { 34067 composeQuantity("score", element.getScore()); 34068 } 34069 if (element.hasMethod()) { 34070 composeCodeableConcept("method", element.getMethod()); 34071 } 34072 if (element.hasTruthTPElement()) { 34073 composeDecimal("truthTP", element.getTruthTPElement()); 34074 } 34075 if (element.hasQueryTPElement()) { 34076 composeDecimal("queryTP", element.getQueryTPElement()); 34077 } 34078 if (element.hasTruthFNElement()) { 34079 composeDecimal("truthFN", element.getTruthFNElement()); 34080 } 34081 if (element.hasQueryFPElement()) { 34082 composeDecimal("queryFP", element.getQueryFPElement()); 34083 } 34084 if (element.hasGtFPElement()) { 34085 composeDecimal("gtFP", element.getGtFPElement()); 34086 } 34087 if (element.hasPrecisionElement()) { 34088 composeDecimal("precision", element.getPrecisionElement()); 34089 } 34090 if (element.hasRecallElement()) { 34091 composeDecimal("recall", element.getRecallElement()); 34092 } 34093 if (element.hasFScoreElement()) { 34094 composeDecimal("fScore", element.getFScoreElement()); 34095 } 34096 } 34097 34098 protected void composeSequenceSequenceRepositoryComponent(String name, Sequence.SequenceRepositoryComponent element) throws IOException { 34099 if (element != null) { 34100 composeElementAttributes(element); 34101 xml.enter(FHIR_NS, name); 34102 composeSequenceSequenceRepositoryComponentElements(element); 34103 composeElementClose(element); 34104 xml.exit(FHIR_NS, name); 34105 } 34106 } 34107 34108 protected void composeSequenceSequenceRepositoryComponentElements(Sequence.SequenceRepositoryComponent element) throws IOException { 34109 composeBackboneElements(element); 34110 if (element.hasTypeElement()) 34111 composeEnumeration("type", element.getTypeElement(), new Sequence.RepositoryTypeEnumFactory()); 34112 if (element.hasUrlElement()) { 34113 composeUri("url", element.getUrlElement()); 34114 } 34115 if (element.hasNameElement()) { 34116 composeString("name", element.getNameElement()); 34117 } 34118 if (element.hasDatasetIdElement()) { 34119 composeString("datasetId", element.getDatasetIdElement()); 34120 } 34121 if (element.hasVariantsetIdElement()) { 34122 composeString("variantsetId", element.getVariantsetIdElement()); 34123 } 34124 if (element.hasReadsetIdElement()) { 34125 composeString("readsetId", element.getReadsetIdElement()); 34126 } 34127 } 34128 34129 protected void composeServiceDefinition(String name, ServiceDefinition element) throws IOException { 34130 if (element != null) { 34131 composeDomainResourceAttributes(element); 34132 xml.enter(FHIR_NS, name); 34133 composeServiceDefinitionElements(element); 34134 composeElementClose(element); 34135 xml.exit(FHIR_NS, name); 34136 } 34137 } 34138 34139 protected void composeServiceDefinitionElements(ServiceDefinition element) throws IOException { 34140 composeDomainResourceElements(element); 34141 if (element.hasUrlElement()) { 34142 composeUri("url", element.getUrlElement()); 34143 } 34144 if (element.hasIdentifier()) { 34145 for (Identifier e : element.getIdentifier()) 34146 composeIdentifier("identifier", e); 34147 } 34148 if (element.hasVersionElement()) { 34149 composeString("version", element.getVersionElement()); 34150 } 34151 if (element.hasNameElement()) { 34152 composeString("name", element.getNameElement()); 34153 } 34154 if (element.hasTitleElement()) { 34155 composeString("title", element.getTitleElement()); 34156 } 34157 if (element.hasStatusElement()) 34158 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 34159 if (element.hasExperimentalElement()) { 34160 composeBoolean("experimental", element.getExperimentalElement()); 34161 } 34162 if (element.hasDateElement()) { 34163 composeDateTime("date", element.getDateElement()); 34164 } 34165 if (element.hasPublisherElement()) { 34166 composeString("publisher", element.getPublisherElement()); 34167 } 34168 if (element.hasDescriptionElement()) { 34169 composeMarkdown("description", element.getDescriptionElement()); 34170 } 34171 if (element.hasPurposeElement()) { 34172 composeMarkdown("purpose", element.getPurposeElement()); 34173 } 34174 if (element.hasUsageElement()) { 34175 composeString("usage", element.getUsageElement()); 34176 } 34177 if (element.hasApprovalDateElement()) { 34178 composeDate("approvalDate", element.getApprovalDateElement()); 34179 } 34180 if (element.hasLastReviewDateElement()) { 34181 composeDate("lastReviewDate", element.getLastReviewDateElement()); 34182 } 34183 if (element.hasEffectivePeriod()) { 34184 composePeriod("effectivePeriod", element.getEffectivePeriod()); 34185 } 34186 if (element.hasUseContext()) { 34187 for (UsageContext e : element.getUseContext()) 34188 composeUsageContext("useContext", e); 34189 } 34190 if (element.hasJurisdiction()) { 34191 for (CodeableConcept e : element.getJurisdiction()) 34192 composeCodeableConcept("jurisdiction", e); 34193 } 34194 if (element.hasTopic()) { 34195 for (CodeableConcept e : element.getTopic()) 34196 composeCodeableConcept("topic", e); 34197 } 34198 if (element.hasContributor()) { 34199 for (Contributor e : element.getContributor()) 34200 composeContributor("contributor", e); 34201 } 34202 if (element.hasContact()) { 34203 for (ContactDetail e : element.getContact()) 34204 composeContactDetail("contact", e); 34205 } 34206 if (element.hasCopyrightElement()) { 34207 composeMarkdown("copyright", element.getCopyrightElement()); 34208 } 34209 if (element.hasRelatedArtifact()) { 34210 for (RelatedArtifact e : element.getRelatedArtifact()) 34211 composeRelatedArtifact("relatedArtifact", e); 34212 } 34213 if (element.hasTrigger()) { 34214 for (TriggerDefinition e : element.getTrigger()) 34215 composeTriggerDefinition("trigger", e); 34216 } 34217 if (element.hasDataRequirement()) { 34218 for (DataRequirement e : element.getDataRequirement()) 34219 composeDataRequirement("dataRequirement", e); 34220 } 34221 if (element.hasOperationDefinition()) { 34222 composeReference("operationDefinition", element.getOperationDefinition()); 34223 } 34224 } 34225 34226 protected void composeSlot(String name, Slot element) throws IOException { 34227 if (element != null) { 34228 composeDomainResourceAttributes(element); 34229 xml.enter(FHIR_NS, name); 34230 composeSlotElements(element); 34231 composeElementClose(element); 34232 xml.exit(FHIR_NS, name); 34233 } 34234 } 34235 34236 protected void composeSlotElements(Slot element) throws IOException { 34237 composeDomainResourceElements(element); 34238 if (element.hasIdentifier()) { 34239 for (Identifier e : element.getIdentifier()) 34240 composeIdentifier("identifier", e); 34241 } 34242 if (element.hasServiceCategory()) { 34243 composeCodeableConcept("serviceCategory", element.getServiceCategory()); 34244 } 34245 if (element.hasServiceType()) { 34246 for (CodeableConcept e : element.getServiceType()) 34247 composeCodeableConcept("serviceType", e); 34248 } 34249 if (element.hasSpecialty()) { 34250 for (CodeableConcept e : element.getSpecialty()) 34251 composeCodeableConcept("specialty", e); 34252 } 34253 if (element.hasAppointmentType()) { 34254 composeCodeableConcept("appointmentType", element.getAppointmentType()); 34255 } 34256 if (element.hasSchedule()) { 34257 composeReference("schedule", element.getSchedule()); 34258 } 34259 if (element.hasStatusElement()) 34260 composeEnumeration("status", element.getStatusElement(), new Slot.SlotStatusEnumFactory()); 34261 if (element.hasStartElement()) { 34262 composeInstant("start", element.getStartElement()); 34263 } 34264 if (element.hasEndElement()) { 34265 composeInstant("end", element.getEndElement()); 34266 } 34267 if (element.hasOverbookedElement()) { 34268 composeBoolean("overbooked", element.getOverbookedElement()); 34269 } 34270 if (element.hasCommentElement()) { 34271 composeString("comment", element.getCommentElement()); 34272 } 34273 } 34274 34275 protected void composeSpecimen(String name, Specimen element) throws IOException { 34276 if (element != null) { 34277 composeDomainResourceAttributes(element); 34278 xml.enter(FHIR_NS, name); 34279 composeSpecimenElements(element); 34280 composeElementClose(element); 34281 xml.exit(FHIR_NS, name); 34282 } 34283 } 34284 34285 protected void composeSpecimenElements(Specimen element) throws IOException { 34286 composeDomainResourceElements(element); 34287 if (element.hasIdentifier()) { 34288 for (Identifier e : element.getIdentifier()) 34289 composeIdentifier("identifier", e); 34290 } 34291 if (element.hasAccessionIdentifier()) { 34292 composeIdentifier("accessionIdentifier", element.getAccessionIdentifier()); 34293 } 34294 if (element.hasStatusElement()) 34295 composeEnumeration("status", element.getStatusElement(), new Specimen.SpecimenStatusEnumFactory()); 34296 if (element.hasType()) { 34297 composeCodeableConcept("type", element.getType()); 34298 } 34299 if (element.hasSubject()) { 34300 composeReference("subject", element.getSubject()); 34301 } 34302 if (element.hasReceivedTimeElement()) { 34303 composeDateTime("receivedTime", element.getReceivedTimeElement()); 34304 } 34305 if (element.hasParent()) { 34306 for (Reference e : element.getParent()) 34307 composeReference("parent", e); 34308 } 34309 if (element.hasRequest()) { 34310 for (Reference e : element.getRequest()) 34311 composeReference("request", e); 34312 } 34313 if (element.hasCollection()) { 34314 composeSpecimenSpecimenCollectionComponent("collection", element.getCollection()); 34315 } 34316 if (element.hasProcessing()) { 34317 for (Specimen.SpecimenProcessingComponent e : element.getProcessing()) 34318 composeSpecimenSpecimenProcessingComponent("processing", e); 34319 } 34320 if (element.hasContainer()) { 34321 for (Specimen.SpecimenContainerComponent e : element.getContainer()) 34322 composeSpecimenSpecimenContainerComponent("container", e); 34323 } 34324 if (element.hasNote()) { 34325 for (Annotation e : element.getNote()) 34326 composeAnnotation("note", e); 34327 } 34328 } 34329 34330 protected void composeSpecimenSpecimenCollectionComponent(String name, Specimen.SpecimenCollectionComponent element) throws IOException { 34331 if (element != null) { 34332 composeElementAttributes(element); 34333 xml.enter(FHIR_NS, name); 34334 composeSpecimenSpecimenCollectionComponentElements(element); 34335 composeElementClose(element); 34336 xml.exit(FHIR_NS, name); 34337 } 34338 } 34339 34340 protected void composeSpecimenSpecimenCollectionComponentElements(Specimen.SpecimenCollectionComponent element) throws IOException { 34341 composeBackboneElements(element); 34342 if (element.hasCollector()) { 34343 composeReference("collector", element.getCollector()); 34344 } 34345 if (element.hasCollected()) { 34346 composeType("collected", element.getCollected()); 34347 } if (element.hasQuantity()) { 34348 composeSimpleQuantity("quantity", element.getQuantity()); 34349 } 34350 if (element.hasMethod()) { 34351 composeCodeableConcept("method", element.getMethod()); 34352 } 34353 if (element.hasBodySite()) { 34354 composeCodeableConcept("bodySite", element.getBodySite()); 34355 } 34356 } 34357 34358 protected void composeSpecimenSpecimenProcessingComponent(String name, Specimen.SpecimenProcessingComponent element) throws IOException { 34359 if (element != null) { 34360 composeElementAttributes(element); 34361 xml.enter(FHIR_NS, name); 34362 composeSpecimenSpecimenProcessingComponentElements(element); 34363 composeElementClose(element); 34364 xml.exit(FHIR_NS, name); 34365 } 34366 } 34367 34368 protected void composeSpecimenSpecimenProcessingComponentElements(Specimen.SpecimenProcessingComponent element) throws IOException { 34369 composeBackboneElements(element); 34370 if (element.hasDescriptionElement()) { 34371 composeString("description", element.getDescriptionElement()); 34372 } 34373 if (element.hasProcedure()) { 34374 composeCodeableConcept("procedure", element.getProcedure()); 34375 } 34376 if (element.hasAdditive()) { 34377 for (Reference e : element.getAdditive()) 34378 composeReference("additive", e); 34379 } 34380 if (element.hasTime()) { 34381 composeType("time", element.getTime()); 34382 } } 34383 34384 protected void composeSpecimenSpecimenContainerComponent(String name, Specimen.SpecimenContainerComponent element) throws IOException { 34385 if (element != null) { 34386 composeElementAttributes(element); 34387 xml.enter(FHIR_NS, name); 34388 composeSpecimenSpecimenContainerComponentElements(element); 34389 composeElementClose(element); 34390 xml.exit(FHIR_NS, name); 34391 } 34392 } 34393 34394 protected void composeSpecimenSpecimenContainerComponentElements(Specimen.SpecimenContainerComponent element) throws IOException { 34395 composeBackboneElements(element); 34396 if (element.hasIdentifier()) { 34397 for (Identifier e : element.getIdentifier()) 34398 composeIdentifier("identifier", e); 34399 } 34400 if (element.hasDescriptionElement()) { 34401 composeString("description", element.getDescriptionElement()); 34402 } 34403 if (element.hasType()) { 34404 composeCodeableConcept("type", element.getType()); 34405 } 34406 if (element.hasCapacity()) { 34407 composeSimpleQuantity("capacity", element.getCapacity()); 34408 } 34409 if (element.hasSpecimenQuantity()) { 34410 composeSimpleQuantity("specimenQuantity", element.getSpecimenQuantity()); 34411 } 34412 if (element.hasAdditive()) { 34413 composeType("additive", element.getAdditive()); 34414 } } 34415 34416 protected void composeStructureDefinition(String name, StructureDefinition element) throws IOException { 34417 if (element != null) { 34418 composeDomainResourceAttributes(element); 34419 xml.enter(FHIR_NS, name); 34420 composeStructureDefinitionElements(element); 34421 composeElementClose(element); 34422 xml.exit(FHIR_NS, name); 34423 } 34424 } 34425 34426 protected void composeStructureDefinitionElements(StructureDefinition element) throws IOException { 34427 composeDomainResourceElements(element); 34428 if (element.hasUrlElement()) { 34429 composeUri("url", element.getUrlElement()); 34430 } 34431 if (element.hasIdentifier()) { 34432 for (Identifier e : element.getIdentifier()) 34433 composeIdentifier("identifier", e); 34434 } 34435 if (element.hasVersionElement()) { 34436 composeString("version", element.getVersionElement()); 34437 } 34438 if (element.hasNameElement()) { 34439 composeString("name", element.getNameElement()); 34440 } 34441 if (element.hasTitleElement()) { 34442 composeString("title", element.getTitleElement()); 34443 } 34444 if (element.hasStatusElement()) 34445 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 34446 if (element.hasExperimentalElement()) { 34447 composeBoolean("experimental", element.getExperimentalElement()); 34448 } 34449 if (element.hasDateElement()) { 34450 composeDateTime("date", element.getDateElement()); 34451 } 34452 if (element.hasPublisherElement()) { 34453 composeString("publisher", element.getPublisherElement()); 34454 } 34455 if (element.hasContact()) { 34456 for (ContactDetail e : element.getContact()) 34457 composeContactDetail("contact", e); 34458 } 34459 if (element.hasDescriptionElement()) { 34460 composeMarkdown("description", element.getDescriptionElement()); 34461 } 34462 if (element.hasUseContext()) { 34463 for (UsageContext e : element.getUseContext()) 34464 composeUsageContext("useContext", e); 34465 } 34466 if (element.hasJurisdiction()) { 34467 for (CodeableConcept e : element.getJurisdiction()) 34468 composeCodeableConcept("jurisdiction", e); 34469 } 34470 if (element.hasPurposeElement()) { 34471 composeMarkdown("purpose", element.getPurposeElement()); 34472 } 34473 if (element.hasCopyrightElement()) { 34474 composeMarkdown("copyright", element.getCopyrightElement()); 34475 } 34476 if (element.hasKeyword()) { 34477 for (Coding e : element.getKeyword()) 34478 composeCoding("keyword", e); 34479 } 34480 if (element.hasFhirVersionElement()) { 34481 composeId("fhirVersion", element.getFhirVersionElement()); 34482 } 34483 if (element.hasMapping()) { 34484 for (StructureDefinition.StructureDefinitionMappingComponent e : element.getMapping()) 34485 composeStructureDefinitionStructureDefinitionMappingComponent("mapping", e); 34486 } 34487 if (element.hasKindElement()) 34488 composeEnumeration("kind", element.getKindElement(), new StructureDefinition.StructureDefinitionKindEnumFactory()); 34489 if (element.hasAbstractElement()) { 34490 composeBoolean("abstract", element.getAbstractElement()); 34491 } 34492 if (element.hasContextTypeElement()) 34493 composeEnumeration("contextType", element.getContextTypeElement(), new StructureDefinition.ExtensionContextEnumFactory()); 34494 if (element.hasContext()) { 34495 for (StringType e : element.getContext()) 34496 composeString("context", e); 34497 } 34498 if (element.hasContextInvariant()) { 34499 for (StringType e : element.getContextInvariant()) 34500 composeString("contextInvariant", e); 34501 } 34502 if (element.hasTypeElement()) { 34503 composeCode("type", element.getTypeElement()); 34504 } 34505 if (element.hasBaseDefinitionElement()) { 34506 composeUri("baseDefinition", element.getBaseDefinitionElement()); 34507 } 34508 if (element.hasDerivationElement()) 34509 composeEnumeration("derivation", element.getDerivationElement(), new StructureDefinition.TypeDerivationRuleEnumFactory()); 34510 if (element.hasSnapshot()) { 34511 composeStructureDefinitionStructureDefinitionSnapshotComponent("snapshot", element.getSnapshot()); 34512 } 34513 if (element.hasDifferential()) { 34514 composeStructureDefinitionStructureDefinitionDifferentialComponent("differential", element.getDifferential()); 34515 } 34516 } 34517 34518 protected void composeStructureDefinitionStructureDefinitionMappingComponent(String name, StructureDefinition.StructureDefinitionMappingComponent element) throws IOException { 34519 if (element != null) { 34520 composeElementAttributes(element); 34521 xml.enter(FHIR_NS, name); 34522 composeStructureDefinitionStructureDefinitionMappingComponentElements(element); 34523 composeElementClose(element); 34524 xml.exit(FHIR_NS, name); 34525 } 34526 } 34527 34528 protected void composeStructureDefinitionStructureDefinitionMappingComponentElements(StructureDefinition.StructureDefinitionMappingComponent element) throws IOException { 34529 composeBackboneElements(element); 34530 if (element.hasIdentityElement()) { 34531 composeId("identity", element.getIdentityElement()); 34532 } 34533 if (element.hasUriElement()) { 34534 composeUri("uri", element.getUriElement()); 34535 } 34536 if (element.hasNameElement()) { 34537 composeString("name", element.getNameElement()); 34538 } 34539 if (element.hasCommentElement()) { 34540 composeString("comment", element.getCommentElement()); 34541 } 34542 } 34543 34544 protected void composeStructureDefinitionStructureDefinitionSnapshotComponent(String name, StructureDefinition.StructureDefinitionSnapshotComponent element) throws IOException { 34545 if (element != null) { 34546 composeElementAttributes(element); 34547 xml.enter(FHIR_NS, name); 34548 composeStructureDefinitionStructureDefinitionSnapshotComponentElements(element); 34549 composeElementClose(element); 34550 xml.exit(FHIR_NS, name); 34551 } 34552 } 34553 34554 protected void composeStructureDefinitionStructureDefinitionSnapshotComponentElements(StructureDefinition.StructureDefinitionSnapshotComponent element) throws IOException { 34555 composeBackboneElements(element); 34556 if (element.hasElement()) { 34557 for (ElementDefinition e : element.getElement()) 34558 composeElementDefinition("element", e); 34559 } 34560 } 34561 34562 protected void composeStructureDefinitionStructureDefinitionDifferentialComponent(String name, StructureDefinition.StructureDefinitionDifferentialComponent element) throws IOException { 34563 if (element != null) { 34564 composeElementAttributes(element); 34565 xml.enter(FHIR_NS, name); 34566 composeStructureDefinitionStructureDefinitionDifferentialComponentElements(element); 34567 composeElementClose(element); 34568 xml.exit(FHIR_NS, name); 34569 } 34570 } 34571 34572 protected void composeStructureDefinitionStructureDefinitionDifferentialComponentElements(StructureDefinition.StructureDefinitionDifferentialComponent element) throws IOException { 34573 composeBackboneElements(element); 34574 if (element.hasElement()) { 34575 for (ElementDefinition e : element.getElement()) 34576 composeElementDefinition("element", e); 34577 } 34578 } 34579 34580 protected void composeStructureMap(String name, StructureMap element) throws IOException { 34581 if (element != null) { 34582 composeDomainResourceAttributes(element); 34583 xml.enter(FHIR_NS, name); 34584 composeStructureMapElements(element); 34585 composeElementClose(element); 34586 xml.exit(FHIR_NS, name); 34587 } 34588 } 34589 34590 protected void composeStructureMapElements(StructureMap element) throws IOException { 34591 composeDomainResourceElements(element); 34592 if (element.hasUrlElement()) { 34593 composeUri("url", element.getUrlElement()); 34594 } 34595 if (element.hasIdentifier()) { 34596 for (Identifier e : element.getIdentifier()) 34597 composeIdentifier("identifier", e); 34598 } 34599 if (element.hasVersionElement()) { 34600 composeString("version", element.getVersionElement()); 34601 } 34602 if (element.hasNameElement()) { 34603 composeString("name", element.getNameElement()); 34604 } 34605 if (element.hasTitleElement()) { 34606 composeString("title", element.getTitleElement()); 34607 } 34608 if (element.hasStatusElement()) 34609 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 34610 if (element.hasExperimentalElement()) { 34611 composeBoolean("experimental", element.getExperimentalElement()); 34612 } 34613 if (element.hasDateElement()) { 34614 composeDateTime("date", element.getDateElement()); 34615 } 34616 if (element.hasPublisherElement()) { 34617 composeString("publisher", element.getPublisherElement()); 34618 } 34619 if (element.hasContact()) { 34620 for (ContactDetail e : element.getContact()) 34621 composeContactDetail("contact", e); 34622 } 34623 if (element.hasDescriptionElement()) { 34624 composeMarkdown("description", element.getDescriptionElement()); 34625 } 34626 if (element.hasUseContext()) { 34627 for (UsageContext e : element.getUseContext()) 34628 composeUsageContext("useContext", e); 34629 } 34630 if (element.hasJurisdiction()) { 34631 for (CodeableConcept e : element.getJurisdiction()) 34632 composeCodeableConcept("jurisdiction", e); 34633 } 34634 if (element.hasPurposeElement()) { 34635 composeMarkdown("purpose", element.getPurposeElement()); 34636 } 34637 if (element.hasCopyrightElement()) { 34638 composeMarkdown("copyright", element.getCopyrightElement()); 34639 } 34640 if (element.hasStructure()) { 34641 for (StructureMap.StructureMapStructureComponent e : element.getStructure()) 34642 composeStructureMapStructureMapStructureComponent("structure", e); 34643 } 34644 if (element.hasImport()) { 34645 for (UriType e : element.getImport()) 34646 composeUri("import", e); 34647 } 34648 if (element.hasGroup()) { 34649 for (StructureMap.StructureMapGroupComponent e : element.getGroup()) 34650 composeStructureMapStructureMapGroupComponent("group", e); 34651 } 34652 } 34653 34654 protected void composeStructureMapStructureMapStructureComponent(String name, StructureMap.StructureMapStructureComponent element) throws IOException { 34655 if (element != null) { 34656 composeElementAttributes(element); 34657 xml.enter(FHIR_NS, name); 34658 composeStructureMapStructureMapStructureComponentElements(element); 34659 composeElementClose(element); 34660 xml.exit(FHIR_NS, name); 34661 } 34662 } 34663 34664 protected void composeStructureMapStructureMapStructureComponentElements(StructureMap.StructureMapStructureComponent element) throws IOException { 34665 composeBackboneElements(element); 34666 if (element.hasUrlElement()) { 34667 composeUri("url", element.getUrlElement()); 34668 } 34669 if (element.hasModeElement()) 34670 composeEnumeration("mode", element.getModeElement(), new StructureMap.StructureMapModelModeEnumFactory()); 34671 if (element.hasAliasElement()) { 34672 composeString("alias", element.getAliasElement()); 34673 } 34674 if (element.hasDocumentationElement()) { 34675 composeString("documentation", element.getDocumentationElement()); 34676 } 34677 } 34678 34679 protected void composeStructureMapStructureMapGroupComponent(String name, StructureMap.StructureMapGroupComponent element) throws IOException { 34680 if (element != null) { 34681 composeElementAttributes(element); 34682 xml.enter(FHIR_NS, name); 34683 composeStructureMapStructureMapGroupComponentElements(element); 34684 composeElementClose(element); 34685 xml.exit(FHIR_NS, name); 34686 } 34687 } 34688 34689 protected void composeStructureMapStructureMapGroupComponentElements(StructureMap.StructureMapGroupComponent element) throws IOException { 34690 composeBackboneElements(element); 34691 if (element.hasNameElement()) { 34692 composeId("name", element.getNameElement()); 34693 } 34694 if (element.hasExtendsElement()) { 34695 composeId("extends", element.getExtendsElement()); 34696 } 34697 if (element.hasTypeModeElement()) 34698 composeEnumeration("typeMode", element.getTypeModeElement(), new StructureMap.StructureMapGroupTypeModeEnumFactory()); 34699 if (element.hasDocumentationElement()) { 34700 composeString("documentation", element.getDocumentationElement()); 34701 } 34702 if (element.hasInput()) { 34703 for (StructureMap.StructureMapGroupInputComponent e : element.getInput()) 34704 composeStructureMapStructureMapGroupInputComponent("input", e); 34705 } 34706 if (element.hasRule()) { 34707 for (StructureMap.StructureMapGroupRuleComponent e : element.getRule()) 34708 composeStructureMapStructureMapGroupRuleComponent("rule", e); 34709 } 34710 } 34711 34712 protected void composeStructureMapStructureMapGroupInputComponent(String name, StructureMap.StructureMapGroupInputComponent element) throws IOException { 34713 if (element != null) { 34714 composeElementAttributes(element); 34715 xml.enter(FHIR_NS, name); 34716 composeStructureMapStructureMapGroupInputComponentElements(element); 34717 composeElementClose(element); 34718 xml.exit(FHIR_NS, name); 34719 } 34720 } 34721 34722 protected void composeStructureMapStructureMapGroupInputComponentElements(StructureMap.StructureMapGroupInputComponent element) throws IOException { 34723 composeBackboneElements(element); 34724 if (element.hasNameElement()) { 34725 composeId("name", element.getNameElement()); 34726 } 34727 if (element.hasTypeElement()) { 34728 composeString("type", element.getTypeElement()); 34729 } 34730 if (element.hasModeElement()) 34731 composeEnumeration("mode", element.getModeElement(), new StructureMap.StructureMapInputModeEnumFactory()); 34732 if (element.hasDocumentationElement()) { 34733 composeString("documentation", element.getDocumentationElement()); 34734 } 34735 } 34736 34737 protected void composeStructureMapStructureMapGroupRuleComponent(String name, StructureMap.StructureMapGroupRuleComponent element) throws IOException { 34738 if (element != null) { 34739 composeElementAttributes(element); 34740 xml.enter(FHIR_NS, name); 34741 composeStructureMapStructureMapGroupRuleComponentElements(element); 34742 composeElementClose(element); 34743 xml.exit(FHIR_NS, name); 34744 } 34745 } 34746 34747 protected void composeStructureMapStructureMapGroupRuleComponentElements(StructureMap.StructureMapGroupRuleComponent element) throws IOException { 34748 composeBackboneElements(element); 34749 if (element.hasNameElement()) { 34750 composeId("name", element.getNameElement()); 34751 } 34752 if (element.hasSource()) { 34753 for (StructureMap.StructureMapGroupRuleSourceComponent e : element.getSource()) 34754 composeStructureMapStructureMapGroupRuleSourceComponent("source", e); 34755 } 34756 if (element.hasTarget()) { 34757 for (StructureMap.StructureMapGroupRuleTargetComponent e : element.getTarget()) 34758 composeStructureMapStructureMapGroupRuleTargetComponent("target", e); 34759 } 34760 if (element.hasRule()) { 34761 for (StructureMap.StructureMapGroupRuleComponent e : element.getRule()) 34762 composeStructureMapStructureMapGroupRuleComponent("rule", e); 34763 } 34764 if (element.hasDependent()) { 34765 for (StructureMap.StructureMapGroupRuleDependentComponent e : element.getDependent()) 34766 composeStructureMapStructureMapGroupRuleDependentComponent("dependent", e); 34767 } 34768 if (element.hasDocumentationElement()) { 34769 composeString("documentation", element.getDocumentationElement()); 34770 } 34771 } 34772 34773 protected void composeStructureMapStructureMapGroupRuleSourceComponent(String name, StructureMap.StructureMapGroupRuleSourceComponent element) throws IOException { 34774 if (element != null) { 34775 composeElementAttributes(element); 34776 xml.enter(FHIR_NS, name); 34777 composeStructureMapStructureMapGroupRuleSourceComponentElements(element); 34778 composeElementClose(element); 34779 xml.exit(FHIR_NS, name); 34780 } 34781 } 34782 34783 protected void composeStructureMapStructureMapGroupRuleSourceComponentElements(StructureMap.StructureMapGroupRuleSourceComponent element) throws IOException { 34784 composeBackboneElements(element); 34785 if (element.hasContextElement()) { 34786 composeId("context", element.getContextElement()); 34787 } 34788 if (element.hasMinElement()) { 34789 composeInteger("min", element.getMinElement()); 34790 } 34791 if (element.hasMaxElement()) { 34792 composeString("max", element.getMaxElement()); 34793 } 34794 if (element.hasTypeElement()) { 34795 composeString("type", element.getTypeElement()); 34796 } 34797 if (element.hasDefaultValue()) { 34798 composeType("defaultValue", element.getDefaultValue()); 34799 } if (element.hasElementElement()) { 34800 composeString("element", element.getElementElement()); 34801 } 34802 if (element.hasListModeElement()) 34803 composeEnumeration("listMode", element.getListModeElement(), new StructureMap.StructureMapSourceListModeEnumFactory()); 34804 if (element.hasVariableElement()) { 34805 composeId("variable", element.getVariableElement()); 34806 } 34807 if (element.hasConditionElement()) { 34808 composeString("condition", element.getConditionElement()); 34809 } 34810 if (element.hasCheckElement()) { 34811 composeString("check", element.getCheckElement()); 34812 } 34813 } 34814 34815 protected void composeStructureMapStructureMapGroupRuleTargetComponent(String name, StructureMap.StructureMapGroupRuleTargetComponent element) throws IOException { 34816 if (element != null) { 34817 composeElementAttributes(element); 34818 xml.enter(FHIR_NS, name); 34819 composeStructureMapStructureMapGroupRuleTargetComponentElements(element); 34820 composeElementClose(element); 34821 xml.exit(FHIR_NS, name); 34822 } 34823 } 34824 34825 protected void composeStructureMapStructureMapGroupRuleTargetComponentElements(StructureMap.StructureMapGroupRuleTargetComponent element) throws IOException { 34826 composeBackboneElements(element); 34827 if (element.hasContextElement()) { 34828 composeId("context", element.getContextElement()); 34829 } 34830 if (element.hasContextTypeElement()) 34831 composeEnumeration("contextType", element.getContextTypeElement(), new StructureMap.StructureMapContextTypeEnumFactory()); 34832 if (element.hasElementElement()) { 34833 composeString("element", element.getElementElement()); 34834 } 34835 if (element.hasVariableElement()) { 34836 composeId("variable", element.getVariableElement()); 34837 } 34838 if (element.hasListMode()) 34839 for (Enumeration<StructureMap.StructureMapTargetListMode> e : element.getListMode()) 34840 composeEnumeration("listMode", e, new StructureMap.StructureMapTargetListModeEnumFactory()); 34841 if (element.hasListRuleIdElement()) { 34842 composeId("listRuleId", element.getListRuleIdElement()); 34843 } 34844 if (element.hasTransformElement()) 34845 composeEnumeration("transform", element.getTransformElement(), new StructureMap.StructureMapTransformEnumFactory()); 34846 if (element.hasParameter()) { 34847 for (StructureMap.StructureMapGroupRuleTargetParameterComponent e : element.getParameter()) 34848 composeStructureMapStructureMapGroupRuleTargetParameterComponent("parameter", e); 34849 } 34850 } 34851 34852 protected void composeStructureMapStructureMapGroupRuleTargetParameterComponent(String name, StructureMap.StructureMapGroupRuleTargetParameterComponent element) throws IOException { 34853 if (element != null) { 34854 composeElementAttributes(element); 34855 xml.enter(FHIR_NS, name); 34856 composeStructureMapStructureMapGroupRuleTargetParameterComponentElements(element); 34857 composeElementClose(element); 34858 xml.exit(FHIR_NS, name); 34859 } 34860 } 34861 34862 protected void composeStructureMapStructureMapGroupRuleTargetParameterComponentElements(StructureMap.StructureMapGroupRuleTargetParameterComponent element) throws IOException { 34863 composeBackboneElements(element); 34864 if (element.hasValue()) { 34865 composeType("value", element.getValue()); 34866 } } 34867 34868 protected void composeStructureMapStructureMapGroupRuleDependentComponent(String name, StructureMap.StructureMapGroupRuleDependentComponent element) throws IOException { 34869 if (element != null) { 34870 composeElementAttributes(element); 34871 xml.enter(FHIR_NS, name); 34872 composeStructureMapStructureMapGroupRuleDependentComponentElements(element); 34873 composeElementClose(element); 34874 xml.exit(FHIR_NS, name); 34875 } 34876 } 34877 34878 protected void composeStructureMapStructureMapGroupRuleDependentComponentElements(StructureMap.StructureMapGroupRuleDependentComponent element) throws IOException { 34879 composeBackboneElements(element); 34880 if (element.hasNameElement()) { 34881 composeId("name", element.getNameElement()); 34882 } 34883 if (element.hasVariable()) { 34884 for (StringType e : element.getVariable()) 34885 composeString("variable", e); 34886 } 34887 } 34888 34889 protected void composeSubscription(String name, Subscription element) throws IOException { 34890 if (element != null) { 34891 composeDomainResourceAttributes(element); 34892 xml.enter(FHIR_NS, name); 34893 composeSubscriptionElements(element); 34894 composeElementClose(element); 34895 xml.exit(FHIR_NS, name); 34896 } 34897 } 34898 34899 protected void composeSubscriptionElements(Subscription element) throws IOException { 34900 composeDomainResourceElements(element); 34901 if (element.hasStatusElement()) 34902 composeEnumeration("status", element.getStatusElement(), new Subscription.SubscriptionStatusEnumFactory()); 34903 if (element.hasContact()) { 34904 for (ContactPoint e : element.getContact()) 34905 composeContactPoint("contact", e); 34906 } 34907 if (element.hasEndElement()) { 34908 composeInstant("end", element.getEndElement()); 34909 } 34910 if (element.hasReasonElement()) { 34911 composeString("reason", element.getReasonElement()); 34912 } 34913 if (element.hasCriteriaElement()) { 34914 composeString("criteria", element.getCriteriaElement()); 34915 } 34916 if (element.hasErrorElement()) { 34917 composeString("error", element.getErrorElement()); 34918 } 34919 if (element.hasChannel()) { 34920 composeSubscriptionSubscriptionChannelComponent("channel", element.getChannel()); 34921 } 34922 if (element.hasTag()) { 34923 for (Coding e : element.getTag()) 34924 composeCoding("tag", e); 34925 } 34926 } 34927 34928 protected void composeSubscriptionSubscriptionChannelComponent(String name, Subscription.SubscriptionChannelComponent element) throws IOException { 34929 if (element != null) { 34930 composeElementAttributes(element); 34931 xml.enter(FHIR_NS, name); 34932 composeSubscriptionSubscriptionChannelComponentElements(element); 34933 composeElementClose(element); 34934 xml.exit(FHIR_NS, name); 34935 } 34936 } 34937 34938 protected void composeSubscriptionSubscriptionChannelComponentElements(Subscription.SubscriptionChannelComponent element) throws IOException { 34939 composeBackboneElements(element); 34940 if (element.hasTypeElement()) 34941 composeEnumeration("type", element.getTypeElement(), new Subscription.SubscriptionChannelTypeEnumFactory()); 34942 if (element.hasEndpointElement()) { 34943 composeUri("endpoint", element.getEndpointElement()); 34944 } 34945 if (element.hasPayloadElement()) { 34946 composeString("payload", element.getPayloadElement()); 34947 } 34948 if (element.hasHeader()) { 34949 for (StringType e : element.getHeader()) 34950 composeString("header", e); 34951 } 34952 } 34953 34954 protected void composeSubstance(String name, Substance element) throws IOException { 34955 if (element != null) { 34956 composeDomainResourceAttributes(element); 34957 xml.enter(FHIR_NS, name); 34958 composeSubstanceElements(element); 34959 composeElementClose(element); 34960 xml.exit(FHIR_NS, name); 34961 } 34962 } 34963 34964 protected void composeSubstanceElements(Substance element) throws IOException { 34965 composeDomainResourceElements(element); 34966 if (element.hasIdentifier()) { 34967 for (Identifier e : element.getIdentifier()) 34968 composeIdentifier("identifier", e); 34969 } 34970 if (element.hasStatusElement()) 34971 composeEnumeration("status", element.getStatusElement(), new Substance.FHIRSubstanceStatusEnumFactory()); 34972 if (element.hasCategory()) { 34973 for (CodeableConcept e : element.getCategory()) 34974 composeCodeableConcept("category", e); 34975 } 34976 if (element.hasCode()) { 34977 composeCodeableConcept("code", element.getCode()); 34978 } 34979 if (element.hasDescriptionElement()) { 34980 composeString("description", element.getDescriptionElement()); 34981 } 34982 if (element.hasInstance()) { 34983 for (Substance.SubstanceInstanceComponent e : element.getInstance()) 34984 composeSubstanceSubstanceInstanceComponent("instance", e); 34985 } 34986 if (element.hasIngredient()) { 34987 for (Substance.SubstanceIngredientComponent e : element.getIngredient()) 34988 composeSubstanceSubstanceIngredientComponent("ingredient", e); 34989 } 34990 } 34991 34992 protected void composeSubstanceSubstanceInstanceComponent(String name, Substance.SubstanceInstanceComponent element) throws IOException { 34993 if (element != null) { 34994 composeElementAttributes(element); 34995 xml.enter(FHIR_NS, name); 34996 composeSubstanceSubstanceInstanceComponentElements(element); 34997 composeElementClose(element); 34998 xml.exit(FHIR_NS, name); 34999 } 35000 } 35001 35002 protected void composeSubstanceSubstanceInstanceComponentElements(Substance.SubstanceInstanceComponent element) throws IOException { 35003 composeBackboneElements(element); 35004 if (element.hasIdentifier()) { 35005 composeIdentifier("identifier", element.getIdentifier()); 35006 } 35007 if (element.hasExpiryElement()) { 35008 composeDateTime("expiry", element.getExpiryElement()); 35009 } 35010 if (element.hasQuantity()) { 35011 composeSimpleQuantity("quantity", element.getQuantity()); 35012 } 35013 } 35014 35015 protected void composeSubstanceSubstanceIngredientComponent(String name, Substance.SubstanceIngredientComponent element) throws IOException { 35016 if (element != null) { 35017 composeElementAttributes(element); 35018 xml.enter(FHIR_NS, name); 35019 composeSubstanceSubstanceIngredientComponentElements(element); 35020 composeElementClose(element); 35021 xml.exit(FHIR_NS, name); 35022 } 35023 } 35024 35025 protected void composeSubstanceSubstanceIngredientComponentElements(Substance.SubstanceIngredientComponent element) throws IOException { 35026 composeBackboneElements(element); 35027 if (element.hasQuantity()) { 35028 composeRatio("quantity", element.getQuantity()); 35029 } 35030 if (element.hasSubstance()) { 35031 composeType("substance", element.getSubstance()); 35032 } } 35033 35034 protected void composeSupplyDelivery(String name, SupplyDelivery element) throws IOException { 35035 if (element != null) { 35036 composeDomainResourceAttributes(element); 35037 xml.enter(FHIR_NS, name); 35038 composeSupplyDeliveryElements(element); 35039 composeElementClose(element); 35040 xml.exit(FHIR_NS, name); 35041 } 35042 } 35043 35044 protected void composeSupplyDeliveryElements(SupplyDelivery element) throws IOException { 35045 composeDomainResourceElements(element); 35046 if (element.hasIdentifier()) { 35047 composeIdentifier("identifier", element.getIdentifier()); 35048 } 35049 if (element.hasBasedOn()) { 35050 for (Reference e : element.getBasedOn()) 35051 composeReference("basedOn", e); 35052 } 35053 if (element.hasPartOf()) { 35054 for (Reference e : element.getPartOf()) 35055 composeReference("partOf", e); 35056 } 35057 if (element.hasStatusElement()) 35058 composeEnumeration("status", element.getStatusElement(), new SupplyDelivery.SupplyDeliveryStatusEnumFactory()); 35059 if (element.hasPatient()) { 35060 composeReference("patient", element.getPatient()); 35061 } 35062 if (element.hasType()) { 35063 composeCodeableConcept("type", element.getType()); 35064 } 35065 if (element.hasSuppliedItem()) { 35066 composeSupplyDeliverySupplyDeliverySuppliedItemComponent("suppliedItem", element.getSuppliedItem()); 35067 } 35068 if (element.hasOccurrence()) { 35069 composeType("occurrence", element.getOccurrence()); 35070 } if (element.hasSupplier()) { 35071 composeReference("supplier", element.getSupplier()); 35072 } 35073 if (element.hasDestination()) { 35074 composeReference("destination", element.getDestination()); 35075 } 35076 if (element.hasReceiver()) { 35077 for (Reference e : element.getReceiver()) 35078 composeReference("receiver", e); 35079 } 35080 } 35081 35082 protected void composeSupplyDeliverySupplyDeliverySuppliedItemComponent(String name, SupplyDelivery.SupplyDeliverySuppliedItemComponent element) throws IOException { 35083 if (element != null) { 35084 composeElementAttributes(element); 35085 xml.enter(FHIR_NS, name); 35086 composeSupplyDeliverySupplyDeliverySuppliedItemComponentElements(element); 35087 composeElementClose(element); 35088 xml.exit(FHIR_NS, name); 35089 } 35090 } 35091 35092 protected void composeSupplyDeliverySupplyDeliverySuppliedItemComponentElements(SupplyDelivery.SupplyDeliverySuppliedItemComponent element) throws IOException { 35093 composeBackboneElements(element); 35094 if (element.hasQuantity()) { 35095 composeSimpleQuantity("quantity", element.getQuantity()); 35096 } 35097 if (element.hasItem()) { 35098 composeType("item", element.getItem()); 35099 } } 35100 35101 protected void composeSupplyRequest(String name, SupplyRequest element) throws IOException { 35102 if (element != null) { 35103 composeDomainResourceAttributes(element); 35104 xml.enter(FHIR_NS, name); 35105 composeSupplyRequestElements(element); 35106 composeElementClose(element); 35107 xml.exit(FHIR_NS, name); 35108 } 35109 } 35110 35111 protected void composeSupplyRequestElements(SupplyRequest element) throws IOException { 35112 composeDomainResourceElements(element); 35113 if (element.hasIdentifier()) { 35114 composeIdentifier("identifier", element.getIdentifier()); 35115 } 35116 if (element.hasStatusElement()) 35117 composeEnumeration("status", element.getStatusElement(), new SupplyRequest.SupplyRequestStatusEnumFactory()); 35118 if (element.hasCategory()) { 35119 composeCodeableConcept("category", element.getCategory()); 35120 } 35121 if (element.hasPriorityElement()) 35122 composeEnumeration("priority", element.getPriorityElement(), new SupplyRequest.RequestPriorityEnumFactory()); 35123 if (element.hasOrderedItem()) { 35124 composeSupplyRequestSupplyRequestOrderedItemComponent("orderedItem", element.getOrderedItem()); 35125 } 35126 if (element.hasOccurrence()) { 35127 composeType("occurrence", element.getOccurrence()); 35128 } if (element.hasAuthoredOnElement()) { 35129 composeDateTime("authoredOn", element.getAuthoredOnElement()); 35130 } 35131 if (element.hasRequester()) { 35132 composeSupplyRequestSupplyRequestRequesterComponent("requester", element.getRequester()); 35133 } 35134 if (element.hasSupplier()) { 35135 for (Reference e : element.getSupplier()) 35136 composeReference("supplier", e); 35137 } 35138 if (element.hasReason()) { 35139 composeType("reason", element.getReason()); 35140 } if (element.hasDeliverFrom()) { 35141 composeReference("deliverFrom", element.getDeliverFrom()); 35142 } 35143 if (element.hasDeliverTo()) { 35144 composeReference("deliverTo", element.getDeliverTo()); 35145 } 35146 } 35147 35148 protected void composeSupplyRequestSupplyRequestOrderedItemComponent(String name, SupplyRequest.SupplyRequestOrderedItemComponent element) throws IOException { 35149 if (element != null) { 35150 composeElementAttributes(element); 35151 xml.enter(FHIR_NS, name); 35152 composeSupplyRequestSupplyRequestOrderedItemComponentElements(element); 35153 composeElementClose(element); 35154 xml.exit(FHIR_NS, name); 35155 } 35156 } 35157 35158 protected void composeSupplyRequestSupplyRequestOrderedItemComponentElements(SupplyRequest.SupplyRequestOrderedItemComponent element) throws IOException { 35159 composeBackboneElements(element); 35160 if (element.hasQuantity()) { 35161 composeQuantity("quantity", element.getQuantity()); 35162 } 35163 if (element.hasItem()) { 35164 composeType("item", element.getItem()); 35165 } } 35166 35167 protected void composeSupplyRequestSupplyRequestRequesterComponent(String name, SupplyRequest.SupplyRequestRequesterComponent element) throws IOException { 35168 if (element != null) { 35169 composeElementAttributes(element); 35170 xml.enter(FHIR_NS, name); 35171 composeSupplyRequestSupplyRequestRequesterComponentElements(element); 35172 composeElementClose(element); 35173 xml.exit(FHIR_NS, name); 35174 } 35175 } 35176 35177 protected void composeSupplyRequestSupplyRequestRequesterComponentElements(SupplyRequest.SupplyRequestRequesterComponent element) throws IOException { 35178 composeBackboneElements(element); 35179 if (element.hasAgent()) { 35180 composeReference("agent", element.getAgent()); 35181 } 35182 if (element.hasOnBehalfOf()) { 35183 composeReference("onBehalfOf", element.getOnBehalfOf()); 35184 } 35185 } 35186 35187 protected void composeTask(String name, Task element) throws IOException { 35188 if (element != null) { 35189 composeDomainResourceAttributes(element); 35190 xml.enter(FHIR_NS, name); 35191 composeTaskElements(element); 35192 composeElementClose(element); 35193 xml.exit(FHIR_NS, name); 35194 } 35195 } 35196 35197 protected void composeTaskElements(Task element) throws IOException { 35198 composeDomainResourceElements(element); 35199 if (element.hasIdentifier()) { 35200 for (Identifier e : element.getIdentifier()) 35201 composeIdentifier("identifier", e); 35202 } 35203 if (element.hasDefinition()) { 35204 composeType("definition", element.getDefinition()); 35205 } if (element.hasBasedOn()) { 35206 for (Reference e : element.getBasedOn()) 35207 composeReference("basedOn", e); 35208 } 35209 if (element.hasGroupIdentifier()) { 35210 composeIdentifier("groupIdentifier", element.getGroupIdentifier()); 35211 } 35212 if (element.hasPartOf()) { 35213 for (Reference e : element.getPartOf()) 35214 composeReference("partOf", e); 35215 } 35216 if (element.hasStatusElement()) 35217 composeEnumeration("status", element.getStatusElement(), new Task.TaskStatusEnumFactory()); 35218 if (element.hasStatusReason()) { 35219 composeCodeableConcept("statusReason", element.getStatusReason()); 35220 } 35221 if (element.hasBusinessStatus()) { 35222 composeCodeableConcept("businessStatus", element.getBusinessStatus()); 35223 } 35224 if (element.hasIntentElement()) 35225 composeEnumeration("intent", element.getIntentElement(), new Task.TaskIntentEnumFactory()); 35226 if (element.hasPriorityElement()) 35227 composeEnumeration("priority", element.getPriorityElement(), new Task.TaskPriorityEnumFactory()); 35228 if (element.hasCode()) { 35229 composeCodeableConcept("code", element.getCode()); 35230 } 35231 if (element.hasDescriptionElement()) { 35232 composeString("description", element.getDescriptionElement()); 35233 } 35234 if (element.hasFocus()) { 35235 composeReference("focus", element.getFocus()); 35236 } 35237 if (element.hasFor()) { 35238 composeReference("for", element.getFor()); 35239 } 35240 if (element.hasContext()) { 35241 composeReference("context", element.getContext()); 35242 } 35243 if (element.hasExecutionPeriod()) { 35244 composePeriod("executionPeriod", element.getExecutionPeriod()); 35245 } 35246 if (element.hasAuthoredOnElement()) { 35247 composeDateTime("authoredOn", element.getAuthoredOnElement()); 35248 } 35249 if (element.hasLastModifiedElement()) { 35250 composeDateTime("lastModified", element.getLastModifiedElement()); 35251 } 35252 if (element.hasRequester()) { 35253 composeTaskTaskRequesterComponent("requester", element.getRequester()); 35254 } 35255 if (element.hasPerformerType()) { 35256 for (CodeableConcept e : element.getPerformerType()) 35257 composeCodeableConcept("performerType", e); 35258 } 35259 if (element.hasOwner()) { 35260 composeReference("owner", element.getOwner()); 35261 } 35262 if (element.hasReason()) { 35263 composeCodeableConcept("reason", element.getReason()); 35264 } 35265 if (element.hasNote()) { 35266 for (Annotation e : element.getNote()) 35267 composeAnnotation("note", e); 35268 } 35269 if (element.hasRelevantHistory()) { 35270 for (Reference e : element.getRelevantHistory()) 35271 composeReference("relevantHistory", e); 35272 } 35273 if (element.hasRestriction()) { 35274 composeTaskTaskRestrictionComponent("restriction", element.getRestriction()); 35275 } 35276 if (element.hasInput()) { 35277 for (Task.ParameterComponent e : element.getInput()) 35278 composeTaskParameterComponent("input", e); 35279 } 35280 if (element.hasOutput()) { 35281 for (Task.TaskOutputComponent e : element.getOutput()) 35282 composeTaskTaskOutputComponent("output", e); 35283 } 35284 } 35285 35286 protected void composeTaskTaskRequesterComponent(String name, Task.TaskRequesterComponent element) throws IOException { 35287 if (element != null) { 35288 composeElementAttributes(element); 35289 xml.enter(FHIR_NS, name); 35290 composeTaskTaskRequesterComponentElements(element); 35291 composeElementClose(element); 35292 xml.exit(FHIR_NS, name); 35293 } 35294 } 35295 35296 protected void composeTaskTaskRequesterComponentElements(Task.TaskRequesterComponent element) throws IOException { 35297 composeBackboneElements(element); 35298 if (element.hasAgent()) { 35299 composeReference("agent", element.getAgent()); 35300 } 35301 if (element.hasOnBehalfOf()) { 35302 composeReference("onBehalfOf", element.getOnBehalfOf()); 35303 } 35304 } 35305 35306 protected void composeTaskTaskRestrictionComponent(String name, Task.TaskRestrictionComponent element) throws IOException { 35307 if (element != null) { 35308 composeElementAttributes(element); 35309 xml.enter(FHIR_NS, name); 35310 composeTaskTaskRestrictionComponentElements(element); 35311 composeElementClose(element); 35312 xml.exit(FHIR_NS, name); 35313 } 35314 } 35315 35316 protected void composeTaskTaskRestrictionComponentElements(Task.TaskRestrictionComponent element) throws IOException { 35317 composeBackboneElements(element); 35318 if (element.hasRepetitionsElement()) { 35319 composePositiveInt("repetitions", element.getRepetitionsElement()); 35320 } 35321 if (element.hasPeriod()) { 35322 composePeriod("period", element.getPeriod()); 35323 } 35324 if (element.hasRecipient()) { 35325 for (Reference e : element.getRecipient()) 35326 composeReference("recipient", e); 35327 } 35328 } 35329 35330 protected void composeTaskParameterComponent(String name, Task.ParameterComponent element) throws IOException { 35331 if (element != null) { 35332 composeElementAttributes(element); 35333 xml.enter(FHIR_NS, name); 35334 composeTaskParameterComponentElements(element); 35335 composeElementClose(element); 35336 xml.exit(FHIR_NS, name); 35337 } 35338 } 35339 35340 protected void composeTaskParameterComponentElements(Task.ParameterComponent element) throws IOException { 35341 composeBackboneElements(element); 35342 if (element.hasType()) { 35343 composeCodeableConcept("type", element.getType()); 35344 } 35345 if (element.hasValue()) { 35346 composeType("value", element.getValue()); 35347 } } 35348 35349 protected void composeTaskTaskOutputComponent(String name, Task.TaskOutputComponent element) throws IOException { 35350 if (element != null) { 35351 composeElementAttributes(element); 35352 xml.enter(FHIR_NS, name); 35353 composeTaskTaskOutputComponentElements(element); 35354 composeElementClose(element); 35355 xml.exit(FHIR_NS, name); 35356 } 35357 } 35358 35359 protected void composeTaskTaskOutputComponentElements(Task.TaskOutputComponent element) throws IOException { 35360 composeBackboneElements(element); 35361 if (element.hasType()) { 35362 composeCodeableConcept("type", element.getType()); 35363 } 35364 if (element.hasValue()) { 35365 composeType("value", element.getValue()); 35366 } } 35367 35368 protected void composeTestReport(String name, TestReport element) throws IOException { 35369 if (element != null) { 35370 composeDomainResourceAttributes(element); 35371 xml.enter(FHIR_NS, name); 35372 composeTestReportElements(element); 35373 composeElementClose(element); 35374 xml.exit(FHIR_NS, name); 35375 } 35376 } 35377 35378 protected void composeTestReportElements(TestReport element) throws IOException { 35379 composeDomainResourceElements(element); 35380 if (element.hasIdentifier()) { 35381 composeIdentifier("identifier", element.getIdentifier()); 35382 } 35383 if (element.hasNameElement()) { 35384 composeString("name", element.getNameElement()); 35385 } 35386 if (element.hasStatusElement()) 35387 composeEnumeration("status", element.getStatusElement(), new TestReport.TestReportStatusEnumFactory()); 35388 if (element.hasTestScript()) { 35389 composeReference("testScript", element.getTestScript()); 35390 } 35391 if (element.hasResultElement()) 35392 composeEnumeration("result", element.getResultElement(), new TestReport.TestReportResultEnumFactory()); 35393 if (element.hasScoreElement()) { 35394 composeDecimal("score", element.getScoreElement()); 35395 } 35396 if (element.hasTesterElement()) { 35397 composeString("tester", element.getTesterElement()); 35398 } 35399 if (element.hasIssuedElement()) { 35400 composeDateTime("issued", element.getIssuedElement()); 35401 } 35402 if (element.hasParticipant()) { 35403 for (TestReport.TestReportParticipantComponent e : element.getParticipant()) 35404 composeTestReportTestReportParticipantComponent("participant", e); 35405 } 35406 if (element.hasSetup()) { 35407 composeTestReportTestReportSetupComponent("setup", element.getSetup()); 35408 } 35409 if (element.hasTest()) { 35410 for (TestReport.TestReportTestComponent e : element.getTest()) 35411 composeTestReportTestReportTestComponent("test", e); 35412 } 35413 if (element.hasTeardown()) { 35414 composeTestReportTestReportTeardownComponent("teardown", element.getTeardown()); 35415 } 35416 } 35417 35418 protected void composeTestReportTestReportParticipantComponent(String name, TestReport.TestReportParticipantComponent element) throws IOException { 35419 if (element != null) { 35420 composeElementAttributes(element); 35421 xml.enter(FHIR_NS, name); 35422 composeTestReportTestReportParticipantComponentElements(element); 35423 composeElementClose(element); 35424 xml.exit(FHIR_NS, name); 35425 } 35426 } 35427 35428 protected void composeTestReportTestReportParticipantComponentElements(TestReport.TestReportParticipantComponent element) throws IOException { 35429 composeBackboneElements(element); 35430 if (element.hasTypeElement()) 35431 composeEnumeration("type", element.getTypeElement(), new TestReport.TestReportParticipantTypeEnumFactory()); 35432 if (element.hasUriElement()) { 35433 composeUri("uri", element.getUriElement()); 35434 } 35435 if (element.hasDisplayElement()) { 35436 composeString("display", element.getDisplayElement()); 35437 } 35438 } 35439 35440 protected void composeTestReportTestReportSetupComponent(String name, TestReport.TestReportSetupComponent element) throws IOException { 35441 if (element != null) { 35442 composeElementAttributes(element); 35443 xml.enter(FHIR_NS, name); 35444 composeTestReportTestReportSetupComponentElements(element); 35445 composeElementClose(element); 35446 xml.exit(FHIR_NS, name); 35447 } 35448 } 35449 35450 protected void composeTestReportTestReportSetupComponentElements(TestReport.TestReportSetupComponent element) throws IOException { 35451 composeBackboneElements(element); 35452 if (element.hasAction()) { 35453 for (TestReport.SetupActionComponent e : element.getAction()) 35454 composeTestReportSetupActionComponent("action", e); 35455 } 35456 } 35457 35458 protected void composeTestReportSetupActionComponent(String name, TestReport.SetupActionComponent element) throws IOException { 35459 if (element != null) { 35460 composeElementAttributes(element); 35461 xml.enter(FHIR_NS, name); 35462 composeTestReportSetupActionComponentElements(element); 35463 composeElementClose(element); 35464 xml.exit(FHIR_NS, name); 35465 } 35466 } 35467 35468 protected void composeTestReportSetupActionComponentElements(TestReport.SetupActionComponent element) throws IOException { 35469 composeBackboneElements(element); 35470 if (element.hasOperation()) { 35471 composeTestReportSetupActionOperationComponent("operation", element.getOperation()); 35472 } 35473 if (element.hasAssert()) { 35474 composeTestReportSetupActionAssertComponent("assert", element.getAssert()); 35475 } 35476 } 35477 35478 protected void composeTestReportSetupActionOperationComponent(String name, TestReport.SetupActionOperationComponent element) throws IOException { 35479 if (element != null) { 35480 composeElementAttributes(element); 35481 xml.enter(FHIR_NS, name); 35482 composeTestReportSetupActionOperationComponentElements(element); 35483 composeElementClose(element); 35484 xml.exit(FHIR_NS, name); 35485 } 35486 } 35487 35488 protected void composeTestReportSetupActionOperationComponentElements(TestReport.SetupActionOperationComponent element) throws IOException { 35489 composeBackboneElements(element); 35490 if (element.hasResultElement()) 35491 composeEnumeration("result", element.getResultElement(), new TestReport.TestReportActionResultEnumFactory()); 35492 if (element.hasMessageElement()) { 35493 composeMarkdown("message", element.getMessageElement()); 35494 } 35495 if (element.hasDetailElement()) { 35496 composeUri("detail", element.getDetailElement()); 35497 } 35498 } 35499 35500 protected void composeTestReportSetupActionAssertComponent(String name, TestReport.SetupActionAssertComponent element) throws IOException { 35501 if (element != null) { 35502 composeElementAttributes(element); 35503 xml.enter(FHIR_NS, name); 35504 composeTestReportSetupActionAssertComponentElements(element); 35505 composeElementClose(element); 35506 xml.exit(FHIR_NS, name); 35507 } 35508 } 35509 35510 protected void composeTestReportSetupActionAssertComponentElements(TestReport.SetupActionAssertComponent element) throws IOException { 35511 composeBackboneElements(element); 35512 if (element.hasResultElement()) 35513 composeEnumeration("result", element.getResultElement(), new TestReport.TestReportActionResultEnumFactory()); 35514 if (element.hasMessageElement()) { 35515 composeMarkdown("message", element.getMessageElement()); 35516 } 35517 if (element.hasDetailElement()) { 35518 composeString("detail", element.getDetailElement()); 35519 } 35520 } 35521 35522 protected void composeTestReportTestReportTestComponent(String name, TestReport.TestReportTestComponent element) throws IOException { 35523 if (element != null) { 35524 composeElementAttributes(element); 35525 xml.enter(FHIR_NS, name); 35526 composeTestReportTestReportTestComponentElements(element); 35527 composeElementClose(element); 35528 xml.exit(FHIR_NS, name); 35529 } 35530 } 35531 35532 protected void composeTestReportTestReportTestComponentElements(TestReport.TestReportTestComponent element) throws IOException { 35533 composeBackboneElements(element); 35534 if (element.hasNameElement()) { 35535 composeString("name", element.getNameElement()); 35536 } 35537 if (element.hasDescriptionElement()) { 35538 composeString("description", element.getDescriptionElement()); 35539 } 35540 if (element.hasAction()) { 35541 for (TestReport.TestActionComponent e : element.getAction()) 35542 composeTestReportTestActionComponent("action", e); 35543 } 35544 } 35545 35546 protected void composeTestReportTestActionComponent(String name, TestReport.TestActionComponent element) throws IOException { 35547 if (element != null) { 35548 composeElementAttributes(element); 35549 xml.enter(FHIR_NS, name); 35550 composeTestReportTestActionComponentElements(element); 35551 composeElementClose(element); 35552 xml.exit(FHIR_NS, name); 35553 } 35554 } 35555 35556 protected void composeTestReportTestActionComponentElements(TestReport.TestActionComponent element) throws IOException { 35557 composeBackboneElements(element); 35558 if (element.hasOperation()) { 35559 composeTestReportSetupActionOperationComponent("operation", element.getOperation()); 35560 } 35561 if (element.hasAssert()) { 35562 composeTestReportSetupActionAssertComponent("assert", element.getAssert()); 35563 } 35564 } 35565 35566 protected void composeTestReportTestReportTeardownComponent(String name, TestReport.TestReportTeardownComponent element) throws IOException { 35567 if (element != null) { 35568 composeElementAttributes(element); 35569 xml.enter(FHIR_NS, name); 35570 composeTestReportTestReportTeardownComponentElements(element); 35571 composeElementClose(element); 35572 xml.exit(FHIR_NS, name); 35573 } 35574 } 35575 35576 protected void composeTestReportTestReportTeardownComponentElements(TestReport.TestReportTeardownComponent element) throws IOException { 35577 composeBackboneElements(element); 35578 if (element.hasAction()) { 35579 for (TestReport.TeardownActionComponent e : element.getAction()) 35580 composeTestReportTeardownActionComponent("action", e); 35581 } 35582 } 35583 35584 protected void composeTestReportTeardownActionComponent(String name, TestReport.TeardownActionComponent element) throws IOException { 35585 if (element != null) { 35586 composeElementAttributes(element); 35587 xml.enter(FHIR_NS, name); 35588 composeTestReportTeardownActionComponentElements(element); 35589 composeElementClose(element); 35590 xml.exit(FHIR_NS, name); 35591 } 35592 } 35593 35594 protected void composeTestReportTeardownActionComponentElements(TestReport.TeardownActionComponent element) throws IOException { 35595 composeBackboneElements(element); 35596 if (element.hasOperation()) { 35597 composeTestReportSetupActionOperationComponent("operation", element.getOperation()); 35598 } 35599 } 35600 35601 protected void composeTestScript(String name, TestScript element) throws IOException { 35602 if (element != null) { 35603 composeDomainResourceAttributes(element); 35604 xml.enter(FHIR_NS, name); 35605 composeTestScriptElements(element); 35606 composeElementClose(element); 35607 xml.exit(FHIR_NS, name); 35608 } 35609 } 35610 35611 protected void composeTestScriptElements(TestScript element) throws IOException { 35612 composeDomainResourceElements(element); 35613 if (element.hasUrlElement()) { 35614 composeUri("url", element.getUrlElement()); 35615 } 35616 if (element.hasIdentifier()) { 35617 composeIdentifier("identifier", element.getIdentifier()); 35618 } 35619 if (element.hasVersionElement()) { 35620 composeString("version", element.getVersionElement()); 35621 } 35622 if (element.hasNameElement()) { 35623 composeString("name", element.getNameElement()); 35624 } 35625 if (element.hasTitleElement()) { 35626 composeString("title", element.getTitleElement()); 35627 } 35628 if (element.hasStatusElement()) 35629 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 35630 if (element.hasExperimentalElement()) { 35631 composeBoolean("experimental", element.getExperimentalElement()); 35632 } 35633 if (element.hasDateElement()) { 35634 composeDateTime("date", element.getDateElement()); 35635 } 35636 if (element.hasPublisherElement()) { 35637 composeString("publisher", element.getPublisherElement()); 35638 } 35639 if (element.hasContact()) { 35640 for (ContactDetail e : element.getContact()) 35641 composeContactDetail("contact", e); 35642 } 35643 if (element.hasDescriptionElement()) { 35644 composeMarkdown("description", element.getDescriptionElement()); 35645 } 35646 if (element.hasUseContext()) { 35647 for (UsageContext e : element.getUseContext()) 35648 composeUsageContext("useContext", e); 35649 } 35650 if (element.hasJurisdiction()) { 35651 for (CodeableConcept e : element.getJurisdiction()) 35652 composeCodeableConcept("jurisdiction", e); 35653 } 35654 if (element.hasPurposeElement()) { 35655 composeMarkdown("purpose", element.getPurposeElement()); 35656 } 35657 if (element.hasCopyrightElement()) { 35658 composeMarkdown("copyright", element.getCopyrightElement()); 35659 } 35660 if (element.hasOrigin()) { 35661 for (TestScript.TestScriptOriginComponent e : element.getOrigin()) 35662 composeTestScriptTestScriptOriginComponent("origin", e); 35663 } 35664 if (element.hasDestination()) { 35665 for (TestScript.TestScriptDestinationComponent e : element.getDestination()) 35666 composeTestScriptTestScriptDestinationComponent("destination", e); 35667 } 35668 if (element.hasMetadata()) { 35669 composeTestScriptTestScriptMetadataComponent("metadata", element.getMetadata()); 35670 } 35671 if (element.hasFixture()) { 35672 for (TestScript.TestScriptFixtureComponent e : element.getFixture()) 35673 composeTestScriptTestScriptFixtureComponent("fixture", e); 35674 } 35675 if (element.hasProfile()) { 35676 for (Reference e : element.getProfile()) 35677 composeReference("profile", e); 35678 } 35679 if (element.hasVariable()) { 35680 for (TestScript.TestScriptVariableComponent e : element.getVariable()) 35681 composeTestScriptTestScriptVariableComponent("variable", e); 35682 } 35683 if (element.hasRule()) { 35684 for (TestScript.TestScriptRuleComponent e : element.getRule()) 35685 composeTestScriptTestScriptRuleComponent("rule", e); 35686 } 35687 if (element.hasRuleset()) { 35688 for (TestScript.TestScriptRulesetComponent e : element.getRuleset()) 35689 composeTestScriptTestScriptRulesetComponent("ruleset", e); 35690 } 35691 if (element.hasSetup()) { 35692 composeTestScriptTestScriptSetupComponent("setup", element.getSetup()); 35693 } 35694 if (element.hasTest()) { 35695 for (TestScript.TestScriptTestComponent e : element.getTest()) 35696 composeTestScriptTestScriptTestComponent("test", e); 35697 } 35698 if (element.hasTeardown()) { 35699 composeTestScriptTestScriptTeardownComponent("teardown", element.getTeardown()); 35700 } 35701 } 35702 35703 protected void composeTestScriptTestScriptOriginComponent(String name, TestScript.TestScriptOriginComponent element) throws IOException { 35704 if (element != null) { 35705 composeElementAttributes(element); 35706 xml.enter(FHIR_NS, name); 35707 composeTestScriptTestScriptOriginComponentElements(element); 35708 composeElementClose(element); 35709 xml.exit(FHIR_NS, name); 35710 } 35711 } 35712 35713 protected void composeTestScriptTestScriptOriginComponentElements(TestScript.TestScriptOriginComponent element) throws IOException { 35714 composeBackboneElements(element); 35715 if (element.hasIndexElement()) { 35716 composeInteger("index", element.getIndexElement()); 35717 } 35718 if (element.hasProfile()) { 35719 composeCoding("profile", element.getProfile()); 35720 } 35721 } 35722 35723 protected void composeTestScriptTestScriptDestinationComponent(String name, TestScript.TestScriptDestinationComponent element) throws IOException { 35724 if (element != null) { 35725 composeElementAttributes(element); 35726 xml.enter(FHIR_NS, name); 35727 composeTestScriptTestScriptDestinationComponentElements(element); 35728 composeElementClose(element); 35729 xml.exit(FHIR_NS, name); 35730 } 35731 } 35732 35733 protected void composeTestScriptTestScriptDestinationComponentElements(TestScript.TestScriptDestinationComponent element) throws IOException { 35734 composeBackboneElements(element); 35735 if (element.hasIndexElement()) { 35736 composeInteger("index", element.getIndexElement()); 35737 } 35738 if (element.hasProfile()) { 35739 composeCoding("profile", element.getProfile()); 35740 } 35741 } 35742 35743 protected void composeTestScriptTestScriptMetadataComponent(String name, TestScript.TestScriptMetadataComponent element) throws IOException { 35744 if (element != null) { 35745 composeElementAttributes(element); 35746 xml.enter(FHIR_NS, name); 35747 composeTestScriptTestScriptMetadataComponentElements(element); 35748 composeElementClose(element); 35749 xml.exit(FHIR_NS, name); 35750 } 35751 } 35752 35753 protected void composeTestScriptTestScriptMetadataComponentElements(TestScript.TestScriptMetadataComponent element) throws IOException { 35754 composeBackboneElements(element); 35755 if (element.hasLink()) { 35756 for (TestScript.TestScriptMetadataLinkComponent e : element.getLink()) 35757 composeTestScriptTestScriptMetadataLinkComponent("link", e); 35758 } 35759 if (element.hasCapability()) { 35760 for (TestScript.TestScriptMetadataCapabilityComponent e : element.getCapability()) 35761 composeTestScriptTestScriptMetadataCapabilityComponent("capability", e); 35762 } 35763 } 35764 35765 protected void composeTestScriptTestScriptMetadataLinkComponent(String name, TestScript.TestScriptMetadataLinkComponent element) throws IOException { 35766 if (element != null) { 35767 composeElementAttributes(element); 35768 xml.enter(FHIR_NS, name); 35769 composeTestScriptTestScriptMetadataLinkComponentElements(element); 35770 composeElementClose(element); 35771 xml.exit(FHIR_NS, name); 35772 } 35773 } 35774 35775 protected void composeTestScriptTestScriptMetadataLinkComponentElements(TestScript.TestScriptMetadataLinkComponent element) throws IOException { 35776 composeBackboneElements(element); 35777 if (element.hasUrlElement()) { 35778 composeUri("url", element.getUrlElement()); 35779 } 35780 if (element.hasDescriptionElement()) { 35781 composeString("description", element.getDescriptionElement()); 35782 } 35783 } 35784 35785 protected void composeTestScriptTestScriptMetadataCapabilityComponent(String name, TestScript.TestScriptMetadataCapabilityComponent element) throws IOException { 35786 if (element != null) { 35787 composeElementAttributes(element); 35788 xml.enter(FHIR_NS, name); 35789 composeTestScriptTestScriptMetadataCapabilityComponentElements(element); 35790 composeElementClose(element); 35791 xml.exit(FHIR_NS, name); 35792 } 35793 } 35794 35795 protected void composeTestScriptTestScriptMetadataCapabilityComponentElements(TestScript.TestScriptMetadataCapabilityComponent element) throws IOException { 35796 composeBackboneElements(element); 35797 if (element.hasRequiredElement()) { 35798 composeBoolean("required", element.getRequiredElement()); 35799 } 35800 if (element.hasValidatedElement()) { 35801 composeBoolean("validated", element.getValidatedElement()); 35802 } 35803 if (element.hasDescriptionElement()) { 35804 composeString("description", element.getDescriptionElement()); 35805 } 35806 if (element.hasOrigin()) { 35807 for (IntegerType e : element.getOrigin()) 35808 composeInteger("origin", e); 35809 } 35810 if (element.hasDestinationElement()) { 35811 composeInteger("destination", element.getDestinationElement()); 35812 } 35813 if (element.hasLink()) { 35814 for (UriType e : element.getLink()) 35815 composeUri("link", e); 35816 } 35817 if (element.hasCapabilities()) { 35818 composeReference("capabilities", element.getCapabilities()); 35819 } 35820 } 35821 35822 protected void composeTestScriptTestScriptFixtureComponent(String name, TestScript.TestScriptFixtureComponent element) throws IOException { 35823 if (element != null) { 35824 composeElementAttributes(element); 35825 xml.enter(FHIR_NS, name); 35826 composeTestScriptTestScriptFixtureComponentElements(element); 35827 composeElementClose(element); 35828 xml.exit(FHIR_NS, name); 35829 } 35830 } 35831 35832 protected void composeTestScriptTestScriptFixtureComponentElements(TestScript.TestScriptFixtureComponent element) throws IOException { 35833 composeBackboneElements(element); 35834 if (element.hasAutocreateElement()) { 35835 composeBoolean("autocreate", element.getAutocreateElement()); 35836 } 35837 if (element.hasAutodeleteElement()) { 35838 composeBoolean("autodelete", element.getAutodeleteElement()); 35839 } 35840 if (element.hasResource()) { 35841 composeReference("resource", element.getResource()); 35842 } 35843 } 35844 35845 protected void composeTestScriptTestScriptVariableComponent(String name, TestScript.TestScriptVariableComponent element) throws IOException { 35846 if (element != null) { 35847 composeElementAttributes(element); 35848 xml.enter(FHIR_NS, name); 35849 composeTestScriptTestScriptVariableComponentElements(element); 35850 composeElementClose(element); 35851 xml.exit(FHIR_NS, name); 35852 } 35853 } 35854 35855 protected void composeTestScriptTestScriptVariableComponentElements(TestScript.TestScriptVariableComponent element) throws IOException { 35856 composeBackboneElements(element); 35857 if (element.hasNameElement()) { 35858 composeString("name", element.getNameElement()); 35859 } 35860 if (element.hasDefaultValueElement()) { 35861 composeString("defaultValue", element.getDefaultValueElement()); 35862 } 35863 if (element.hasDescriptionElement()) { 35864 composeString("description", element.getDescriptionElement()); 35865 } 35866 if (element.hasExpressionElement()) { 35867 composeString("expression", element.getExpressionElement()); 35868 } 35869 if (element.hasHeaderFieldElement()) { 35870 composeString("headerField", element.getHeaderFieldElement()); 35871 } 35872 if (element.hasHintElement()) { 35873 composeString("hint", element.getHintElement()); 35874 } 35875 if (element.hasPathElement()) { 35876 composeString("path", element.getPathElement()); 35877 } 35878 if (element.hasSourceIdElement()) { 35879 composeId("sourceId", element.getSourceIdElement()); 35880 } 35881 } 35882 35883 protected void composeTestScriptTestScriptRuleComponent(String name, TestScript.TestScriptRuleComponent element) throws IOException { 35884 if (element != null) { 35885 composeElementAttributes(element); 35886 xml.enter(FHIR_NS, name); 35887 composeTestScriptTestScriptRuleComponentElements(element); 35888 composeElementClose(element); 35889 xml.exit(FHIR_NS, name); 35890 } 35891 } 35892 35893 protected void composeTestScriptTestScriptRuleComponentElements(TestScript.TestScriptRuleComponent element) throws IOException { 35894 composeBackboneElements(element); 35895 if (element.hasResource()) { 35896 composeReference("resource", element.getResource()); 35897 } 35898 if (element.hasParam()) { 35899 for (TestScript.RuleParamComponent e : element.getParam()) 35900 composeTestScriptRuleParamComponent("param", e); 35901 } 35902 } 35903 35904 protected void composeTestScriptRuleParamComponent(String name, TestScript.RuleParamComponent element) throws IOException { 35905 if (element != null) { 35906 composeElementAttributes(element); 35907 xml.enter(FHIR_NS, name); 35908 composeTestScriptRuleParamComponentElements(element); 35909 composeElementClose(element); 35910 xml.exit(FHIR_NS, name); 35911 } 35912 } 35913 35914 protected void composeTestScriptRuleParamComponentElements(TestScript.RuleParamComponent element) throws IOException { 35915 composeBackboneElements(element); 35916 if (element.hasNameElement()) { 35917 composeString("name", element.getNameElement()); 35918 } 35919 if (element.hasValueElement()) { 35920 composeString("value", element.getValueElement()); 35921 } 35922 } 35923 35924 protected void composeTestScriptTestScriptRulesetComponent(String name, TestScript.TestScriptRulesetComponent element) throws IOException { 35925 if (element != null) { 35926 composeElementAttributes(element); 35927 xml.enter(FHIR_NS, name); 35928 composeTestScriptTestScriptRulesetComponentElements(element); 35929 composeElementClose(element); 35930 xml.exit(FHIR_NS, name); 35931 } 35932 } 35933 35934 protected void composeTestScriptTestScriptRulesetComponentElements(TestScript.TestScriptRulesetComponent element) throws IOException { 35935 composeBackboneElements(element); 35936 if (element.hasResource()) { 35937 composeReference("resource", element.getResource()); 35938 } 35939 if (element.hasRule()) { 35940 for (TestScript.RulesetRuleComponent e : element.getRule()) 35941 composeTestScriptRulesetRuleComponent("rule", e); 35942 } 35943 } 35944 35945 protected void composeTestScriptRulesetRuleComponent(String name, TestScript.RulesetRuleComponent element) throws IOException { 35946 if (element != null) { 35947 composeElementAttributes(element); 35948 xml.enter(FHIR_NS, name); 35949 composeTestScriptRulesetRuleComponentElements(element); 35950 composeElementClose(element); 35951 xml.exit(FHIR_NS, name); 35952 } 35953 } 35954 35955 protected void composeTestScriptRulesetRuleComponentElements(TestScript.RulesetRuleComponent element) throws IOException { 35956 composeBackboneElements(element); 35957 if (element.hasRuleIdElement()) { 35958 composeId("ruleId", element.getRuleIdElement()); 35959 } 35960 if (element.hasParam()) { 35961 for (TestScript.RulesetRuleParamComponent e : element.getParam()) 35962 composeTestScriptRulesetRuleParamComponent("param", e); 35963 } 35964 } 35965 35966 protected void composeTestScriptRulesetRuleParamComponent(String name, TestScript.RulesetRuleParamComponent element) throws IOException { 35967 if (element != null) { 35968 composeElementAttributes(element); 35969 xml.enter(FHIR_NS, name); 35970 composeTestScriptRulesetRuleParamComponentElements(element); 35971 composeElementClose(element); 35972 xml.exit(FHIR_NS, name); 35973 } 35974 } 35975 35976 protected void composeTestScriptRulesetRuleParamComponentElements(TestScript.RulesetRuleParamComponent element) throws IOException { 35977 composeBackboneElements(element); 35978 if (element.hasNameElement()) { 35979 composeString("name", element.getNameElement()); 35980 } 35981 if (element.hasValueElement()) { 35982 composeString("value", element.getValueElement()); 35983 } 35984 } 35985 35986 protected void composeTestScriptTestScriptSetupComponent(String name, TestScript.TestScriptSetupComponent element) throws IOException { 35987 if (element != null) { 35988 composeElementAttributes(element); 35989 xml.enter(FHIR_NS, name); 35990 composeTestScriptTestScriptSetupComponentElements(element); 35991 composeElementClose(element); 35992 xml.exit(FHIR_NS, name); 35993 } 35994 } 35995 35996 protected void composeTestScriptTestScriptSetupComponentElements(TestScript.TestScriptSetupComponent element) throws IOException { 35997 composeBackboneElements(element); 35998 if (element.hasAction()) { 35999 for (TestScript.SetupActionComponent e : element.getAction()) 36000 composeTestScriptSetupActionComponent("action", e); 36001 } 36002 } 36003 36004 protected void composeTestScriptSetupActionComponent(String name, TestScript.SetupActionComponent element) throws IOException { 36005 if (element != null) { 36006 composeElementAttributes(element); 36007 xml.enter(FHIR_NS, name); 36008 composeTestScriptSetupActionComponentElements(element); 36009 composeElementClose(element); 36010 xml.exit(FHIR_NS, name); 36011 } 36012 } 36013 36014 protected void composeTestScriptSetupActionComponentElements(TestScript.SetupActionComponent element) throws IOException { 36015 composeBackboneElements(element); 36016 if (element.hasOperation()) { 36017 composeTestScriptSetupActionOperationComponent("operation", element.getOperation()); 36018 } 36019 if (element.hasAssert()) { 36020 composeTestScriptSetupActionAssertComponent("assert", element.getAssert()); 36021 } 36022 } 36023 36024 protected void composeTestScriptSetupActionOperationComponent(String name, TestScript.SetupActionOperationComponent element) throws IOException { 36025 if (element != null) { 36026 composeElementAttributes(element); 36027 xml.enter(FHIR_NS, name); 36028 composeTestScriptSetupActionOperationComponentElements(element); 36029 composeElementClose(element); 36030 xml.exit(FHIR_NS, name); 36031 } 36032 } 36033 36034 protected void composeTestScriptSetupActionOperationComponentElements(TestScript.SetupActionOperationComponent element) throws IOException { 36035 composeBackboneElements(element); 36036 if (element.hasType()) { 36037 composeCoding("type", element.getType()); 36038 } 36039 if (element.hasResourceElement()) { 36040 composeCode("resource", element.getResourceElement()); 36041 } 36042 if (element.hasLabelElement()) { 36043 composeString("label", element.getLabelElement()); 36044 } 36045 if (element.hasDescriptionElement()) { 36046 composeString("description", element.getDescriptionElement()); 36047 } 36048 if (element.hasAcceptElement()) 36049 composeEnumeration("accept", element.getAcceptElement(), new TestScript.ContentTypeEnumFactory()); 36050 if (element.hasContentTypeElement()) 36051 composeEnumeration("contentType", element.getContentTypeElement(), new TestScript.ContentTypeEnumFactory()); 36052 if (element.hasDestinationElement()) { 36053 composeInteger("destination", element.getDestinationElement()); 36054 } 36055 if (element.hasEncodeRequestUrlElement()) { 36056 composeBoolean("encodeRequestUrl", element.getEncodeRequestUrlElement()); 36057 } 36058 if (element.hasOriginElement()) { 36059 composeInteger("origin", element.getOriginElement()); 36060 } 36061 if (element.hasParamsElement()) { 36062 composeString("params", element.getParamsElement()); 36063 } 36064 if (element.hasRequestHeader()) { 36065 for (TestScript.SetupActionOperationRequestHeaderComponent e : element.getRequestHeader()) 36066 composeTestScriptSetupActionOperationRequestHeaderComponent("requestHeader", e); 36067 } 36068 if (element.hasRequestIdElement()) { 36069 composeId("requestId", element.getRequestIdElement()); 36070 } 36071 if (element.hasResponseIdElement()) { 36072 composeId("responseId", element.getResponseIdElement()); 36073 } 36074 if (element.hasSourceIdElement()) { 36075 composeId("sourceId", element.getSourceIdElement()); 36076 } 36077 if (element.hasTargetIdElement()) { 36078 composeId("targetId", element.getTargetIdElement()); 36079 } 36080 if (element.hasUrlElement()) { 36081 composeString("url", element.getUrlElement()); 36082 } 36083 } 36084 36085 protected void composeTestScriptSetupActionOperationRequestHeaderComponent(String name, TestScript.SetupActionOperationRequestHeaderComponent element) throws IOException { 36086 if (element != null) { 36087 composeElementAttributes(element); 36088 xml.enter(FHIR_NS, name); 36089 composeTestScriptSetupActionOperationRequestHeaderComponentElements(element); 36090 composeElementClose(element); 36091 xml.exit(FHIR_NS, name); 36092 } 36093 } 36094 36095 protected void composeTestScriptSetupActionOperationRequestHeaderComponentElements(TestScript.SetupActionOperationRequestHeaderComponent element) throws IOException { 36096 composeBackboneElements(element); 36097 if (element.hasFieldElement()) { 36098 composeString("field", element.getFieldElement()); 36099 } 36100 if (element.hasValueElement()) { 36101 composeString("value", element.getValueElement()); 36102 } 36103 } 36104 36105 protected void composeTestScriptSetupActionAssertComponent(String name, TestScript.SetupActionAssertComponent element) throws IOException { 36106 if (element != null) { 36107 composeElementAttributes(element); 36108 xml.enter(FHIR_NS, name); 36109 composeTestScriptSetupActionAssertComponentElements(element); 36110 composeElementClose(element); 36111 xml.exit(FHIR_NS, name); 36112 } 36113 } 36114 36115 protected void composeTestScriptSetupActionAssertComponentElements(TestScript.SetupActionAssertComponent element) throws IOException { 36116 composeBackboneElements(element); 36117 if (element.hasLabelElement()) { 36118 composeString("label", element.getLabelElement()); 36119 } 36120 if (element.hasDescriptionElement()) { 36121 composeString("description", element.getDescriptionElement()); 36122 } 36123 if (element.hasDirectionElement()) 36124 composeEnumeration("direction", element.getDirectionElement(), new TestScript.AssertionDirectionTypeEnumFactory()); 36125 if (element.hasCompareToSourceIdElement()) { 36126 composeString("compareToSourceId", element.getCompareToSourceIdElement()); 36127 } 36128 if (element.hasCompareToSourceExpressionElement()) { 36129 composeString("compareToSourceExpression", element.getCompareToSourceExpressionElement()); 36130 } 36131 if (element.hasCompareToSourcePathElement()) { 36132 composeString("compareToSourcePath", element.getCompareToSourcePathElement()); 36133 } 36134 if (element.hasContentTypeElement()) 36135 composeEnumeration("contentType", element.getContentTypeElement(), new TestScript.ContentTypeEnumFactory()); 36136 if (element.hasExpressionElement()) { 36137 composeString("expression", element.getExpressionElement()); 36138 } 36139 if (element.hasHeaderFieldElement()) { 36140 composeString("headerField", element.getHeaderFieldElement()); 36141 } 36142 if (element.hasMinimumIdElement()) { 36143 composeString("minimumId", element.getMinimumIdElement()); 36144 } 36145 if (element.hasNavigationLinksElement()) { 36146 composeBoolean("navigationLinks", element.getNavigationLinksElement()); 36147 } 36148 if (element.hasOperatorElement()) 36149 composeEnumeration("operator", element.getOperatorElement(), new TestScript.AssertionOperatorTypeEnumFactory()); 36150 if (element.hasPathElement()) { 36151 composeString("path", element.getPathElement()); 36152 } 36153 if (element.hasRequestMethodElement()) 36154 composeEnumeration("requestMethod", element.getRequestMethodElement(), new TestScript.TestScriptRequestMethodCodeEnumFactory()); 36155 if (element.hasRequestURLElement()) { 36156 composeString("requestURL", element.getRequestURLElement()); 36157 } 36158 if (element.hasResourceElement()) { 36159 composeCode("resource", element.getResourceElement()); 36160 } 36161 if (element.hasResponseElement()) 36162 composeEnumeration("response", element.getResponseElement(), new TestScript.AssertionResponseTypesEnumFactory()); 36163 if (element.hasResponseCodeElement()) { 36164 composeString("responseCode", element.getResponseCodeElement()); 36165 } 36166 if (element.hasRule()) { 36167 composeTestScriptActionAssertRuleComponent("rule", element.getRule()); 36168 } 36169 if (element.hasRuleset()) { 36170 composeTestScriptActionAssertRulesetComponent("ruleset", element.getRuleset()); 36171 } 36172 if (element.hasSourceIdElement()) { 36173 composeId("sourceId", element.getSourceIdElement()); 36174 } 36175 if (element.hasValidateProfileIdElement()) { 36176 composeId("validateProfileId", element.getValidateProfileIdElement()); 36177 } 36178 if (element.hasValueElement()) { 36179 composeString("value", element.getValueElement()); 36180 } 36181 if (element.hasWarningOnlyElement()) { 36182 composeBoolean("warningOnly", element.getWarningOnlyElement()); 36183 } 36184 } 36185 36186 protected void composeTestScriptActionAssertRuleComponent(String name, TestScript.ActionAssertRuleComponent element) throws IOException { 36187 if (element != null) { 36188 composeElementAttributes(element); 36189 xml.enter(FHIR_NS, name); 36190 composeTestScriptActionAssertRuleComponentElements(element); 36191 composeElementClose(element); 36192 xml.exit(FHIR_NS, name); 36193 } 36194 } 36195 36196 protected void composeTestScriptActionAssertRuleComponentElements(TestScript.ActionAssertRuleComponent element) throws IOException { 36197 composeBackboneElements(element); 36198 if (element.hasRuleIdElement()) { 36199 composeId("ruleId", element.getRuleIdElement()); 36200 } 36201 if (element.hasParam()) { 36202 for (TestScript.ActionAssertRuleParamComponent e : element.getParam()) 36203 composeTestScriptActionAssertRuleParamComponent("param", e); 36204 } 36205 } 36206 36207 protected void composeTestScriptActionAssertRuleParamComponent(String name, TestScript.ActionAssertRuleParamComponent element) throws IOException { 36208 if (element != null) { 36209 composeElementAttributes(element); 36210 xml.enter(FHIR_NS, name); 36211 composeTestScriptActionAssertRuleParamComponentElements(element); 36212 composeElementClose(element); 36213 xml.exit(FHIR_NS, name); 36214 } 36215 } 36216 36217 protected void composeTestScriptActionAssertRuleParamComponentElements(TestScript.ActionAssertRuleParamComponent element) throws IOException { 36218 composeBackboneElements(element); 36219 if (element.hasNameElement()) { 36220 composeString("name", element.getNameElement()); 36221 } 36222 if (element.hasValueElement()) { 36223 composeString("value", element.getValueElement()); 36224 } 36225 } 36226 36227 protected void composeTestScriptActionAssertRulesetComponent(String name, TestScript.ActionAssertRulesetComponent element) throws IOException { 36228 if (element != null) { 36229 composeElementAttributes(element); 36230 xml.enter(FHIR_NS, name); 36231 composeTestScriptActionAssertRulesetComponentElements(element); 36232 composeElementClose(element); 36233 xml.exit(FHIR_NS, name); 36234 } 36235 } 36236 36237 protected void composeTestScriptActionAssertRulesetComponentElements(TestScript.ActionAssertRulesetComponent element) throws IOException { 36238 composeBackboneElements(element); 36239 if (element.hasRulesetIdElement()) { 36240 composeId("rulesetId", element.getRulesetIdElement()); 36241 } 36242 if (element.hasRule()) { 36243 for (TestScript.ActionAssertRulesetRuleComponent e : element.getRule()) 36244 composeTestScriptActionAssertRulesetRuleComponent("rule", e); 36245 } 36246 } 36247 36248 protected void composeTestScriptActionAssertRulesetRuleComponent(String name, TestScript.ActionAssertRulesetRuleComponent element) throws IOException { 36249 if (element != null) { 36250 composeElementAttributes(element); 36251 xml.enter(FHIR_NS, name); 36252 composeTestScriptActionAssertRulesetRuleComponentElements(element); 36253 composeElementClose(element); 36254 xml.exit(FHIR_NS, name); 36255 } 36256 } 36257 36258 protected void composeTestScriptActionAssertRulesetRuleComponentElements(TestScript.ActionAssertRulesetRuleComponent element) throws IOException { 36259 composeBackboneElements(element); 36260 if (element.hasRuleIdElement()) { 36261 composeId("ruleId", element.getRuleIdElement()); 36262 } 36263 if (element.hasParam()) { 36264 for (TestScript.ActionAssertRulesetRuleParamComponent e : element.getParam()) 36265 composeTestScriptActionAssertRulesetRuleParamComponent("param", e); 36266 } 36267 } 36268 36269 protected void composeTestScriptActionAssertRulesetRuleParamComponent(String name, TestScript.ActionAssertRulesetRuleParamComponent element) throws IOException { 36270 if (element != null) { 36271 composeElementAttributes(element); 36272 xml.enter(FHIR_NS, name); 36273 composeTestScriptActionAssertRulesetRuleParamComponentElements(element); 36274 composeElementClose(element); 36275 xml.exit(FHIR_NS, name); 36276 } 36277 } 36278 36279 protected void composeTestScriptActionAssertRulesetRuleParamComponentElements(TestScript.ActionAssertRulesetRuleParamComponent element) throws IOException { 36280 composeBackboneElements(element); 36281 if (element.hasNameElement()) { 36282 composeString("name", element.getNameElement()); 36283 } 36284 if (element.hasValueElement()) { 36285 composeString("value", element.getValueElement()); 36286 } 36287 } 36288 36289 protected void composeTestScriptTestScriptTestComponent(String name, TestScript.TestScriptTestComponent element) throws IOException { 36290 if (element != null) { 36291 composeElementAttributes(element); 36292 xml.enter(FHIR_NS, name); 36293 composeTestScriptTestScriptTestComponentElements(element); 36294 composeElementClose(element); 36295 xml.exit(FHIR_NS, name); 36296 } 36297 } 36298 36299 protected void composeTestScriptTestScriptTestComponentElements(TestScript.TestScriptTestComponent element) throws IOException { 36300 composeBackboneElements(element); 36301 if (element.hasNameElement()) { 36302 composeString("name", element.getNameElement()); 36303 } 36304 if (element.hasDescriptionElement()) { 36305 composeString("description", element.getDescriptionElement()); 36306 } 36307 if (element.hasAction()) { 36308 for (TestScript.TestActionComponent e : element.getAction()) 36309 composeTestScriptTestActionComponent("action", e); 36310 } 36311 } 36312 36313 protected void composeTestScriptTestActionComponent(String name, TestScript.TestActionComponent element) throws IOException { 36314 if (element != null) { 36315 composeElementAttributes(element); 36316 xml.enter(FHIR_NS, name); 36317 composeTestScriptTestActionComponentElements(element); 36318 composeElementClose(element); 36319 xml.exit(FHIR_NS, name); 36320 } 36321 } 36322 36323 protected void composeTestScriptTestActionComponentElements(TestScript.TestActionComponent element) throws IOException { 36324 composeBackboneElements(element); 36325 if (element.hasOperation()) { 36326 composeTestScriptSetupActionOperationComponent("operation", element.getOperation()); 36327 } 36328 if (element.hasAssert()) { 36329 composeTestScriptSetupActionAssertComponent("assert", element.getAssert()); 36330 } 36331 } 36332 36333 protected void composeTestScriptTestScriptTeardownComponent(String name, TestScript.TestScriptTeardownComponent element) throws IOException { 36334 if (element != null) { 36335 composeElementAttributes(element); 36336 xml.enter(FHIR_NS, name); 36337 composeTestScriptTestScriptTeardownComponentElements(element); 36338 composeElementClose(element); 36339 xml.exit(FHIR_NS, name); 36340 } 36341 } 36342 36343 protected void composeTestScriptTestScriptTeardownComponentElements(TestScript.TestScriptTeardownComponent element) throws IOException { 36344 composeBackboneElements(element); 36345 if (element.hasAction()) { 36346 for (TestScript.TeardownActionComponent e : element.getAction()) 36347 composeTestScriptTeardownActionComponent("action", e); 36348 } 36349 } 36350 36351 protected void composeTestScriptTeardownActionComponent(String name, TestScript.TeardownActionComponent element) throws IOException { 36352 if (element != null) { 36353 composeElementAttributes(element); 36354 xml.enter(FHIR_NS, name); 36355 composeTestScriptTeardownActionComponentElements(element); 36356 composeElementClose(element); 36357 xml.exit(FHIR_NS, name); 36358 } 36359 } 36360 36361 protected void composeTestScriptTeardownActionComponentElements(TestScript.TeardownActionComponent element) throws IOException { 36362 composeBackboneElements(element); 36363 if (element.hasOperation()) { 36364 composeTestScriptSetupActionOperationComponent("operation", element.getOperation()); 36365 } 36366 } 36367 36368 protected void composeValueSet(String name, ValueSet element) throws IOException { 36369 if (element != null) { 36370 composeDomainResourceAttributes(element); 36371 xml.enter(FHIR_NS, name); 36372 composeValueSetElements(element); 36373 composeElementClose(element); 36374 xml.exit(FHIR_NS, name); 36375 } 36376 } 36377 36378 protected void composeValueSetElements(ValueSet element) throws IOException { 36379 composeDomainResourceElements(element); 36380 if (element.hasUrlElement()) { 36381 composeUri("url", element.getUrlElement()); 36382 } 36383 if (element.hasIdentifier()) { 36384 for (Identifier e : element.getIdentifier()) 36385 composeIdentifier("identifier", e); 36386 } 36387 if (element.hasVersionElement()) { 36388 composeString("version", element.getVersionElement()); 36389 } 36390 if (element.hasNameElement()) { 36391 composeString("name", element.getNameElement()); 36392 } 36393 if (element.hasTitleElement()) { 36394 composeString("title", element.getTitleElement()); 36395 } 36396 if (element.hasStatusElement()) 36397 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 36398 if (element.hasExperimentalElement()) { 36399 composeBoolean("experimental", element.getExperimentalElement()); 36400 } 36401 if (element.hasDateElement()) { 36402 composeDateTime("date", element.getDateElement()); 36403 } 36404 if (element.hasPublisherElement()) { 36405 composeString("publisher", element.getPublisherElement()); 36406 } 36407 if (element.hasContact()) { 36408 for (ContactDetail e : element.getContact()) 36409 composeContactDetail("contact", e); 36410 } 36411 if (element.hasDescriptionElement()) { 36412 composeMarkdown("description", element.getDescriptionElement()); 36413 } 36414 if (element.hasUseContext()) { 36415 for (UsageContext e : element.getUseContext()) 36416 composeUsageContext("useContext", e); 36417 } 36418 if (element.hasJurisdiction()) { 36419 for (CodeableConcept e : element.getJurisdiction()) 36420 composeCodeableConcept("jurisdiction", e); 36421 } 36422 if (element.hasImmutableElement()) { 36423 composeBoolean("immutable", element.getImmutableElement()); 36424 } 36425 if (element.hasPurposeElement()) { 36426 composeMarkdown("purpose", element.getPurposeElement()); 36427 } 36428 if (element.hasCopyrightElement()) { 36429 composeMarkdown("copyright", element.getCopyrightElement()); 36430 } 36431 if (element.hasExtensibleElement()) { 36432 composeBoolean("extensible", element.getExtensibleElement()); 36433 } 36434 if (element.hasCompose()) { 36435 composeValueSetValueSetComposeComponent("compose", element.getCompose()); 36436 } 36437 if (element.hasExpansion()) { 36438 composeValueSetValueSetExpansionComponent("expansion", element.getExpansion()); 36439 } 36440 } 36441 36442 protected void composeValueSetValueSetComposeComponent(String name, ValueSet.ValueSetComposeComponent element) throws IOException { 36443 if (element != null) { 36444 composeElementAttributes(element); 36445 xml.enter(FHIR_NS, name); 36446 composeValueSetValueSetComposeComponentElements(element); 36447 composeElementClose(element); 36448 xml.exit(FHIR_NS, name); 36449 } 36450 } 36451 36452 protected void composeValueSetValueSetComposeComponentElements(ValueSet.ValueSetComposeComponent element) throws IOException { 36453 composeBackboneElements(element); 36454 if (element.hasLockedDateElement()) { 36455 composeDate("lockedDate", element.getLockedDateElement()); 36456 } 36457 if (element.hasInactiveElement()) { 36458 composeBoolean("inactive", element.getInactiveElement()); 36459 } 36460 if (element.hasInclude()) { 36461 for (ValueSet.ConceptSetComponent e : element.getInclude()) 36462 composeValueSetConceptSetComponent("include", e); 36463 } 36464 if (element.hasExclude()) { 36465 for (ValueSet.ConceptSetComponent e : element.getExclude()) 36466 composeValueSetConceptSetComponent("exclude", e); 36467 } 36468 } 36469 36470 protected void composeValueSetConceptSetComponent(String name, ValueSet.ConceptSetComponent element) throws IOException { 36471 if (element != null) { 36472 composeElementAttributes(element); 36473 xml.enter(FHIR_NS, name); 36474 composeValueSetConceptSetComponentElements(element); 36475 composeElementClose(element); 36476 xml.exit(FHIR_NS, name); 36477 } 36478 } 36479 36480 protected void composeValueSetConceptSetComponentElements(ValueSet.ConceptSetComponent element) throws IOException { 36481 composeBackboneElements(element); 36482 if (element.hasSystemElement()) { 36483 composeUri("system", element.getSystemElement()); 36484 } 36485 if (element.hasVersionElement()) { 36486 composeString("version", element.getVersionElement()); 36487 } 36488 if (element.hasConcept()) { 36489 for (ValueSet.ConceptReferenceComponent e : element.getConcept()) 36490 composeValueSetConceptReferenceComponent("concept", e); 36491 } 36492 if (element.hasFilter()) { 36493 for (ValueSet.ConceptSetFilterComponent e : element.getFilter()) 36494 composeValueSetConceptSetFilterComponent("filter", e); 36495 } 36496 if (element.hasValueSet()) { 36497 for (UriType e : element.getValueSet()) 36498 composeUri("valueSet", e); 36499 } 36500 } 36501 36502 protected void composeValueSetConceptReferenceComponent(String name, ValueSet.ConceptReferenceComponent element) throws IOException { 36503 if (element != null) { 36504 composeElementAttributes(element); 36505 xml.enter(FHIR_NS, name); 36506 composeValueSetConceptReferenceComponentElements(element); 36507 composeElementClose(element); 36508 xml.exit(FHIR_NS, name); 36509 } 36510 } 36511 36512 protected void composeValueSetConceptReferenceComponentElements(ValueSet.ConceptReferenceComponent element) throws IOException { 36513 composeBackboneElements(element); 36514 if (element.hasCodeElement()) { 36515 composeCode("code", element.getCodeElement()); 36516 } 36517 if (element.hasDisplayElement()) { 36518 composeString("display", element.getDisplayElement()); 36519 } 36520 if (element.hasDesignation()) { 36521 for (ValueSet.ConceptReferenceDesignationComponent e : element.getDesignation()) 36522 composeValueSetConceptReferenceDesignationComponent("designation", e); 36523 } 36524 } 36525 36526 protected void composeValueSetConceptReferenceDesignationComponent(String name, ValueSet.ConceptReferenceDesignationComponent element) throws IOException { 36527 if (element != null) { 36528 composeElementAttributes(element); 36529 xml.enter(FHIR_NS, name); 36530 composeValueSetConceptReferenceDesignationComponentElements(element); 36531 composeElementClose(element); 36532 xml.exit(FHIR_NS, name); 36533 } 36534 } 36535 36536 protected void composeValueSetConceptReferenceDesignationComponentElements(ValueSet.ConceptReferenceDesignationComponent element) throws IOException { 36537 composeBackboneElements(element); 36538 if (element.hasLanguageElement()) { 36539 composeCode("language", element.getLanguageElement()); 36540 } 36541 if (element.hasUse()) { 36542 composeCoding("use", element.getUse()); 36543 } 36544 if (element.hasValueElement()) { 36545 composeString("value", element.getValueElement()); 36546 } 36547 } 36548 36549 protected void composeValueSetConceptSetFilterComponent(String name, ValueSet.ConceptSetFilterComponent element) throws IOException { 36550 if (element != null) { 36551 composeElementAttributes(element); 36552 xml.enter(FHIR_NS, name); 36553 composeValueSetConceptSetFilterComponentElements(element); 36554 composeElementClose(element); 36555 xml.exit(FHIR_NS, name); 36556 } 36557 } 36558 36559 protected void composeValueSetConceptSetFilterComponentElements(ValueSet.ConceptSetFilterComponent element) throws IOException { 36560 composeBackboneElements(element); 36561 if (element.hasPropertyElement()) { 36562 composeCode("property", element.getPropertyElement()); 36563 } 36564 if (element.hasOpElement()) 36565 composeEnumeration("op", element.getOpElement(), new ValueSet.FilterOperatorEnumFactory()); 36566 if (element.hasValueElement()) { 36567 composeCode("value", element.getValueElement()); 36568 } 36569 } 36570 36571 protected void composeValueSetValueSetExpansionComponent(String name, ValueSet.ValueSetExpansionComponent element) throws IOException { 36572 if (element != null) { 36573 composeElementAttributes(element); 36574 xml.enter(FHIR_NS, name); 36575 composeValueSetValueSetExpansionComponentElements(element); 36576 composeElementClose(element); 36577 xml.exit(FHIR_NS, name); 36578 } 36579 } 36580 36581 protected void composeValueSetValueSetExpansionComponentElements(ValueSet.ValueSetExpansionComponent element) throws IOException { 36582 composeBackboneElements(element); 36583 if (element.hasIdentifierElement()) { 36584 composeUri("identifier", element.getIdentifierElement()); 36585 } 36586 if (element.hasTimestampElement()) { 36587 composeDateTime("timestamp", element.getTimestampElement()); 36588 } 36589 if (element.hasTotalElement()) { 36590 composeInteger("total", element.getTotalElement()); 36591 } 36592 if (element.hasOffsetElement()) { 36593 composeInteger("offset", element.getOffsetElement()); 36594 } 36595 if (element.hasParameter()) { 36596 for (ValueSet.ValueSetExpansionParameterComponent e : element.getParameter()) 36597 composeValueSetValueSetExpansionParameterComponent("parameter", e); 36598 } 36599 if (element.hasContains()) { 36600 for (ValueSet.ValueSetExpansionContainsComponent e : element.getContains()) 36601 composeValueSetValueSetExpansionContainsComponent("contains", e); 36602 } 36603 } 36604 36605 protected void composeValueSetValueSetExpansionParameterComponent(String name, ValueSet.ValueSetExpansionParameterComponent element) throws IOException { 36606 if (element != null) { 36607 composeElementAttributes(element); 36608 xml.enter(FHIR_NS, name); 36609 composeValueSetValueSetExpansionParameterComponentElements(element); 36610 composeElementClose(element); 36611 xml.exit(FHIR_NS, name); 36612 } 36613 } 36614 36615 protected void composeValueSetValueSetExpansionParameterComponentElements(ValueSet.ValueSetExpansionParameterComponent element) throws IOException { 36616 composeBackboneElements(element); 36617 if (element.hasNameElement()) { 36618 composeString("name", element.getNameElement()); 36619 } 36620 if (element.hasValue()) { 36621 composeType("value", element.getValue()); 36622 } } 36623 36624 protected void composeValueSetValueSetExpansionContainsComponent(String name, ValueSet.ValueSetExpansionContainsComponent element) throws IOException { 36625 if (element != null) { 36626 composeElementAttributes(element); 36627 xml.enter(FHIR_NS, name); 36628 composeValueSetValueSetExpansionContainsComponentElements(element); 36629 composeElementClose(element); 36630 xml.exit(FHIR_NS, name); 36631 } 36632 } 36633 36634 protected void composeValueSetValueSetExpansionContainsComponentElements(ValueSet.ValueSetExpansionContainsComponent element) throws IOException { 36635 composeBackboneElements(element); 36636 if (element.hasSystemElement()) { 36637 composeUri("system", element.getSystemElement()); 36638 } 36639 if (element.hasAbstractElement()) { 36640 composeBoolean("abstract", element.getAbstractElement()); 36641 } 36642 if (element.hasInactiveElement()) { 36643 composeBoolean("inactive", element.getInactiveElement()); 36644 } 36645 if (element.hasVersionElement()) { 36646 composeString("version", element.getVersionElement()); 36647 } 36648 if (element.hasCodeElement()) { 36649 composeCode("code", element.getCodeElement()); 36650 } 36651 if (element.hasDisplayElement()) { 36652 composeString("display", element.getDisplayElement()); 36653 } 36654 if (element.hasDesignation()) { 36655 for (ValueSet.ConceptReferenceDesignationComponent e : element.getDesignation()) 36656 composeValueSetConceptReferenceDesignationComponent("designation", e); 36657 } 36658 if (element.hasContains()) { 36659 for (ValueSet.ValueSetExpansionContainsComponent e : element.getContains()) 36660 composeValueSetValueSetExpansionContainsComponent("contains", e); 36661 } 36662 } 36663 36664 protected void composeVisionPrescription(String name, VisionPrescription element) throws IOException { 36665 if (element != null) { 36666 composeDomainResourceAttributes(element); 36667 xml.enter(FHIR_NS, name); 36668 composeVisionPrescriptionElements(element); 36669 composeElementClose(element); 36670 xml.exit(FHIR_NS, name); 36671 } 36672 } 36673 36674 protected void composeVisionPrescriptionElements(VisionPrescription element) throws IOException { 36675 composeDomainResourceElements(element); 36676 if (element.hasIdentifier()) { 36677 for (Identifier e : element.getIdentifier()) 36678 composeIdentifier("identifier", e); 36679 } 36680 if (element.hasStatusElement()) 36681 composeEnumeration("status", element.getStatusElement(), new VisionPrescription.VisionStatusEnumFactory()); 36682 if (element.hasPatient()) { 36683 composeReference("patient", element.getPatient()); 36684 } 36685 if (element.hasEncounter()) { 36686 composeReference("encounter", element.getEncounter()); 36687 } 36688 if (element.hasDateWrittenElement()) { 36689 composeDateTime("dateWritten", element.getDateWrittenElement()); 36690 } 36691 if (element.hasPrescriber()) { 36692 composeReference("prescriber", element.getPrescriber()); 36693 } 36694 if (element.hasReason()) { 36695 composeType("reason", element.getReason()); 36696 } if (element.hasDispense()) { 36697 for (VisionPrescription.VisionPrescriptionDispenseComponent e : element.getDispense()) 36698 composeVisionPrescriptionVisionPrescriptionDispenseComponent("dispense", e); 36699 } 36700 } 36701 36702 protected void composeVisionPrescriptionVisionPrescriptionDispenseComponent(String name, VisionPrescription.VisionPrescriptionDispenseComponent element) throws IOException { 36703 if (element != null) { 36704 composeElementAttributes(element); 36705 xml.enter(FHIR_NS, name); 36706 composeVisionPrescriptionVisionPrescriptionDispenseComponentElements(element); 36707 composeElementClose(element); 36708 xml.exit(FHIR_NS, name); 36709 } 36710 } 36711 36712 protected void composeVisionPrescriptionVisionPrescriptionDispenseComponentElements(VisionPrescription.VisionPrescriptionDispenseComponent element) throws IOException { 36713 composeBackboneElements(element); 36714 if (element.hasProduct()) { 36715 composeCodeableConcept("product", element.getProduct()); 36716 } 36717 if (element.hasEyeElement()) 36718 composeEnumeration("eye", element.getEyeElement(), new VisionPrescription.VisionEyesEnumFactory()); 36719 if (element.hasSphereElement()) { 36720 composeDecimal("sphere", element.getSphereElement()); 36721 } 36722 if (element.hasCylinderElement()) { 36723 composeDecimal("cylinder", element.getCylinderElement()); 36724 } 36725 if (element.hasAxisElement()) { 36726 composeInteger("axis", element.getAxisElement()); 36727 } 36728 if (element.hasPrismElement()) { 36729 composeDecimal("prism", element.getPrismElement()); 36730 } 36731 if (element.hasBaseElement()) 36732 composeEnumeration("base", element.getBaseElement(), new VisionPrescription.VisionBaseEnumFactory()); 36733 if (element.hasAddElement()) { 36734 composeDecimal("add", element.getAddElement()); 36735 } 36736 if (element.hasPowerElement()) { 36737 composeDecimal("power", element.getPowerElement()); 36738 } 36739 if (element.hasBackCurveElement()) { 36740 composeDecimal("backCurve", element.getBackCurveElement()); 36741 } 36742 if (element.hasDiameterElement()) { 36743 composeDecimal("diameter", element.getDiameterElement()); 36744 } 36745 if (element.hasDuration()) { 36746 composeSimpleQuantity("duration", element.getDuration()); 36747 } 36748 if (element.hasColorElement()) { 36749 composeString("color", element.getColorElement()); 36750 } 36751 if (element.hasBrandElement()) { 36752 composeString("brand", element.getBrandElement()); 36753 } 36754 if (element.hasNote()) { 36755 for (Annotation e : element.getNote()) 36756 composeAnnotation("note", e); 36757 } 36758 } 36759 36760 @Override 36761 protected void composeResource(Resource resource) throws IOException { 36762 if (resource instanceof Parameters) 36763 composeParameters("Parameters", (Parameters)resource); 36764 else if (resource instanceof Account) 36765 composeAccount("Account", (Account)resource); 36766 else if (resource instanceof ActivityDefinition) 36767 composeActivityDefinition("ActivityDefinition", (ActivityDefinition)resource); 36768 else if (resource instanceof AdverseEvent) 36769 composeAdverseEvent("AdverseEvent", (AdverseEvent)resource); 36770 else if (resource instanceof AllergyIntolerance) 36771 composeAllergyIntolerance("AllergyIntolerance", (AllergyIntolerance)resource); 36772 else if (resource instanceof Appointment) 36773 composeAppointment("Appointment", (Appointment)resource); 36774 else if (resource instanceof AppointmentResponse) 36775 composeAppointmentResponse("AppointmentResponse", (AppointmentResponse)resource); 36776 else if (resource instanceof AuditEvent) 36777 composeAuditEvent("AuditEvent", (AuditEvent)resource); 36778 else if (resource instanceof Basic) 36779 composeBasic("Basic", (Basic)resource); 36780 else if (resource instanceof Binary) 36781 composeBinary("Binary", (Binary)resource); 36782 else if (resource instanceof BodySite) 36783 composeBodySite("BodySite", (BodySite)resource); 36784 else if (resource instanceof Bundle) 36785 composeBundle("Bundle", (Bundle)resource); 36786 else if (resource instanceof CapabilityStatement) 36787 composeCapabilityStatement("CapabilityStatement", (CapabilityStatement)resource); 36788 else if (resource instanceof CarePlan) 36789 composeCarePlan("CarePlan", (CarePlan)resource); 36790 else if (resource instanceof CareTeam) 36791 composeCareTeam("CareTeam", (CareTeam)resource); 36792 else if (resource instanceof ChargeItem) 36793 composeChargeItem("ChargeItem", (ChargeItem)resource); 36794 else if (resource instanceof Claim) 36795 composeClaim("Claim", (Claim)resource); 36796 else if (resource instanceof ClaimResponse) 36797 composeClaimResponse("ClaimResponse", (ClaimResponse)resource); 36798 else if (resource instanceof ClinicalImpression) 36799 composeClinicalImpression("ClinicalImpression", (ClinicalImpression)resource); 36800 else if (resource instanceof CodeSystem) 36801 composeCodeSystem("CodeSystem", (CodeSystem)resource); 36802 else if (resource instanceof Communication) 36803 composeCommunication("Communication", (Communication)resource); 36804 else if (resource instanceof CommunicationRequest) 36805 composeCommunicationRequest("CommunicationRequest", (CommunicationRequest)resource); 36806 else if (resource instanceof CompartmentDefinition) 36807 composeCompartmentDefinition("CompartmentDefinition", (CompartmentDefinition)resource); 36808 else if (resource instanceof Composition) 36809 composeComposition("Composition", (Composition)resource); 36810 else if (resource instanceof ConceptMap) 36811 composeConceptMap("ConceptMap", (ConceptMap)resource); 36812 else if (resource instanceof Condition) 36813 composeCondition("Condition", (Condition)resource); 36814 else if (resource instanceof Consent) 36815 composeConsent("Consent", (Consent)resource); 36816 else if (resource instanceof Contract) 36817 composeContract("Contract", (Contract)resource); 36818 else if (resource instanceof Coverage) 36819 composeCoverage("Coverage", (Coverage)resource); 36820 else if (resource instanceof DataElement) 36821 composeDataElement("DataElement", (DataElement)resource); 36822 else if (resource instanceof DetectedIssue) 36823 composeDetectedIssue("DetectedIssue", (DetectedIssue)resource); 36824 else if (resource instanceof Device) 36825 composeDevice("Device", (Device)resource); 36826 else if (resource instanceof DeviceComponent) 36827 composeDeviceComponent("DeviceComponent", (DeviceComponent)resource); 36828 else if (resource instanceof DeviceMetric) 36829 composeDeviceMetric("DeviceMetric", (DeviceMetric)resource); 36830 else if (resource instanceof DeviceRequest) 36831 composeDeviceRequest("DeviceRequest", (DeviceRequest)resource); 36832 else if (resource instanceof DeviceUseStatement) 36833 composeDeviceUseStatement("DeviceUseStatement", (DeviceUseStatement)resource); 36834 else if (resource instanceof DiagnosticReport) 36835 composeDiagnosticReport("DiagnosticReport", (DiagnosticReport)resource); 36836 else if (resource instanceof DocumentManifest) 36837 composeDocumentManifest("DocumentManifest", (DocumentManifest)resource); 36838 else if (resource instanceof DocumentReference) 36839 composeDocumentReference("DocumentReference", (DocumentReference)resource); 36840 else if (resource instanceof EligibilityRequest) 36841 composeEligibilityRequest("EligibilityRequest", (EligibilityRequest)resource); 36842 else if (resource instanceof EligibilityResponse) 36843 composeEligibilityResponse("EligibilityResponse", (EligibilityResponse)resource); 36844 else if (resource instanceof Encounter) 36845 composeEncounter("Encounter", (Encounter)resource); 36846 else if (resource instanceof Endpoint) 36847 composeEndpoint("Endpoint", (Endpoint)resource); 36848 else if (resource instanceof EnrollmentRequest) 36849 composeEnrollmentRequest("EnrollmentRequest", (EnrollmentRequest)resource); 36850 else if (resource instanceof EnrollmentResponse) 36851 composeEnrollmentResponse("EnrollmentResponse", (EnrollmentResponse)resource); 36852 else if (resource instanceof EpisodeOfCare) 36853 composeEpisodeOfCare("EpisodeOfCare", (EpisodeOfCare)resource); 36854 else if (resource instanceof ExpansionProfile) 36855 composeExpansionProfile("ExpansionProfile", (ExpansionProfile)resource); 36856 else if (resource instanceof ExplanationOfBenefit) 36857 composeExplanationOfBenefit("ExplanationOfBenefit", (ExplanationOfBenefit)resource); 36858 else if (resource instanceof FamilyMemberHistory) 36859 composeFamilyMemberHistory("FamilyMemberHistory", (FamilyMemberHistory)resource); 36860 else if (resource instanceof Flag) 36861 composeFlag("Flag", (Flag)resource); 36862 else if (resource instanceof Goal) 36863 composeGoal("Goal", (Goal)resource); 36864 else if (resource instanceof GraphDefinition) 36865 composeGraphDefinition("GraphDefinition", (GraphDefinition)resource); 36866 else if (resource instanceof Group) 36867 composeGroup("Group", (Group)resource); 36868 else if (resource instanceof GuidanceResponse) 36869 composeGuidanceResponse("GuidanceResponse", (GuidanceResponse)resource); 36870 else if (resource instanceof HealthcareService) 36871 composeHealthcareService("HealthcareService", (HealthcareService)resource); 36872 else if (resource instanceof ImagingManifest) 36873 composeImagingManifest("ImagingManifest", (ImagingManifest)resource); 36874 else if (resource instanceof ImagingStudy) 36875 composeImagingStudy("ImagingStudy", (ImagingStudy)resource); 36876 else if (resource instanceof Immunization) 36877 composeImmunization("Immunization", (Immunization)resource); 36878 else if (resource instanceof ImmunizationRecommendation) 36879 composeImmunizationRecommendation("ImmunizationRecommendation", (ImmunizationRecommendation)resource); 36880 else if (resource instanceof ImplementationGuide) 36881 composeImplementationGuide("ImplementationGuide", (ImplementationGuide)resource); 36882 else if (resource instanceof Library) 36883 composeLibrary("Library", (Library)resource); 36884 else if (resource instanceof Linkage) 36885 composeLinkage("Linkage", (Linkage)resource); 36886 else if (resource instanceof ListResource) 36887 composeListResource("List", (ListResource)resource); 36888 else if (resource instanceof Location) 36889 composeLocation("Location", (Location)resource); 36890 else if (resource instanceof Measure) 36891 composeMeasure("Measure", (Measure)resource); 36892 else if (resource instanceof MeasureReport) 36893 composeMeasureReport("MeasureReport", (MeasureReport)resource); 36894 else if (resource instanceof Media) 36895 composeMedia("Media", (Media)resource); 36896 else if (resource instanceof Medication) 36897 composeMedication("Medication", (Medication)resource); 36898 else if (resource instanceof MedicationAdministration) 36899 composeMedicationAdministration("MedicationAdministration", (MedicationAdministration)resource); 36900 else if (resource instanceof MedicationDispense) 36901 composeMedicationDispense("MedicationDispense", (MedicationDispense)resource); 36902 else if (resource instanceof MedicationRequest) 36903 composeMedicationRequest("MedicationRequest", (MedicationRequest)resource); 36904 else if (resource instanceof MedicationStatement) 36905 composeMedicationStatement("MedicationStatement", (MedicationStatement)resource); 36906 else if (resource instanceof MessageDefinition) 36907 composeMessageDefinition("MessageDefinition", (MessageDefinition)resource); 36908 else if (resource instanceof MessageHeader) 36909 composeMessageHeader("MessageHeader", (MessageHeader)resource); 36910 else if (resource instanceof NamingSystem) 36911 composeNamingSystem("NamingSystem", (NamingSystem)resource); 36912 else if (resource instanceof NutritionOrder) 36913 composeNutritionOrder("NutritionOrder", (NutritionOrder)resource); 36914 else if (resource instanceof Observation) 36915 composeObservation("Observation", (Observation)resource); 36916 else if (resource instanceof OperationDefinition) 36917 composeOperationDefinition("OperationDefinition", (OperationDefinition)resource); 36918 else if (resource instanceof OperationOutcome) 36919 composeOperationOutcome("OperationOutcome", (OperationOutcome)resource); 36920 else if (resource instanceof Organization) 36921 composeOrganization("Organization", (Organization)resource); 36922 else if (resource instanceof Patient) 36923 composePatient("Patient", (Patient)resource); 36924 else if (resource instanceof PaymentNotice) 36925 composePaymentNotice("PaymentNotice", (PaymentNotice)resource); 36926 else if (resource instanceof PaymentReconciliation) 36927 composePaymentReconciliation("PaymentReconciliation", (PaymentReconciliation)resource); 36928 else if (resource instanceof Person) 36929 composePerson("Person", (Person)resource); 36930 else if (resource instanceof PlanDefinition) 36931 composePlanDefinition("PlanDefinition", (PlanDefinition)resource); 36932 else if (resource instanceof Practitioner) 36933 composePractitioner("Practitioner", (Practitioner)resource); 36934 else if (resource instanceof PractitionerRole) 36935 composePractitionerRole("PractitionerRole", (PractitionerRole)resource); 36936 else if (resource instanceof Procedure) 36937 composeProcedure("Procedure", (Procedure)resource); 36938 else if (resource instanceof ProcedureRequest) 36939 composeProcedureRequest("ProcedureRequest", (ProcedureRequest)resource); 36940 else if (resource instanceof ProcessRequest) 36941 composeProcessRequest("ProcessRequest", (ProcessRequest)resource); 36942 else if (resource instanceof ProcessResponse) 36943 composeProcessResponse("ProcessResponse", (ProcessResponse)resource); 36944 else if (resource instanceof Provenance) 36945 composeProvenance("Provenance", (Provenance)resource); 36946 else if (resource instanceof Questionnaire) 36947 composeQuestionnaire("Questionnaire", (Questionnaire)resource); 36948 else if (resource instanceof QuestionnaireResponse) 36949 composeQuestionnaireResponse("QuestionnaireResponse", (QuestionnaireResponse)resource); 36950 else if (resource instanceof ReferralRequest) 36951 composeReferralRequest("ReferralRequest", (ReferralRequest)resource); 36952 else if (resource instanceof RelatedPerson) 36953 composeRelatedPerson("RelatedPerson", (RelatedPerson)resource); 36954 else if (resource instanceof RequestGroup) 36955 composeRequestGroup("RequestGroup", (RequestGroup)resource); 36956 else if (resource instanceof ResearchStudy) 36957 composeResearchStudy("ResearchStudy", (ResearchStudy)resource); 36958 else if (resource instanceof ResearchSubject) 36959 composeResearchSubject("ResearchSubject", (ResearchSubject)resource); 36960 else if (resource instanceof RiskAssessment) 36961 composeRiskAssessment("RiskAssessment", (RiskAssessment)resource); 36962 else if (resource instanceof Schedule) 36963 composeSchedule("Schedule", (Schedule)resource); 36964 else if (resource instanceof SearchParameter) 36965 composeSearchParameter("SearchParameter", (SearchParameter)resource); 36966 else if (resource instanceof Sequence) 36967 composeSequence("Sequence", (Sequence)resource); 36968 else if (resource instanceof ServiceDefinition) 36969 composeServiceDefinition("ServiceDefinition", (ServiceDefinition)resource); 36970 else if (resource instanceof Slot) 36971 composeSlot("Slot", (Slot)resource); 36972 else if (resource instanceof Specimen) 36973 composeSpecimen("Specimen", (Specimen)resource); 36974 else if (resource instanceof StructureDefinition) 36975 composeStructureDefinition("StructureDefinition", (StructureDefinition)resource); 36976 else if (resource instanceof StructureMap) 36977 composeStructureMap("StructureMap", (StructureMap)resource); 36978 else if (resource instanceof Subscription) 36979 composeSubscription("Subscription", (Subscription)resource); 36980 else if (resource instanceof Substance) 36981 composeSubstance("Substance", (Substance)resource); 36982 else if (resource instanceof SupplyDelivery) 36983 composeSupplyDelivery("SupplyDelivery", (SupplyDelivery)resource); 36984 else if (resource instanceof SupplyRequest) 36985 composeSupplyRequest("SupplyRequest", (SupplyRequest)resource); 36986 else if (resource instanceof Task) 36987 composeTask("Task", (Task)resource); 36988 else if (resource instanceof TestReport) 36989 composeTestReport("TestReport", (TestReport)resource); 36990 else if (resource instanceof TestScript) 36991 composeTestScript("TestScript", (TestScript)resource); 36992 else if (resource instanceof ValueSet) 36993 composeValueSet("ValueSet", (ValueSet)resource); 36994 else if (resource instanceof VisionPrescription) 36995 composeVisionPrescription("VisionPrescription", (VisionPrescription)resource); 36996 else if (resource instanceof Binary) 36997 composeBinary("Binary", (Binary)resource); 36998 else 36999 throw new Error("Unhandled resource type "+resource.getClass().getName()); 37000 } 37001 37002 protected void composeResource(String name, Resource resource) throws IOException { 37003 if (resource instanceof Parameters) 37004 composeParameters(name, (Parameters)resource); 37005 else if (resource instanceof Account) 37006 composeAccount(name, (Account)resource); 37007 else if (resource instanceof ActivityDefinition) 37008 composeActivityDefinition(name, (ActivityDefinition)resource); 37009 else if (resource instanceof AdverseEvent) 37010 composeAdverseEvent(name, (AdverseEvent)resource); 37011 else if (resource instanceof AllergyIntolerance) 37012 composeAllergyIntolerance(name, (AllergyIntolerance)resource); 37013 else if (resource instanceof Appointment) 37014 composeAppointment(name, (Appointment)resource); 37015 else if (resource instanceof AppointmentResponse) 37016 composeAppointmentResponse(name, (AppointmentResponse)resource); 37017 else if (resource instanceof AuditEvent) 37018 composeAuditEvent(name, (AuditEvent)resource); 37019 else if (resource instanceof Basic) 37020 composeBasic(name, (Basic)resource); 37021 else if (resource instanceof Binary) 37022 composeBinary(name, (Binary)resource); 37023 else if (resource instanceof BodySite) 37024 composeBodySite(name, (BodySite)resource); 37025 else if (resource instanceof Bundle) 37026 composeBundle(name, (Bundle)resource); 37027 else if (resource instanceof CapabilityStatement) 37028 composeCapabilityStatement(name, (CapabilityStatement)resource); 37029 else if (resource instanceof CarePlan) 37030 composeCarePlan(name, (CarePlan)resource); 37031 else if (resource instanceof CareTeam) 37032 composeCareTeam(name, (CareTeam)resource); 37033 else if (resource instanceof ChargeItem) 37034 composeChargeItem(name, (ChargeItem)resource); 37035 else if (resource instanceof Claim) 37036 composeClaim(name, (Claim)resource); 37037 else if (resource instanceof ClaimResponse) 37038 composeClaimResponse(name, (ClaimResponse)resource); 37039 else if (resource instanceof ClinicalImpression) 37040 composeClinicalImpression(name, (ClinicalImpression)resource); 37041 else if (resource instanceof CodeSystem) 37042 composeCodeSystem(name, (CodeSystem)resource); 37043 else if (resource instanceof Communication) 37044 composeCommunication(name, (Communication)resource); 37045 else if (resource instanceof CommunicationRequest) 37046 composeCommunicationRequest(name, (CommunicationRequest)resource); 37047 else if (resource instanceof CompartmentDefinition) 37048 composeCompartmentDefinition(name, (CompartmentDefinition)resource); 37049 else if (resource instanceof Composition) 37050 composeComposition(name, (Composition)resource); 37051 else if (resource instanceof ConceptMap) 37052 composeConceptMap(name, (ConceptMap)resource); 37053 else if (resource instanceof Condition) 37054 composeCondition(name, (Condition)resource); 37055 else if (resource instanceof Consent) 37056 composeConsent(name, (Consent)resource); 37057 else if (resource instanceof Contract) 37058 composeContract(name, (Contract)resource); 37059 else if (resource instanceof Coverage) 37060 composeCoverage(name, (Coverage)resource); 37061 else if (resource instanceof DataElement) 37062 composeDataElement(name, (DataElement)resource); 37063 else if (resource instanceof DetectedIssue) 37064 composeDetectedIssue(name, (DetectedIssue)resource); 37065 else if (resource instanceof Device) 37066 composeDevice(name, (Device)resource); 37067 else if (resource instanceof DeviceComponent) 37068 composeDeviceComponent(name, (DeviceComponent)resource); 37069 else if (resource instanceof DeviceMetric) 37070 composeDeviceMetric(name, (DeviceMetric)resource); 37071 else if (resource instanceof DeviceRequest) 37072 composeDeviceRequest(name, (DeviceRequest)resource); 37073 else if (resource instanceof DeviceUseStatement) 37074 composeDeviceUseStatement(name, (DeviceUseStatement)resource); 37075 else if (resource instanceof DiagnosticReport) 37076 composeDiagnosticReport(name, (DiagnosticReport)resource); 37077 else if (resource instanceof DocumentManifest) 37078 composeDocumentManifest(name, (DocumentManifest)resource); 37079 else if (resource instanceof DocumentReference) 37080 composeDocumentReference(name, (DocumentReference)resource); 37081 else if (resource instanceof EligibilityRequest) 37082 composeEligibilityRequest(name, (EligibilityRequest)resource); 37083 else if (resource instanceof EligibilityResponse) 37084 composeEligibilityResponse(name, (EligibilityResponse)resource); 37085 else if (resource instanceof Encounter) 37086 composeEncounter(name, (Encounter)resource); 37087 else if (resource instanceof Endpoint) 37088 composeEndpoint(name, (Endpoint)resource); 37089 else if (resource instanceof EnrollmentRequest) 37090 composeEnrollmentRequest(name, (EnrollmentRequest)resource); 37091 else if (resource instanceof EnrollmentResponse) 37092 composeEnrollmentResponse(name, (EnrollmentResponse)resource); 37093 else if (resource instanceof EpisodeOfCare) 37094 composeEpisodeOfCare(name, (EpisodeOfCare)resource); 37095 else if (resource instanceof ExpansionProfile) 37096 composeExpansionProfile(name, (ExpansionProfile)resource); 37097 else if (resource instanceof ExplanationOfBenefit) 37098 composeExplanationOfBenefit(name, (ExplanationOfBenefit)resource); 37099 else if (resource instanceof FamilyMemberHistory) 37100 composeFamilyMemberHistory(name, (FamilyMemberHistory)resource); 37101 else if (resource instanceof Flag) 37102 composeFlag(name, (Flag)resource); 37103 else if (resource instanceof Goal) 37104 composeGoal(name, (Goal)resource); 37105 else if (resource instanceof GraphDefinition) 37106 composeGraphDefinition(name, (GraphDefinition)resource); 37107 else if (resource instanceof Group) 37108 composeGroup(name, (Group)resource); 37109 else if (resource instanceof GuidanceResponse) 37110 composeGuidanceResponse(name, (GuidanceResponse)resource); 37111 else if (resource instanceof HealthcareService) 37112 composeHealthcareService(name, (HealthcareService)resource); 37113 else if (resource instanceof ImagingManifest) 37114 composeImagingManifest(name, (ImagingManifest)resource); 37115 else if (resource instanceof ImagingStudy) 37116 composeImagingStudy(name, (ImagingStudy)resource); 37117 else if (resource instanceof Immunization) 37118 composeImmunization(name, (Immunization)resource); 37119 else if (resource instanceof ImmunizationRecommendation) 37120 composeImmunizationRecommendation(name, (ImmunizationRecommendation)resource); 37121 else if (resource instanceof ImplementationGuide) 37122 composeImplementationGuide(name, (ImplementationGuide)resource); 37123 else if (resource instanceof Library) 37124 composeLibrary(name, (Library)resource); 37125 else if (resource instanceof Linkage) 37126 composeLinkage(name, (Linkage)resource); 37127 else if (resource instanceof ListResource) 37128 composeListResource(name, (ListResource)resource); 37129 else if (resource instanceof Location) 37130 composeLocation(name, (Location)resource); 37131 else if (resource instanceof Measure) 37132 composeMeasure(name, (Measure)resource); 37133 else if (resource instanceof MeasureReport) 37134 composeMeasureReport(name, (MeasureReport)resource); 37135 else if (resource instanceof Media) 37136 composeMedia(name, (Media)resource); 37137 else if (resource instanceof Medication) 37138 composeMedication(name, (Medication)resource); 37139 else if (resource instanceof MedicationAdministration) 37140 composeMedicationAdministration(name, (MedicationAdministration)resource); 37141 else if (resource instanceof MedicationDispense) 37142 composeMedicationDispense(name, (MedicationDispense)resource); 37143 else if (resource instanceof MedicationRequest) 37144 composeMedicationRequest(name, (MedicationRequest)resource); 37145 else if (resource instanceof MedicationStatement) 37146 composeMedicationStatement(name, (MedicationStatement)resource); 37147 else if (resource instanceof MessageDefinition) 37148 composeMessageDefinition(name, (MessageDefinition)resource); 37149 else if (resource instanceof MessageHeader) 37150 composeMessageHeader(name, (MessageHeader)resource); 37151 else if (resource instanceof NamingSystem) 37152 composeNamingSystem(name, (NamingSystem)resource); 37153 else if (resource instanceof NutritionOrder) 37154 composeNutritionOrder(name, (NutritionOrder)resource); 37155 else if (resource instanceof Observation) 37156 composeObservation(name, (Observation)resource); 37157 else if (resource instanceof OperationDefinition) 37158 composeOperationDefinition(name, (OperationDefinition)resource); 37159 else if (resource instanceof OperationOutcome) 37160 composeOperationOutcome(name, (OperationOutcome)resource); 37161 else if (resource instanceof Organization) 37162 composeOrganization(name, (Organization)resource); 37163 else if (resource instanceof Patient) 37164 composePatient(name, (Patient)resource); 37165 else if (resource instanceof PaymentNotice) 37166 composePaymentNotice(name, (PaymentNotice)resource); 37167 else if (resource instanceof PaymentReconciliation) 37168 composePaymentReconciliation(name, (PaymentReconciliation)resource); 37169 else if (resource instanceof Person) 37170 composePerson(name, (Person)resource); 37171 else if (resource instanceof PlanDefinition) 37172 composePlanDefinition(name, (PlanDefinition)resource); 37173 else if (resource instanceof Practitioner) 37174 composePractitioner(name, (Practitioner)resource); 37175 else if (resource instanceof PractitionerRole) 37176 composePractitionerRole(name, (PractitionerRole)resource); 37177 else if (resource instanceof Procedure) 37178 composeProcedure(name, (Procedure)resource); 37179 else if (resource instanceof ProcedureRequest) 37180 composeProcedureRequest(name, (ProcedureRequest)resource); 37181 else if (resource instanceof ProcessRequest) 37182 composeProcessRequest(name, (ProcessRequest)resource); 37183 else if (resource instanceof ProcessResponse) 37184 composeProcessResponse(name, (ProcessResponse)resource); 37185 else if (resource instanceof Provenance) 37186 composeProvenance(name, (Provenance)resource); 37187 else if (resource instanceof Questionnaire) 37188 composeQuestionnaire(name, (Questionnaire)resource); 37189 else if (resource instanceof QuestionnaireResponse) 37190 composeQuestionnaireResponse(name, (QuestionnaireResponse)resource); 37191 else if (resource instanceof ReferralRequest) 37192 composeReferralRequest(name, (ReferralRequest)resource); 37193 else if (resource instanceof RelatedPerson) 37194 composeRelatedPerson(name, (RelatedPerson)resource); 37195 else if (resource instanceof RequestGroup) 37196 composeRequestGroup(name, (RequestGroup)resource); 37197 else if (resource instanceof ResearchStudy) 37198 composeResearchStudy(name, (ResearchStudy)resource); 37199 else if (resource instanceof ResearchSubject) 37200 composeResearchSubject(name, (ResearchSubject)resource); 37201 else if (resource instanceof RiskAssessment) 37202 composeRiskAssessment(name, (RiskAssessment)resource); 37203 else if (resource instanceof Schedule) 37204 composeSchedule(name, (Schedule)resource); 37205 else if (resource instanceof SearchParameter) 37206 composeSearchParameter(name, (SearchParameter)resource); 37207 else if (resource instanceof Sequence) 37208 composeSequence(name, (Sequence)resource); 37209 else if (resource instanceof ServiceDefinition) 37210 composeServiceDefinition(name, (ServiceDefinition)resource); 37211 else if (resource instanceof Slot) 37212 composeSlot(name, (Slot)resource); 37213 else if (resource instanceof Specimen) 37214 composeSpecimen(name, (Specimen)resource); 37215 else if (resource instanceof StructureDefinition) 37216 composeStructureDefinition(name, (StructureDefinition)resource); 37217 else if (resource instanceof StructureMap) 37218 composeStructureMap(name, (StructureMap)resource); 37219 else if (resource instanceof Subscription) 37220 composeSubscription(name, (Subscription)resource); 37221 else if (resource instanceof Substance) 37222 composeSubstance(name, (Substance)resource); 37223 else if (resource instanceof SupplyDelivery) 37224 composeSupplyDelivery(name, (SupplyDelivery)resource); 37225 else if (resource instanceof SupplyRequest) 37226 composeSupplyRequest(name, (SupplyRequest)resource); 37227 else if (resource instanceof Task) 37228 composeTask(name, (Task)resource); 37229 else if (resource instanceof TestReport) 37230 composeTestReport(name, (TestReport)resource); 37231 else if (resource instanceof TestScript) 37232 composeTestScript(name, (TestScript)resource); 37233 else if (resource instanceof ValueSet) 37234 composeValueSet(name, (ValueSet)resource); 37235 else if (resource instanceof VisionPrescription) 37236 composeVisionPrescription(name, (VisionPrescription)resource); 37237 else if (resource instanceof Binary) 37238 composeBinary(name, (Binary)resource); 37239 else 37240 throw new Error("Unhandled resource type "+resource.getClass().getName()); 37241 } 37242 37243 protected void composeType(String prefix, Type type) throws IOException { 37244 if (type == null) 37245 ; 37246 else if (type instanceof SimpleQuantity) 37247 composeSimpleQuantity(prefix+"SimpleQuantity", (SimpleQuantity) type); 37248 else if (type instanceof Duration) 37249 composeDuration(prefix+"Duration", (Duration) type); 37250 else if (type instanceof Count) 37251 composeCount(prefix+"Count", (Count) type); 37252 else if (type instanceof Money) 37253 composeMoney(prefix+"Money", (Money) type); 37254 else if (type instanceof Distance) 37255 composeDistance(prefix+"Distance", (Distance) type); 37256 else if (type instanceof Age) 37257 composeAge(prefix+"Age", (Age) type); 37258 else if (type instanceof Reference) 37259 composeReference(prefix+"Reference", (Reference) type); 37260 else if (type instanceof Quantity) 37261 composeQuantity(prefix+"Quantity", (Quantity) type); 37262 else if (type instanceof Period) 37263 composePeriod(prefix+"Period", (Period) type); 37264 else if (type instanceof Attachment) 37265 composeAttachment(prefix+"Attachment", (Attachment) type); 37266 else if (type instanceof Range) 37267 composeRange(prefix+"Range", (Range) type); 37268 else if (type instanceof Annotation) 37269 composeAnnotation(prefix+"Annotation", (Annotation) type); 37270 else if (type instanceof Identifier) 37271 composeIdentifier(prefix+"Identifier", (Identifier) type); 37272 else if (type instanceof Coding) 37273 composeCoding(prefix+"Coding", (Coding) type); 37274 else if (type instanceof Signature) 37275 composeSignature(prefix+"Signature", (Signature) type); 37276 else if (type instanceof SampledData) 37277 composeSampledData(prefix+"SampledData", (SampledData) type); 37278 else if (type instanceof Ratio) 37279 composeRatio(prefix+"Ratio", (Ratio) type); 37280 else if (type instanceof CodeableConcept) 37281 composeCodeableConcept(prefix+"CodeableConcept", (CodeableConcept) type); 37282 else if (type instanceof Meta) 37283 composeMeta(prefix+"Meta", (Meta) type); 37284 else if (type instanceof Address) 37285 composeAddress(prefix+"Address", (Address) type); 37286 else if (type instanceof TriggerDefinition) 37287 composeTriggerDefinition(prefix+"TriggerDefinition", (TriggerDefinition) type); 37288 else if (type instanceof Contributor) 37289 composeContributor(prefix+"Contributor", (Contributor) type); 37290 else if (type instanceof DataRequirement) 37291 composeDataRequirement(prefix+"DataRequirement", (DataRequirement) type); 37292 else if (type instanceof Dosage) 37293 composeDosage(prefix+"Dosage", (Dosage) type); 37294 else if (type instanceof RelatedArtifact) 37295 composeRelatedArtifact(prefix+"RelatedArtifact", (RelatedArtifact) type); 37296 else if (type instanceof ContactDetail) 37297 composeContactDetail(prefix+"ContactDetail", (ContactDetail) type); 37298 else if (type instanceof HumanName) 37299 composeHumanName(prefix+"HumanName", (HumanName) type); 37300 else if (type instanceof ContactPoint) 37301 composeContactPoint(prefix+"ContactPoint", (ContactPoint) type); 37302 else if (type instanceof UsageContext) 37303 composeUsageContext(prefix+"UsageContext", (UsageContext) type); 37304 else if (type instanceof Timing) 37305 composeTiming(prefix+"Timing", (Timing) type); 37306 else if (type instanceof ElementDefinition) 37307 composeElementDefinition(prefix+"ElementDefinition", (ElementDefinition) type); 37308 else if (type instanceof ParameterDefinition) 37309 composeParameterDefinition(prefix+"ParameterDefinition", (ParameterDefinition) type); 37310 else if (type instanceof CodeType) 37311 composeCode(prefix+"Code", (CodeType) type); 37312 else if (type instanceof OidType) 37313 composeOid(prefix+"Oid", (OidType) type); 37314 else if (type instanceof UuidType) 37315 composeUuid(prefix+"Uuid", (UuidType) type); 37316 else if (type instanceof UnsignedIntType) 37317 composeUnsignedInt(prefix+"UnsignedInt", (UnsignedIntType) type); 37318 else if (type instanceof MarkdownType) 37319 composeMarkdown(prefix+"Markdown", (MarkdownType) type); 37320 else if (type instanceof IdType) 37321 composeId(prefix+"Id", (IdType) type); 37322 else if (type instanceof PositiveIntType) 37323 composePositiveInt(prefix+"PositiveInt", (PositiveIntType) type); 37324 else if (type instanceof DateType) 37325 composeDate(prefix+"Date", (DateType) type); 37326 else if (type instanceof DateTimeType) 37327 composeDateTime(prefix+"DateTime", (DateTimeType) type); 37328 else if (type instanceof StringType) 37329 composeString(prefix+"String", (StringType) type); 37330 else if (type instanceof IntegerType) 37331 composeInteger(prefix+"Integer", (IntegerType) type); 37332 else if (type instanceof UriType) 37333 composeUri(prefix+"Uri", (UriType) type); 37334 else if (type instanceof InstantType) 37335 composeInstant(prefix+"Instant", (InstantType) type); 37336 else if (type instanceof BooleanType) 37337 composeBoolean(prefix+"Boolean", (BooleanType) type); 37338 else if (type instanceof Base64BinaryType) 37339 composeBase64Binary(prefix+"Base64Binary", (Base64BinaryType) type); 37340 else if (type instanceof TimeType) 37341 composeTime(prefix+"Time", (TimeType) type); 37342 else if (type instanceof DecimalType) 37343 composeDecimal(prefix+"Decimal", (DecimalType) type); 37344 else 37345 throw new Error("Unhandled type"); 37346 } 37347 37348} 37349