001package org.hl7.fhir.dstu2016may.formats; 002 003 004 005 006import java.io.IOException; 007 008/* 009 Copyright (c) 2011+, HL7, Inc. 010 All rights reserved. 011 012 Redistribution and use in source and binary forms, with or without modification, 013 are permitted provided that the following conditions are met: 014 015 * Redistributions of source code must retain the above copyright notice, this 016 list of conditions and the following disclaimer. 017 * Redistributions in binary form must reproduce the above copyright notice, 018 this list of conditions and the following disclaimer in the documentation 019 and/or other materials provided with the distribution. 020 * Neither the name of HL7 nor the names of its contributors may be used to 021 endorse or promote products derived from this software without specific 022 prior written permission. 023 024 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 025 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 026 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 027 IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 028 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 029 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 030 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 031 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 032 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 033 POSSIBILITY OF SUCH DAMAGE. 034 035*/ 036 037// Generated on Sun, May 8, 2016 03:05+1000 for FHIR v1.4.0 038import org.hl7.fhir.dstu2016may.model.*; 039import org.hl7.fhir.exceptions.FHIRFormatError; 040import org.hl7.fhir.utilities.Utilities; 041import org.xmlpull.v1.XmlPullParser; 042import org.xmlpull.v1.XmlPullParserException; 043 044public class XmlParser extends XmlParserBase { 045 046 public XmlParser() { 047 super(); 048 } 049 050 public XmlParser(boolean allowUnknownContent) { 051 super(); 052 setAllowUnknownContent(allowUnknownContent); 053 } 054 055 056 protected boolean parseElementContent(int eventType, XmlPullParser xpp, Element res) throws XmlPullParserException, IOException, FHIRFormatError { 057 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("extension")) 058 res.getExtension().add(parseExtension(xpp)); 059 else 060 return false; 061 062 return true; 063 } 064 065 protected boolean parseBackboneContent(int eventType, XmlPullParser xpp, BackboneElement res) throws XmlPullParserException, IOException, FHIRFormatError { 066 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifierExtension")) 067 res.getModifierExtension().add(parseExtension(xpp)); 068 else 069 return parseElementContent(eventType, xpp, res); 070 071 return true; 072 } 073 074 @SuppressWarnings("unchecked") 075 protected <E extends Enum<E>> Enumeration<E> parseEnumeration(XmlPullParser xpp, E item, EnumFactory e) throws XmlPullParserException, IOException, FHIRFormatError { 076 Enumeration<E> res = new Enumeration<E>(e); 077 parseElementAttributes(xpp, res); 078 res.setValue((E) e.fromCode(xpp.getAttributeValue(null, "value"))); 079 next(xpp); 080 int eventType = nextNoWhitespace(xpp); 081 while (eventType != XmlPullParser.END_TAG) { 082 if (!parseElementContent(eventType, xpp, res)) 083 unknownContent(xpp); 084 eventType = nextNoWhitespace(xpp); 085 } 086 next(xpp); 087 parseElementClose(res); 088 return res; 089 } 090 091 protected MarkdownType parseMarkdown(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 092 MarkdownType res = new MarkdownType(xpp.getAttributeValue(null, "value")); 093 parseElementAttributes(xpp, res); 094 next(xpp); 095 int eventType = nextNoWhitespace(xpp); 096 while (eventType != XmlPullParser.END_TAG) { 097 if (!parseElementContent(eventType, xpp, res)) 098 unknownContent(xpp); 099 eventType = nextNoWhitespace(xpp); 100 } 101 next(xpp); 102 parseElementClose(res); 103 return res; 104 } 105 106 protected IntegerType parseInteger(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 107 IntegerType res = new IntegerType(xpp.getAttributeValue(null, "value")); 108 parseElementAttributes(xpp, res); 109 next(xpp); 110 int eventType = nextNoWhitespace(xpp); 111 while (eventType != XmlPullParser.END_TAG) { 112 if (!parseElementContent(eventType, xpp, res)) 113 unknownContent(xpp); 114 eventType = nextNoWhitespace(xpp); 115 } 116 next(xpp); 117 parseElementClose(res); 118 return res; 119 } 120 121 protected DateTimeType parseDateTime(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 122 DateTimeType res = new DateTimeType(xpp.getAttributeValue(null, "value")); 123 parseElementAttributes(xpp, res); 124 next(xpp); 125 int eventType = nextNoWhitespace(xpp); 126 while (eventType != XmlPullParser.END_TAG) { 127 if (!parseElementContent(eventType, xpp, res)) 128 unknownContent(xpp); 129 eventType = nextNoWhitespace(xpp); 130 } 131 next(xpp); 132 parseElementClose(res); 133 return res; 134 } 135 136 protected UnsignedIntType parseUnsignedInt(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 137 UnsignedIntType res = new UnsignedIntType(xpp.getAttributeValue(null, "value")); 138 parseElementAttributes(xpp, res); 139 next(xpp); 140 int eventType = nextNoWhitespace(xpp); 141 while (eventType != XmlPullParser.END_TAG) { 142 if (!parseElementContent(eventType, xpp, res)) 143 unknownContent(xpp); 144 eventType = nextNoWhitespace(xpp); 145 } 146 next(xpp); 147 parseElementClose(res); 148 return res; 149 } 150 151 protected CodeType parseCode(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 152 CodeType res = new CodeType(xpp.getAttributeValue(null, "value")); 153 parseElementAttributes(xpp, res); 154 next(xpp); 155 int eventType = nextNoWhitespace(xpp); 156 while (eventType != XmlPullParser.END_TAG) { 157 if (!parseElementContent(eventType, xpp, res)) 158 unknownContent(xpp); 159 eventType = nextNoWhitespace(xpp); 160 } 161 next(xpp); 162 parseElementClose(res); 163 return res; 164 } 165 166 protected DateType parseDate(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 167 DateType res = new DateType(xpp.getAttributeValue(null, "value")); 168 parseElementAttributes(xpp, res); 169 next(xpp); 170 int eventType = nextNoWhitespace(xpp); 171 while (eventType != XmlPullParser.END_TAG) { 172 if (!parseElementContent(eventType, xpp, res)) 173 unknownContent(xpp); 174 eventType = nextNoWhitespace(xpp); 175 } 176 next(xpp); 177 parseElementClose(res); 178 return res; 179 } 180 181 protected DecimalType parseDecimal(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 182 DecimalType res = new DecimalType(xpp.getAttributeValue(null, "value")); 183 parseElementAttributes(xpp, res); 184 next(xpp); 185 int eventType = nextNoWhitespace(xpp); 186 while (eventType != XmlPullParser.END_TAG) { 187 if (!parseElementContent(eventType, xpp, res)) 188 unknownContent(xpp); 189 eventType = nextNoWhitespace(xpp); 190 } 191 next(xpp); 192 parseElementClose(res); 193 return res; 194 } 195 196 protected UriType parseUri(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 197 UriType res = new UriType(xpp.getAttributeValue(null, "value")); 198 parseElementAttributes(xpp, res); 199 next(xpp); 200 int eventType = nextNoWhitespace(xpp); 201 while (eventType != XmlPullParser.END_TAG) { 202 if (!parseElementContent(eventType, xpp, res)) 203 unknownContent(xpp); 204 eventType = nextNoWhitespace(xpp); 205 } 206 next(xpp); 207 parseElementClose(res); 208 return res; 209 } 210 211 protected IdType parseId(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 212 IdType res = new IdType(xpp.getAttributeValue(null, "value")); 213 parseElementAttributes(xpp, res); 214 next(xpp); 215 int eventType = nextNoWhitespace(xpp); 216 while (eventType != XmlPullParser.END_TAG) { 217 if (!parseElementContent(eventType, xpp, res)) 218 unknownContent(xpp); 219 eventType = nextNoWhitespace(xpp); 220 } 221 next(xpp); 222 parseElementClose(res); 223 return res; 224 } 225 226 protected Base64BinaryType parseBase64Binary(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 227 Base64BinaryType res = new Base64BinaryType(xpp.getAttributeValue(null, "value")); 228 parseElementAttributes(xpp, res); 229 next(xpp); 230 int eventType = nextNoWhitespace(xpp); 231 while (eventType != XmlPullParser.END_TAG) { 232 if (!parseElementContent(eventType, xpp, res)) 233 unknownContent(xpp); 234 eventType = nextNoWhitespace(xpp); 235 } 236 next(xpp); 237 parseElementClose(res); 238 return res; 239 } 240 241 protected TimeType parseTime(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 242 TimeType res = new TimeType(xpp.getAttributeValue(null, "value")); 243 parseElementAttributes(xpp, res); 244 next(xpp); 245 int eventType = nextNoWhitespace(xpp); 246 while (eventType != XmlPullParser.END_TAG) { 247 if (!parseElementContent(eventType, xpp, res)) 248 unknownContent(xpp); 249 eventType = nextNoWhitespace(xpp); 250 } 251 next(xpp); 252 parseElementClose(res); 253 return res; 254 } 255 256 protected OidType parseOid(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 257 OidType res = new OidType(xpp.getAttributeValue(null, "value")); 258 parseElementAttributes(xpp, res); 259 next(xpp); 260 int eventType = nextNoWhitespace(xpp); 261 while (eventType != XmlPullParser.END_TAG) { 262 if (!parseElementContent(eventType, xpp, res)) 263 unknownContent(xpp); 264 eventType = nextNoWhitespace(xpp); 265 } 266 next(xpp); 267 parseElementClose(res); 268 return res; 269 } 270 271 protected PositiveIntType parsePositiveInt(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 272 PositiveIntType res = new PositiveIntType(xpp.getAttributeValue(null, "value")); 273 parseElementAttributes(xpp, res); 274 next(xpp); 275 int eventType = nextNoWhitespace(xpp); 276 while (eventType != XmlPullParser.END_TAG) { 277 if (!parseElementContent(eventType, xpp, res)) 278 unknownContent(xpp); 279 eventType = nextNoWhitespace(xpp); 280 } 281 next(xpp); 282 parseElementClose(res); 283 return res; 284 } 285 286 protected StringType parseString(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 287 StringType res = new StringType(xpp.getAttributeValue(null, "value")); 288 parseElementAttributes(xpp, res); 289 next(xpp); 290 int eventType = nextNoWhitespace(xpp); 291 while (eventType != XmlPullParser.END_TAG) { 292 if (!parseElementContent(eventType, xpp, res)) 293 unknownContent(xpp); 294 eventType = nextNoWhitespace(xpp); 295 } 296 next(xpp); 297 parseElementClose(res); 298 return res; 299 } 300 301 protected BooleanType parseBoolean(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 302 BooleanType res = new BooleanType(xpp.getAttributeValue(null, "value")); 303 parseElementAttributes(xpp, res); 304 next(xpp); 305 int eventType = nextNoWhitespace(xpp); 306 while (eventType != XmlPullParser.END_TAG) { 307 if (!parseElementContent(eventType, xpp, res)) 308 unknownContent(xpp); 309 eventType = nextNoWhitespace(xpp); 310 } 311 next(xpp); 312 parseElementClose(res); 313 return res; 314 } 315 316 protected UuidType parseUuid(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 317 UuidType res = new UuidType(xpp.getAttributeValue(null, "value")); 318 parseElementAttributes(xpp, res); 319 next(xpp); 320 int eventType = nextNoWhitespace(xpp); 321 while (eventType != XmlPullParser.END_TAG) { 322 if (!parseElementContent(eventType, xpp, res)) 323 unknownContent(xpp); 324 eventType = nextNoWhitespace(xpp); 325 } 326 next(xpp); 327 parseElementClose(res); 328 return res; 329 } 330 331 protected InstantType parseInstant(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 332 InstantType res = new InstantType(xpp.getAttributeValue(null, "value")); 333 parseElementAttributes(xpp, res); 334 next(xpp); 335 int eventType = nextNoWhitespace(xpp); 336 while (eventType != XmlPullParser.END_TAG) { 337 if (!parseElementContent(eventType, xpp, res)) 338 unknownContent(xpp); 339 eventType = nextNoWhitespace(xpp); 340 } 341 next(xpp); 342 parseElementClose(res); 343 return res; 344 } 345 346 protected Extension parseExtension(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 347 Extension res = new Extension(); 348 parseElementAttributes(xpp, res); 349 if (xpp.getAttributeValue(null, "url") != null) 350 res.setUrl(xpp.getAttributeValue(null, "url")); 351 next(xpp); 352 int eventType = nextNoWhitespace(xpp); 353 while (eventType != XmlPullParser.END_TAG) { 354 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 355 res.setValue(parseType("value", xpp)); 356 } else if (!parseElementContent(eventType, xpp, res)) 357 unknownContent(xpp); 358 eventType = nextNoWhitespace(xpp); 359 } 360 next(xpp); 361 parseElementClose(res); 362 return res; 363 } 364 365 protected Narrative parseNarrative(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 366 Narrative res = new Narrative(); 367 parseElementAttributes(xpp, res); 368 next(xpp); 369 int eventType = nextNoWhitespace(xpp); 370 while (eventType != XmlPullParser.END_TAG) { 371 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 372 res.setStatusElement(parseEnumeration(xpp, Narrative.NarrativeStatus.NULL, new Narrative.NarrativeStatusEnumFactory())); 373 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("div")) { 374 res.setDiv(parseXhtml(xpp)); 375 } else if (!parseElementContent(eventType, xpp, res)) 376 unknownContent(xpp); 377 eventType = nextNoWhitespace(xpp); 378 } 379 next(xpp); 380 parseElementClose(res); 381 return res; 382 } 383 384 protected Period parsePeriod(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 385 Period res = new Period(); 386 parseTypeAttributes(xpp, res); 387 next(xpp); 388 int eventType = nextNoWhitespace(xpp); 389 while (eventType != XmlPullParser.END_TAG) { 390 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("start")) { 391 res.setStartElement(parseDateTime(xpp)); 392 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("end")) { 393 res.setEndElement(parseDateTime(xpp)); 394 } else if (!parseElementContent(eventType, xpp, res)) 395 unknownContent(xpp); 396 eventType = nextNoWhitespace(xpp); 397 } 398 next(xpp); 399 parseElementClose(res); 400 return res; 401 } 402 403 protected Coding parseCoding(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 404 Coding res = new Coding(); 405 parseTypeAttributes(xpp, res); 406 next(xpp); 407 int eventType = nextNoWhitespace(xpp); 408 while (eventType != XmlPullParser.END_TAG) { 409 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 410 res.setSystemElement(parseUri(xpp)); 411 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 412 res.setVersionElement(parseString(xpp)); 413 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 414 res.setCodeElement(parseCode(xpp)); 415 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 416 res.setDisplayElement(parseString(xpp)); 417 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("userSelected")) { 418 res.setUserSelectedElement(parseBoolean(xpp)); 419 } else if (!parseElementContent(eventType, xpp, res)) 420 unknownContent(xpp); 421 eventType = nextNoWhitespace(xpp); 422 } 423 next(xpp); 424 parseElementClose(res); 425 return res; 426 } 427 428 protected Range parseRange(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 429 Range res = new Range(); 430 parseTypeAttributes(xpp, res); 431 next(xpp); 432 int eventType = nextNoWhitespace(xpp); 433 while (eventType != XmlPullParser.END_TAG) { 434 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("low")) { 435 res.setLow(parseSimpleQuantity(xpp)); 436 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("high")) { 437 res.setHigh(parseSimpleQuantity(xpp)); 438 } else if (!parseElementContent(eventType, xpp, res)) 439 unknownContent(xpp); 440 eventType = nextNoWhitespace(xpp); 441 } 442 next(xpp); 443 parseElementClose(res); 444 return res; 445 } 446 447 protected Quantity parseQuantity(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 448 Quantity res = new Quantity(); 449 parseTypeAttributes(xpp, res); 450 next(xpp); 451 int eventType = nextNoWhitespace(xpp); 452 while (eventType != XmlPullParser.END_TAG) { 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 unknownContent(xpp); 465 eventType = nextNoWhitespace(xpp); 466 } 467 next(xpp); 468 parseElementClose(res); 469 return res; 470 } 471 472 protected Attachment parseAttachment(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 473 Attachment res = new Attachment(); 474 parseTypeAttributes(xpp, res); 475 next(xpp); 476 int eventType = nextNoWhitespace(xpp); 477 while (eventType != XmlPullParser.END_TAG) { 478 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentType")) { 479 res.setContentTypeElement(parseCode(xpp)); 480 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 481 res.setLanguageElement(parseCode(xpp)); 482 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("data")) { 483 res.setDataElement(parseBase64Binary(xpp)); 484 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 485 res.setUrlElement(parseUri(xpp)); 486 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("size")) { 487 res.setSizeElement(parseUnsignedInt(xpp)); 488 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("hash")) { 489 res.setHashElement(parseBase64Binary(xpp)); 490 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 491 res.setTitleElement(parseString(xpp)); 492 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("creation")) { 493 res.setCreationElement(parseDateTime(xpp)); 494 } else if (!parseElementContent(eventType, xpp, res)) 495 unknownContent(xpp); 496 eventType = nextNoWhitespace(xpp); 497 } 498 next(xpp); 499 parseElementClose(res); 500 return res; 501 } 502 503 protected Ratio parseRatio(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 504 Ratio res = new Ratio(); 505 parseTypeAttributes(xpp, res); 506 next(xpp); 507 int eventType = nextNoWhitespace(xpp); 508 while (eventType != XmlPullParser.END_TAG) { 509 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("numerator")) { 510 res.setNumerator(parseQuantity(xpp)); 511 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("denominator")) { 512 res.setDenominator(parseQuantity(xpp)); 513 } else if (!parseElementContent(eventType, xpp, res)) 514 unknownContent(xpp); 515 eventType = nextNoWhitespace(xpp); 516 } 517 next(xpp); 518 parseElementClose(res); 519 return res; 520 } 521 522 protected Annotation parseAnnotation(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 523 Annotation res = new Annotation(); 524 parseTypeAttributes(xpp, res); 525 next(xpp); 526 int eventType = nextNoWhitespace(xpp); 527 while (eventType != XmlPullParser.END_TAG) { 528 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "author")) { 529 res.setAuthor(parseType("author", xpp)); 530 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("time")) { 531 res.setTimeElement(parseDateTime(xpp)); 532 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 533 res.setTextElement(parseString(xpp)); 534 } else if (!parseElementContent(eventType, xpp, res)) 535 unknownContent(xpp); 536 eventType = nextNoWhitespace(xpp); 537 } 538 next(xpp); 539 parseElementClose(res); 540 return res; 541 } 542 543 protected SampledData parseSampledData(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 544 SampledData res = new SampledData(); 545 parseTypeAttributes(xpp, res); 546 next(xpp); 547 int eventType = nextNoWhitespace(xpp); 548 while (eventType != XmlPullParser.END_TAG) { 549 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("origin")) { 550 res.setOrigin(parseSimpleQuantity(xpp)); 551 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 552 res.setPeriodElement(parseDecimal(xpp)); 553 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 554 res.setFactorElement(parseDecimal(xpp)); 555 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lowerLimit")) { 556 res.setLowerLimitElement(parseDecimal(xpp)); 557 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("upperLimit")) { 558 res.setUpperLimitElement(parseDecimal(xpp)); 559 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dimensions")) { 560 res.setDimensionsElement(parsePositiveInt(xpp)); 561 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("data")) { 562 res.setDataElement(parseString(xpp)); 563 } else if (!parseElementContent(eventType, xpp, res)) 564 unknownContent(xpp); 565 eventType = nextNoWhitespace(xpp); 566 } 567 next(xpp); 568 parseElementClose(res); 569 return res; 570 } 571 572 protected Reference parseReference(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 573 Reference res = new Reference(); 574 parseTypeAttributes(xpp, res); 575 next(xpp); 576 int eventType = nextNoWhitespace(xpp); 577 while (eventType != XmlPullParser.END_TAG) { 578 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 579 res.setReferenceElement(parseString(xpp)); 580 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 581 res.setDisplayElement(parseString(xpp)); 582 } else if (!parseElementContent(eventType, xpp, res)) 583 unknownContent(xpp); 584 eventType = nextNoWhitespace(xpp); 585 } 586 next(xpp); 587 parseElementClose(res); 588 return res; 589 } 590 591 protected CodeableConcept parseCodeableConcept(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 592 CodeableConcept res = new CodeableConcept(); 593 parseTypeAttributes(xpp, res); 594 next(xpp); 595 int eventType = nextNoWhitespace(xpp); 596 while (eventType != XmlPullParser.END_TAG) { 597 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coding")) { 598 res.getCoding().add(parseCoding(xpp)); 599 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 600 res.setTextElement(parseString(xpp)); 601 } else if (!parseElementContent(eventType, xpp, res)) 602 unknownContent(xpp); 603 eventType = nextNoWhitespace(xpp); 604 } 605 next(xpp); 606 parseElementClose(res); 607 return res; 608 } 609 610 protected Identifier parseIdentifier(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 611 Identifier res = new Identifier(); 612 parseTypeAttributes(xpp, res); 613 next(xpp); 614 int eventType = nextNoWhitespace(xpp); 615 while (eventType != XmlPullParser.END_TAG) { 616 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 617 res.setUseElement(parseEnumeration(xpp, Identifier.IdentifierUse.NULL, new Identifier.IdentifierUseEnumFactory())); 618 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 619 res.setType(parseCodeableConcept(xpp)); 620 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 621 res.setSystemElement(parseUri(xpp)); 622 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 623 res.setValueElement(parseString(xpp)); 624 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 625 res.setPeriod(parsePeriod(xpp)); 626 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assigner")) { 627 res.setAssigner(parseReference(xpp)); 628 } else if (!parseElementContent(eventType, xpp, res)) 629 unknownContent(xpp); 630 eventType = nextNoWhitespace(xpp); 631 } 632 next(xpp); 633 parseElementClose(res); 634 return res; 635 } 636 637 protected Signature parseSignature(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 638 Signature res = new Signature(); 639 parseTypeAttributes(xpp, res); 640 next(xpp); 641 int eventType = nextNoWhitespace(xpp); 642 while (eventType != XmlPullParser.END_TAG) { 643 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 644 res.getType().add(parseCoding(xpp)); 645 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("when")) { 646 res.setWhenElement(parseInstant(xpp)); 647 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "who")) { 648 res.setWho(parseType("who", xpp)); 649 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentType")) { 650 res.setContentTypeElement(parseCode(xpp)); 651 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("blob")) { 652 res.setBlobElement(parseBase64Binary(xpp)); 653 } else if (!parseElementContent(eventType, xpp, res)) 654 unknownContent(xpp); 655 eventType = nextNoWhitespace(xpp); 656 } 657 next(xpp); 658 parseElementClose(res); 659 return res; 660 } 661 662 protected Age parseAge(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 663 Age res = new Age(); 664 parseElementAttributes(xpp, res); 665 next(xpp); 666 int eventType = nextNoWhitespace(xpp); 667 while (eventType != XmlPullParser.END_TAG) { 668 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 669 res.setValueElement(parseDecimal(xpp)); 670 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comparator")) { 671 res.setComparatorElement(parseEnumeration(xpp, Quantity.QuantityComparator.NULL, new Quantity.QuantityComparatorEnumFactory())); 672 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unit")) { 673 res.setUnitElement(parseString(xpp)); 674 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 675 res.setSystemElement(parseUri(xpp)); 676 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 677 res.setCodeElement(parseCode(xpp)); 678 } else if (!parseElementContent(eventType, xpp, res)) 679 unknownContent(xpp); 680 eventType = nextNoWhitespace(xpp); 681 } 682 next(xpp); 683 parseElementClose(res); 684 return res; 685 } 686 687 protected Count parseCount(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 688 Count res = new Count(); 689 parseElementAttributes(xpp, res); 690 next(xpp); 691 int eventType = nextNoWhitespace(xpp); 692 while (eventType != XmlPullParser.END_TAG) { 693 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 694 res.setValueElement(parseDecimal(xpp)); 695 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comparator")) { 696 res.setComparatorElement(parseEnumeration(xpp, Quantity.QuantityComparator.NULL, new Quantity.QuantityComparatorEnumFactory())); 697 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unit")) { 698 res.setUnitElement(parseString(xpp)); 699 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 700 res.setSystemElement(parseUri(xpp)); 701 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 702 res.setCodeElement(parseCode(xpp)); 703 } else if (!parseElementContent(eventType, xpp, res)) 704 unknownContent(xpp); 705 eventType = nextNoWhitespace(xpp); 706 } 707 next(xpp); 708 parseElementClose(res); 709 return res; 710 } 711 712 protected Money parseMoney(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 713 Money res = new Money(); 714 parseElementAttributes(xpp, res); 715 next(xpp); 716 int eventType = nextNoWhitespace(xpp); 717 while (eventType != XmlPullParser.END_TAG) { 718 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 719 res.setValueElement(parseDecimal(xpp)); 720 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comparator")) { 721 res.setComparatorElement(parseEnumeration(xpp, Quantity.QuantityComparator.NULL, new Quantity.QuantityComparatorEnumFactory())); 722 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unit")) { 723 res.setUnitElement(parseString(xpp)); 724 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 725 res.setSystemElement(parseUri(xpp)); 726 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 727 res.setCodeElement(parseCode(xpp)); 728 } else if (!parseElementContent(eventType, xpp, res)) 729 unknownContent(xpp); 730 eventType = nextNoWhitespace(xpp); 731 } 732 next(xpp); 733 parseElementClose(res); 734 return res; 735 } 736 737 protected Distance parseDistance(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 738 Distance res = new Distance(); 739 parseElementAttributes(xpp, res); 740 next(xpp); 741 int eventType = nextNoWhitespace(xpp); 742 while (eventType != XmlPullParser.END_TAG) { 743 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 744 res.setValueElement(parseDecimal(xpp)); 745 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comparator")) { 746 res.setComparatorElement(parseEnumeration(xpp, Quantity.QuantityComparator.NULL, new Quantity.QuantityComparatorEnumFactory())); 747 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unit")) { 748 res.setUnitElement(parseString(xpp)); 749 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 750 res.setSystemElement(parseUri(xpp)); 751 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 752 res.setCodeElement(parseCode(xpp)); 753 } else if (!parseElementContent(eventType, xpp, res)) 754 unknownContent(xpp); 755 eventType = nextNoWhitespace(xpp); 756 } 757 next(xpp); 758 parseElementClose(res); 759 return res; 760 } 761 762 protected Duration parseDuration(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 763 Duration res = new Duration(); 764 parseElementAttributes(xpp, res); 765 next(xpp); 766 int eventType = nextNoWhitespace(xpp); 767 while (eventType != XmlPullParser.END_TAG) { 768 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 769 res.setValueElement(parseDecimal(xpp)); 770 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comparator")) { 771 res.setComparatorElement(parseEnumeration(xpp, Quantity.QuantityComparator.NULL, new Quantity.QuantityComparatorEnumFactory())); 772 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unit")) { 773 res.setUnitElement(parseString(xpp)); 774 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 775 res.setSystemElement(parseUri(xpp)); 776 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 777 res.setCodeElement(parseCode(xpp)); 778 } else if (!parseElementContent(eventType, xpp, res)) 779 unknownContent(xpp); 780 eventType = nextNoWhitespace(xpp); 781 } 782 next(xpp); 783 parseElementClose(res); 784 return res; 785 } 786 787 protected SimpleQuantity parseSimpleQuantity(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 788 SimpleQuantity res = new SimpleQuantity(); 789 parseElementAttributes(xpp, res); 790 next(xpp); 791 int eventType = nextNoWhitespace(xpp); 792 while (eventType != XmlPullParser.END_TAG) { 793 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 794 res.setValueElement(parseDecimal(xpp)); 795 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comparator")) { 796 res.setComparatorElement(parseEnumeration(xpp, Quantity.QuantityComparator.NULL, new Quantity.QuantityComparatorEnumFactory())); 797 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unit")) { 798 res.setUnitElement(parseString(xpp)); 799 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 800 res.setSystemElement(parseUri(xpp)); 801 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 802 res.setCodeElement(parseCode(xpp)); 803 } else if (!parseElementContent(eventType, xpp, res)) 804 unknownContent(xpp); 805 eventType = nextNoWhitespace(xpp); 806 } 807 next(xpp); 808 parseElementClose(res); 809 return res; 810 } 811 812 protected TriggerDefinition parseTriggerDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 813 TriggerDefinition res = new TriggerDefinition(); 814 parseElementAttributes(xpp, res); 815 next(xpp); 816 int eventType = nextNoWhitespace(xpp); 817 while (eventType != XmlPullParser.END_TAG) { 818 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 819 res.setTypeElement(parseEnumeration(xpp, TriggerDefinition.TriggerType.NULL, new TriggerDefinition.TriggerTypeEnumFactory())); 820 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eventName")) { 821 res.setEventNameElement(parseString(xpp)); 822 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "eventTiming")) { 823 res.setEventTiming(parseType("eventTiming", xpp)); 824 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eventData")) { 825 res.setEventData(parseDataRequirement(xpp)); 826 } else if (!parseElementContent(eventType, xpp, res)) 827 unknownContent(xpp); 828 eventType = nextNoWhitespace(xpp); 829 } 830 next(xpp); 831 parseElementClose(res); 832 return res; 833 } 834 835 protected ElementDefinition parseElementDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 836 ElementDefinition res = new ElementDefinition(); 837 parseElementAttributes(xpp, res); 838 next(xpp); 839 int eventType = nextNoWhitespace(xpp); 840 while (eventType != XmlPullParser.END_TAG) { 841 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 842 res.setPathElement(parseString(xpp)); 843 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("representation")) { 844 res.getRepresentation().add(parseEnumeration(xpp, ElementDefinition.PropertyRepresentation.NULL, new ElementDefinition.PropertyRepresentationEnumFactory())); 845 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 846 res.setNameElement(parseString(xpp)); 847 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("label")) { 848 res.setLabelElement(parseString(xpp)); 849 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 850 res.getCode().add(parseCoding(xpp)); 851 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("slicing")) { 852 res.setSlicing(parseElementDefinitionElementDefinitionSlicingComponent(xpp, res)); 853 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("short")) { 854 res.setShortElement(parseString(xpp)); 855 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 856 res.setDefinitionElement(parseMarkdown(xpp)); 857 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comments")) { 858 res.setCommentsElement(parseMarkdown(xpp)); 859 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirements")) { 860 res.setRequirementsElement(parseMarkdown(xpp)); 861 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("alias")) { 862 res.getAlias().add(parseString(xpp)); 863 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("min")) { 864 res.setMinElement(parseInteger(xpp)); 865 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("max")) { 866 res.setMaxElement(parseString(xpp)); 867 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("base")) { 868 res.setBase(parseElementDefinitionElementDefinitionBaseComponent(xpp, res)); 869 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentReference")) { 870 res.setContentReferenceElement(parseUri(xpp)); 871 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 872 res.getType().add(parseElementDefinitionTypeRefComponent(xpp, res)); 873 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "defaultValue")) { 874 res.setDefaultValue(parseType("defaultValue", xpp)); 875 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("meaningWhenMissing")) { 876 res.setMeaningWhenMissingElement(parseMarkdown(xpp)); 877 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "fixed")) { 878 res.setFixed(parseType("fixed", xpp)); 879 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "pattern")) { 880 res.setPattern(parseType("pattern", xpp)); 881 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "example")) { 882 res.setExample(parseType("example", xpp)); 883 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "minValue")) { 884 res.setMinValue(parseType("minValue", xpp)); 885 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "maxValue")) { 886 res.setMaxValue(parseType("maxValue", xpp)); 887 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxLength")) { 888 res.setMaxLengthElement(parseInteger(xpp)); 889 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 890 res.getCondition().add(parseId(xpp)); 891 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("constraint")) { 892 res.getConstraint().add(parseElementDefinitionElementDefinitionConstraintComponent(xpp, res)); 893 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mustSupport")) { 894 res.setMustSupportElement(parseBoolean(xpp)); 895 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("isModifier")) { 896 res.setIsModifierElement(parseBoolean(xpp)); 897 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("isSummary")) { 898 res.setIsSummaryElement(parseBoolean(xpp)); 899 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("binding")) { 900 res.setBinding(parseElementDefinitionElementDefinitionBindingComponent(xpp, res)); 901 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mapping")) { 902 res.getMapping().add(parseElementDefinitionElementDefinitionMappingComponent(xpp, res)); 903 } else if (!parseElementContent(eventType, xpp, res)) 904 unknownContent(xpp); 905 eventType = nextNoWhitespace(xpp); 906 } 907 next(xpp); 908 parseElementClose(res); 909 return res; 910 } 911 912 protected ElementDefinition.ElementDefinitionSlicingComponent parseElementDefinitionElementDefinitionSlicingComponent(XmlPullParser xpp, ElementDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 913 ElementDefinition.ElementDefinitionSlicingComponent res = new ElementDefinition.ElementDefinitionSlicingComponent(); 914 parseElementAttributes(xpp, res); 915 next(xpp); 916 int eventType = nextNoWhitespace(xpp); 917 while (eventType != XmlPullParser.END_TAG) { 918 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("discriminator")) { 919 res.getDiscriminator().add(parseString(xpp)); 920 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 921 res.setDescriptionElement(parseString(xpp)); 922 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ordered")) { 923 res.setOrderedElement(parseBoolean(xpp)); 924 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rules")) { 925 res.setRulesElement(parseEnumeration(xpp, ElementDefinition.SlicingRules.NULL, new ElementDefinition.SlicingRulesEnumFactory())); 926 } else if (!parseElementContent(eventType, xpp, res)) 927 unknownContent(xpp); 928 eventType = nextNoWhitespace(xpp); 929 } 930 next(xpp); 931 parseElementClose(res); 932 return res; 933 } 934 935 protected ElementDefinition.ElementDefinitionBaseComponent parseElementDefinitionElementDefinitionBaseComponent(XmlPullParser xpp, ElementDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 936 ElementDefinition.ElementDefinitionBaseComponent res = new ElementDefinition.ElementDefinitionBaseComponent(); 937 parseElementAttributes(xpp, res); 938 next(xpp); 939 int eventType = nextNoWhitespace(xpp); 940 while (eventType != XmlPullParser.END_TAG) { 941 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 942 res.setPathElement(parseString(xpp)); 943 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("min")) { 944 res.setMinElement(parseInteger(xpp)); 945 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("max")) { 946 res.setMaxElement(parseString(xpp)); 947 } else if (!parseElementContent(eventType, xpp, res)) 948 unknownContent(xpp); 949 eventType = nextNoWhitespace(xpp); 950 } 951 next(xpp); 952 parseElementClose(res); 953 return res; 954 } 955 956 protected ElementDefinition.TypeRefComponent parseElementDefinitionTypeRefComponent(XmlPullParser xpp, ElementDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 957 ElementDefinition.TypeRefComponent res = new ElementDefinition.TypeRefComponent(); 958 parseElementAttributes(xpp, res); 959 next(xpp); 960 int eventType = nextNoWhitespace(xpp); 961 while (eventType != XmlPullParser.END_TAG) { 962 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 963 res.setCodeElement(parseCode(xpp)); 964 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 965 res.getProfile().add(parseUri(xpp)); 966 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("aggregation")) { 967 res.getAggregation().add(parseEnumeration(xpp, ElementDefinition.AggregationMode.NULL, new ElementDefinition.AggregationModeEnumFactory())); 968 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("versioning")) { 969 res.setVersioningElement(parseEnumeration(xpp, ElementDefinition.ReferenceVersionRules.NULL, new ElementDefinition.ReferenceVersionRulesEnumFactory())); 970 } else if (!parseElementContent(eventType, xpp, res)) 971 unknownContent(xpp); 972 eventType = nextNoWhitespace(xpp); 973 } 974 next(xpp); 975 parseElementClose(res); 976 return res; 977 } 978 979 protected ElementDefinition.ElementDefinitionConstraintComponent parseElementDefinitionElementDefinitionConstraintComponent(XmlPullParser xpp, ElementDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 980 ElementDefinition.ElementDefinitionConstraintComponent res = new ElementDefinition.ElementDefinitionConstraintComponent(); 981 parseElementAttributes(xpp, res); 982 next(xpp); 983 int eventType = nextNoWhitespace(xpp); 984 while (eventType != XmlPullParser.END_TAG) { 985 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("key")) { 986 res.setKeyElement(parseId(xpp)); 987 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirements")) { 988 res.setRequirementsElement(parseString(xpp)); 989 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("severity")) { 990 res.setSeverityElement(parseEnumeration(xpp, ElementDefinition.ConstraintSeverity.NULL, new ElementDefinition.ConstraintSeverityEnumFactory())); 991 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("human")) { 992 res.setHumanElement(parseString(xpp)); 993 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 994 res.setExpressionElement(parseString(xpp)); 995 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("xpath")) { 996 res.setXpathElement(parseString(xpp)); 997 } else if (!parseElementContent(eventType, xpp, res)) 998 unknownContent(xpp); 999 eventType = nextNoWhitespace(xpp); 1000 } 1001 next(xpp); 1002 parseElementClose(res); 1003 return res; 1004 } 1005 1006 protected ElementDefinition.ElementDefinitionBindingComponent parseElementDefinitionElementDefinitionBindingComponent(XmlPullParser xpp, ElementDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 1007 ElementDefinition.ElementDefinitionBindingComponent res = new ElementDefinition.ElementDefinitionBindingComponent(); 1008 parseElementAttributes(xpp, res); 1009 next(xpp); 1010 int eventType = nextNoWhitespace(xpp); 1011 while (eventType != XmlPullParser.END_TAG) { 1012 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("strength")) { 1013 res.setStrengthElement(parseEnumeration(xpp, Enumerations.BindingStrength.NULL, new Enumerations.BindingStrengthEnumFactory())); 1014 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 1015 res.setDescriptionElement(parseString(xpp)); 1016 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "valueSet")) { 1017 res.setValueSet(parseType("valueSet", xpp)); 1018 } else if (!parseElementContent(eventType, xpp, res)) 1019 unknownContent(xpp); 1020 eventType = nextNoWhitespace(xpp); 1021 } 1022 next(xpp); 1023 parseElementClose(res); 1024 return res; 1025 } 1026 1027 protected ElementDefinition.ElementDefinitionMappingComponent parseElementDefinitionElementDefinitionMappingComponent(XmlPullParser xpp, ElementDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 1028 ElementDefinition.ElementDefinitionMappingComponent res = new ElementDefinition.ElementDefinitionMappingComponent(); 1029 parseElementAttributes(xpp, res); 1030 next(xpp); 1031 int eventType = nextNoWhitespace(xpp); 1032 while (eventType != XmlPullParser.END_TAG) { 1033 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identity")) { 1034 res.setIdentityElement(parseId(xpp)); 1035 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 1036 res.setLanguageElement(parseCode(xpp)); 1037 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("map")) { 1038 res.setMapElement(parseString(xpp)); 1039 } else if (!parseElementContent(eventType, xpp, res)) 1040 unknownContent(xpp); 1041 eventType = nextNoWhitespace(xpp); 1042 } 1043 next(xpp); 1044 parseElementClose(res); 1045 return res; 1046 } 1047 1048 protected Timing parseTiming(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1049 Timing res = new Timing(); 1050 parseElementAttributes(xpp, res); 1051 next(xpp); 1052 int eventType = nextNoWhitespace(xpp); 1053 while (eventType != XmlPullParser.END_TAG) { 1054 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 1055 res.getEvent().add(parseDateTime(xpp)); 1056 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("repeat")) { 1057 res.setRepeat(parseTimingTimingRepeatComponent(xpp, res)); 1058 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 1059 res.setCode(parseCodeableConcept(xpp)); 1060 } else if (!parseElementContent(eventType, xpp, res)) 1061 unknownContent(xpp); 1062 eventType = nextNoWhitespace(xpp); 1063 } 1064 next(xpp); 1065 parseElementClose(res); 1066 return res; 1067 } 1068 1069 protected Timing.TimingRepeatComponent parseTimingTimingRepeatComponent(XmlPullParser xpp, Timing owner) throws XmlPullParserException, IOException, FHIRFormatError { 1070 Timing.TimingRepeatComponent res = new Timing.TimingRepeatComponent(); 1071 parseElementAttributes(xpp, res); 1072 next(xpp); 1073 int eventType = nextNoWhitespace(xpp); 1074 while (eventType != XmlPullParser.END_TAG) { 1075 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "bounds")) { 1076 res.setBounds(parseType("bounds", xpp)); 1077 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("count")) { 1078 res.setCountElement(parseInteger(xpp)); 1079 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("countMax")) { 1080 res.setCountMaxElement(parseInteger(xpp)); 1081 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("duration")) { 1082 res.setDurationElement(parseDecimal(xpp)); 1083 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("durationMax")) { 1084 res.setDurationMaxElement(parseDecimal(xpp)); 1085 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("durationUnit")) { 1086 res.setDurationUnitElement(parseEnumeration(xpp, Timing.UnitsOfTime.NULL, new Timing.UnitsOfTimeEnumFactory())); 1087 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("frequency")) { 1088 res.setFrequencyElement(parseInteger(xpp)); 1089 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("frequencyMax")) { 1090 res.setFrequencyMaxElement(parseInteger(xpp)); 1091 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 1092 res.setPeriodElement(parseDecimal(xpp)); 1093 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("periodMax")) { 1094 res.setPeriodMaxElement(parseDecimal(xpp)); 1095 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("periodUnit")) { 1096 res.setPeriodUnitElement(parseEnumeration(xpp, Timing.UnitsOfTime.NULL, new Timing.UnitsOfTimeEnumFactory())); 1097 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("when")) { 1098 res.setWhenElement(parseEnumeration(xpp, Timing.EventTiming.NULL, new Timing.EventTimingEnumFactory())); 1099 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("offset")) { 1100 res.setOffsetElement(parseUnsignedInt(xpp)); 1101 } else if (!parseElementContent(eventType, xpp, res)) 1102 unknownContent(xpp); 1103 eventType = nextNoWhitespace(xpp); 1104 } 1105 next(xpp); 1106 parseElementClose(res); 1107 return res; 1108 } 1109 1110 protected ModuleMetadata parseModuleMetadata(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1111 ModuleMetadata res = new ModuleMetadata(); 1112 parseElementAttributes(xpp, res); 1113 next(xpp); 1114 int eventType = nextNoWhitespace(xpp); 1115 while (eventType != XmlPullParser.END_TAG) { 1116 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 1117 res.setUrlElement(parseUri(xpp)); 1118 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 1119 res.getIdentifier().add(parseIdentifier(xpp)); 1120 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 1121 res.setVersionElement(parseString(xpp)); 1122 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 1123 res.setNameElement(parseString(xpp)); 1124 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 1125 res.setTitleElement(parseString(xpp)); 1126 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1127 res.setTypeElement(parseEnumeration(xpp, ModuleMetadata.ModuleMetadataType.NULL, new ModuleMetadata.ModuleMetadataTypeEnumFactory())); 1128 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 1129 res.setStatusElement(parseEnumeration(xpp, ModuleMetadata.ModuleMetadataStatus.NULL, new ModuleMetadata.ModuleMetadataStatusEnumFactory())); 1130 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 1131 res.setExperimentalElement(parseBoolean(xpp)); 1132 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 1133 res.setDescriptionElement(parseString(xpp)); 1134 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 1135 res.setPurposeElement(parseString(xpp)); 1136 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usage")) { 1137 res.setUsageElement(parseString(xpp)); 1138 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publicationDate")) { 1139 res.setPublicationDateElement(parseDate(xpp)); 1140 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastReviewDate")) { 1141 res.setLastReviewDateElement(parseDate(xpp)); 1142 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectivePeriod")) { 1143 res.setEffectivePeriod(parsePeriod(xpp)); 1144 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverage")) { 1145 res.getCoverage().add(parseModuleMetadataModuleMetadataCoverageComponent(xpp, res)); 1146 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { 1147 res.getTopic().add(parseCodeableConcept(xpp)); 1148 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contributor")) { 1149 res.getContributor().add(parseModuleMetadataModuleMetadataContributorComponent(xpp, res)); 1150 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 1151 res.setPublisherElement(parseString(xpp)); 1152 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 1153 res.getContact().add(parseModuleMetadataModuleMetadataContactComponent(xpp, res)); 1154 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 1155 res.setCopyrightElement(parseString(xpp)); 1156 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedResource")) { 1157 res.getRelatedResource().add(parseModuleMetadataModuleMetadataRelatedResourceComponent(xpp, res)); 1158 } else if (!parseElementContent(eventType, xpp, res)) 1159 unknownContent(xpp); 1160 eventType = nextNoWhitespace(xpp); 1161 } 1162 next(xpp); 1163 parseElementClose(res); 1164 return res; 1165 } 1166 1167 protected ModuleMetadata.ModuleMetadataCoverageComponent parseModuleMetadataModuleMetadataCoverageComponent(XmlPullParser xpp, ModuleMetadata owner) throws XmlPullParserException, IOException, FHIRFormatError { 1168 ModuleMetadata.ModuleMetadataCoverageComponent res = new ModuleMetadata.ModuleMetadataCoverageComponent(); 1169 parseElementAttributes(xpp, res); 1170 next(xpp); 1171 int eventType = nextNoWhitespace(xpp); 1172 while (eventType != XmlPullParser.END_TAG) { 1173 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focus")) { 1174 res.setFocus(parseCoding(xpp)); 1175 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 1176 res.setValue(parseCodeableConcept(xpp)); 1177 } else if (!parseElementContent(eventType, xpp, res)) 1178 unknownContent(xpp); 1179 eventType = nextNoWhitespace(xpp); 1180 } 1181 next(xpp); 1182 parseElementClose(res); 1183 return res; 1184 } 1185 1186 protected ModuleMetadata.ModuleMetadataContributorComponent parseModuleMetadataModuleMetadataContributorComponent(XmlPullParser xpp, ModuleMetadata owner) throws XmlPullParserException, IOException, FHIRFormatError { 1187 ModuleMetadata.ModuleMetadataContributorComponent res = new ModuleMetadata.ModuleMetadataContributorComponent(); 1188 parseElementAttributes(xpp, res); 1189 next(xpp); 1190 int eventType = nextNoWhitespace(xpp); 1191 while (eventType != XmlPullParser.END_TAG) { 1192 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1193 res.setTypeElement(parseEnumeration(xpp, ModuleMetadata.ModuleMetadataContributorType.NULL, new ModuleMetadata.ModuleMetadataContributorTypeEnumFactory())); 1194 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 1195 res.setNameElement(parseString(xpp)); 1196 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 1197 res.getContact().add(parseModuleMetadataModuleMetadataContributorContactComponent(xpp, owner)); 1198 } else if (!parseElementContent(eventType, xpp, res)) 1199 unknownContent(xpp); 1200 eventType = nextNoWhitespace(xpp); 1201 } 1202 next(xpp); 1203 parseElementClose(res); 1204 return res; 1205 } 1206 1207 protected ModuleMetadata.ModuleMetadataContributorContactComponent parseModuleMetadataModuleMetadataContributorContactComponent(XmlPullParser xpp, ModuleMetadata owner) throws XmlPullParserException, IOException, FHIRFormatError { 1208 ModuleMetadata.ModuleMetadataContributorContactComponent res = new ModuleMetadata.ModuleMetadataContributorContactComponent(); 1209 parseElementAttributes(xpp, res); 1210 next(xpp); 1211 int eventType = nextNoWhitespace(xpp); 1212 while (eventType != XmlPullParser.END_TAG) { 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 unknownContent(xpp); 1219 eventType = nextNoWhitespace(xpp); 1220 } 1221 next(xpp); 1222 parseElementClose(res); 1223 return res; 1224 } 1225 1226 protected ModuleMetadata.ModuleMetadataContactComponent parseModuleMetadataModuleMetadataContactComponent(XmlPullParser xpp, ModuleMetadata owner) throws XmlPullParserException, IOException, FHIRFormatError { 1227 ModuleMetadata.ModuleMetadataContactComponent res = new ModuleMetadata.ModuleMetadataContactComponent(); 1228 parseElementAttributes(xpp, res); 1229 next(xpp); 1230 int eventType = nextNoWhitespace(xpp); 1231 while (eventType != XmlPullParser.END_TAG) { 1232 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 1233 res.setNameElement(parseString(xpp)); 1234 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 1235 res.getTelecom().add(parseContactPoint(xpp)); 1236 } else if (!parseElementContent(eventType, xpp, res)) 1237 unknownContent(xpp); 1238 eventType = nextNoWhitespace(xpp); 1239 } 1240 next(xpp); 1241 parseElementClose(res); 1242 return res; 1243 } 1244 1245 protected ModuleMetadata.ModuleMetadataRelatedResourceComponent parseModuleMetadataModuleMetadataRelatedResourceComponent(XmlPullParser xpp, ModuleMetadata owner) throws XmlPullParserException, IOException, FHIRFormatError { 1246 ModuleMetadata.ModuleMetadataRelatedResourceComponent res = new ModuleMetadata.ModuleMetadataRelatedResourceComponent(); 1247 parseElementAttributes(xpp, res); 1248 next(xpp); 1249 int eventType = nextNoWhitespace(xpp); 1250 while (eventType != XmlPullParser.END_TAG) { 1251 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1252 res.setTypeElement(parseEnumeration(xpp, ModuleMetadata.ModuleMetadataResourceType.NULL, new ModuleMetadata.ModuleMetadataResourceTypeEnumFactory())); 1253 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("document")) { 1254 res.setDocument(parseAttachment(xpp)); 1255 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 1256 res.setResource(parseReference(xpp)); 1257 } else if (!parseElementContent(eventType, xpp, res)) 1258 unknownContent(xpp); 1259 eventType = nextNoWhitespace(xpp); 1260 } 1261 next(xpp); 1262 parseElementClose(res); 1263 return res; 1264 } 1265 1266 protected ActionDefinition parseActionDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1267 ActionDefinition res = new ActionDefinition(); 1268 parseElementAttributes(xpp, res); 1269 next(xpp); 1270 int eventType = nextNoWhitespace(xpp); 1271 while (eventType != XmlPullParser.END_TAG) { 1272 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actionIdentifier")) { 1273 res.setActionIdentifier(parseIdentifier(xpp)); 1274 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("label")) { 1275 res.setLabelElement(parseString(xpp)); 1276 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 1277 res.setTitleElement(parseString(xpp)); 1278 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 1279 res.setDescriptionElement(parseString(xpp)); 1280 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("textEquivalent")) { 1281 res.setTextEquivalentElement(parseString(xpp)); 1282 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("concept")) { 1283 res.getConcept().add(parseCodeableConcept(xpp)); 1284 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingEvidence")) { 1285 res.getSupportingEvidence().add(parseAttachment(xpp)); 1286 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 1287 res.getDocumentation().add(parseAttachment(xpp)); 1288 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedAction")) { 1289 res.setRelatedAction(parseActionDefinitionActionDefinitionRelatedActionComponent(xpp, res)); 1290 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participantType")) { 1291 res.getParticipantType().add(parseEnumeration(xpp, ActionDefinition.ParticipantType.NULL, new ActionDefinition.ParticipantTypeEnumFactory())); 1292 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1293 res.setTypeElement(parseEnumeration(xpp, ActionDefinition.ActionType.NULL, new ActionDefinition.ActionTypeEnumFactory())); 1294 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("behavior")) { 1295 res.getBehavior().add(parseActionDefinitionActionDefinitionBehaviorComponent(xpp, res)); 1296 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 1297 res.setResource(parseReference(xpp)); 1298 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("customization")) { 1299 res.getCustomization().add(parseActionDefinitionActionDefinitionCustomizationComponent(xpp, res)); 1300 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 1301 res.getAction().add(parseActionDefinition(xpp)); 1302 } else if (!parseElementContent(eventType, xpp, res)) 1303 unknownContent(xpp); 1304 eventType = nextNoWhitespace(xpp); 1305 } 1306 next(xpp); 1307 parseElementClose(res); 1308 return res; 1309 } 1310 1311 protected ActionDefinition.ActionDefinitionRelatedActionComponent parseActionDefinitionActionDefinitionRelatedActionComponent(XmlPullParser xpp, ActionDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 1312 ActionDefinition.ActionDefinitionRelatedActionComponent res = new ActionDefinition.ActionDefinitionRelatedActionComponent(); 1313 parseElementAttributes(xpp, res); 1314 next(xpp); 1315 int eventType = nextNoWhitespace(xpp); 1316 while (eventType != XmlPullParser.END_TAG) { 1317 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actionIdentifier")) { 1318 res.setActionIdentifier(parseIdentifier(xpp)); 1319 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 1320 res.setRelationshipElement(parseEnumeration(xpp, ActionDefinition.ActionRelationshipType.NULL, new ActionDefinition.ActionRelationshipTypeEnumFactory())); 1321 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "offset")) { 1322 res.setOffset(parseType("offset", xpp)); 1323 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("anchor")) { 1324 res.setAnchorElement(parseEnumeration(xpp, ActionDefinition.ActionRelationshipAnchor.NULL, new ActionDefinition.ActionRelationshipAnchorEnumFactory())); 1325 } else if (!parseElementContent(eventType, xpp, res)) 1326 unknownContent(xpp); 1327 eventType = nextNoWhitespace(xpp); 1328 } 1329 next(xpp); 1330 parseElementClose(res); 1331 return res; 1332 } 1333 1334 protected ActionDefinition.ActionDefinitionBehaviorComponent parseActionDefinitionActionDefinitionBehaviorComponent(XmlPullParser xpp, ActionDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 1335 ActionDefinition.ActionDefinitionBehaviorComponent res = new ActionDefinition.ActionDefinitionBehaviorComponent(); 1336 parseElementAttributes(xpp, res); 1337 next(xpp); 1338 int eventType = nextNoWhitespace(xpp); 1339 while (eventType != XmlPullParser.END_TAG) { 1340 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1341 res.setType(parseCoding(xpp)); 1342 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 1343 res.setValue(parseCoding(xpp)); 1344 } else if (!parseElementContent(eventType, xpp, res)) 1345 unknownContent(xpp); 1346 eventType = nextNoWhitespace(xpp); 1347 } 1348 next(xpp); 1349 parseElementClose(res); 1350 return res; 1351 } 1352 1353 protected ActionDefinition.ActionDefinitionCustomizationComponent parseActionDefinitionActionDefinitionCustomizationComponent(XmlPullParser xpp, ActionDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 1354 ActionDefinition.ActionDefinitionCustomizationComponent res = new ActionDefinition.ActionDefinitionCustomizationComponent(); 1355 parseElementAttributes(xpp, res); 1356 next(xpp); 1357 int eventType = nextNoWhitespace(xpp); 1358 while (eventType != XmlPullParser.END_TAG) { 1359 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 1360 res.setPathElement(parseString(xpp)); 1361 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 1362 res.setExpressionElement(parseString(xpp)); 1363 } else if (!parseElementContent(eventType, xpp, res)) 1364 unknownContent(xpp); 1365 eventType = nextNoWhitespace(xpp); 1366 } 1367 next(xpp); 1368 parseElementClose(res); 1369 return res; 1370 } 1371 1372 protected Address parseAddress(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1373 Address res = new Address(); 1374 parseElementAttributes(xpp, res); 1375 next(xpp); 1376 int eventType = nextNoWhitespace(xpp); 1377 while (eventType != XmlPullParser.END_TAG) { 1378 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 1379 res.setUseElement(parseEnumeration(xpp, Address.AddressUse.NULL, new Address.AddressUseEnumFactory())); 1380 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1381 res.setTypeElement(parseEnumeration(xpp, Address.AddressType.NULL, new Address.AddressTypeEnumFactory())); 1382 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 1383 res.setTextElement(parseString(xpp)); 1384 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("line")) { 1385 res.getLine().add(parseString(xpp)); 1386 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("city")) { 1387 res.setCityElement(parseString(xpp)); 1388 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("district")) { 1389 res.setDistrictElement(parseString(xpp)); 1390 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("state")) { 1391 res.setStateElement(parseString(xpp)); 1392 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("postalCode")) { 1393 res.setPostalCodeElement(parseString(xpp)); 1394 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("country")) { 1395 res.setCountryElement(parseString(xpp)); 1396 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 1397 res.setPeriod(parsePeriod(xpp)); 1398 } else if (!parseElementContent(eventType, xpp, res)) 1399 unknownContent(xpp); 1400 eventType = nextNoWhitespace(xpp); 1401 } 1402 next(xpp); 1403 parseElementClose(res); 1404 return res; 1405 } 1406 1407 protected HumanName parseHumanName(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1408 HumanName res = new HumanName(); 1409 parseElementAttributes(xpp, res); 1410 next(xpp); 1411 int eventType = nextNoWhitespace(xpp); 1412 while (eventType != XmlPullParser.END_TAG) { 1413 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 1414 res.setUseElement(parseEnumeration(xpp, HumanName.NameUse.NULL, new HumanName.NameUseEnumFactory())); 1415 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 1416 res.setTextElement(parseString(xpp)); 1417 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("family")) { 1418 res.getFamily().add(parseString(xpp)); 1419 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("given")) { 1420 res.getGiven().add(parseString(xpp)); 1421 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prefix")) { 1422 res.getPrefix().add(parseString(xpp)); 1423 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("suffix")) { 1424 res.getSuffix().add(parseString(xpp)); 1425 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 1426 res.setPeriod(parsePeriod(xpp)); 1427 } else if (!parseElementContent(eventType, xpp, res)) 1428 unknownContent(xpp); 1429 eventType = nextNoWhitespace(xpp); 1430 } 1431 next(xpp); 1432 parseElementClose(res); 1433 return res; 1434 } 1435 1436 protected DataRequirement parseDataRequirement(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1437 DataRequirement res = new DataRequirement(); 1438 parseElementAttributes(xpp, res); 1439 next(xpp); 1440 int eventType = nextNoWhitespace(xpp); 1441 while (eventType != XmlPullParser.END_TAG) { 1442 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1443 res.setTypeElement(parseCode(xpp)); 1444 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 1445 res.setProfile(parseReference(xpp)); 1446 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mustSupport")) { 1447 res.getMustSupport().add(parseString(xpp)); 1448 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("codeFilter")) { 1449 res.getCodeFilter().add(parseDataRequirementDataRequirementCodeFilterComponent(xpp, res)); 1450 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateFilter")) { 1451 res.getDateFilter().add(parseDataRequirementDataRequirementDateFilterComponent(xpp, res)); 1452 } else if (!parseElementContent(eventType, xpp, res)) 1453 unknownContent(xpp); 1454 eventType = nextNoWhitespace(xpp); 1455 } 1456 next(xpp); 1457 parseElementClose(res); 1458 return res; 1459 } 1460 1461 protected DataRequirement.DataRequirementCodeFilterComponent parseDataRequirementDataRequirementCodeFilterComponent(XmlPullParser xpp, DataRequirement owner) throws XmlPullParserException, IOException, FHIRFormatError { 1462 DataRequirement.DataRequirementCodeFilterComponent res = new DataRequirement.DataRequirementCodeFilterComponent(); 1463 parseElementAttributes(xpp, res); 1464 next(xpp); 1465 int eventType = nextNoWhitespace(xpp); 1466 while (eventType != XmlPullParser.END_TAG) { 1467 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 1468 res.setPathElement(parseString(xpp)); 1469 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "valueSet")) { 1470 res.setValueSet(parseType("valueSet", xpp)); 1471 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valueCode")) { 1472 res.getValueCode().add(parseCode(xpp)); 1473 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valueCoding")) { 1474 res.getValueCoding().add(parseCoding(xpp)); 1475 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valueCodeableConcept")) { 1476 res.getValueCodeableConcept().add(parseCodeableConcept(xpp)); 1477 } else if (!parseElementContent(eventType, xpp, res)) 1478 unknownContent(xpp); 1479 eventType = nextNoWhitespace(xpp); 1480 } 1481 next(xpp); 1482 parseElementClose(res); 1483 return res; 1484 } 1485 1486 protected DataRequirement.DataRequirementDateFilterComponent parseDataRequirementDataRequirementDateFilterComponent(XmlPullParser xpp, DataRequirement owner) throws XmlPullParserException, IOException, FHIRFormatError { 1487 DataRequirement.DataRequirementDateFilterComponent res = new DataRequirement.DataRequirementDateFilterComponent(); 1488 parseElementAttributes(xpp, res); 1489 next(xpp); 1490 int eventType = nextNoWhitespace(xpp); 1491 while (eventType != XmlPullParser.END_TAG) { 1492 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 1493 res.setPathElement(parseString(xpp)); 1494 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 1495 res.setValue(parseType("value", xpp)); 1496 } else if (!parseElementContent(eventType, xpp, res)) 1497 unknownContent(xpp); 1498 eventType = nextNoWhitespace(xpp); 1499 } 1500 next(xpp); 1501 parseElementClose(res); 1502 return res; 1503 } 1504 1505 protected Meta parseMeta(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1506 Meta res = new Meta(); 1507 parseElementAttributes(xpp, res); 1508 next(xpp); 1509 int eventType = nextNoWhitespace(xpp); 1510 while (eventType != XmlPullParser.END_TAG) { 1511 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("versionId")) { 1512 res.setVersionIdElement(parseId(xpp)); 1513 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastUpdated")) { 1514 res.setLastUpdatedElement(parseInstant(xpp)); 1515 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 1516 res.getProfile().add(parseUri(xpp)); 1517 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("security")) { 1518 res.getSecurity().add(parseCoding(xpp)); 1519 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("tag")) { 1520 res.getTag().add(parseCoding(xpp)); 1521 } else if (!parseElementContent(eventType, xpp, res)) 1522 unknownContent(xpp); 1523 eventType = nextNoWhitespace(xpp); 1524 } 1525 next(xpp); 1526 parseElementClose(res); 1527 return res; 1528 } 1529 1530 protected ParameterDefinition parseParameterDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1531 ParameterDefinition res = new ParameterDefinition(); 1532 parseElementAttributes(xpp, res); 1533 next(xpp); 1534 int eventType = nextNoWhitespace(xpp); 1535 while (eventType != XmlPullParser.END_TAG) { 1536 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 1537 res.setNameElement(parseCode(xpp)); 1538 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 1539 res.setUseElement(parseCode(xpp)); 1540 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("min")) { 1541 res.setMinElement(parseInteger(xpp)); 1542 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("max")) { 1543 res.setMaxElement(parseString(xpp)); 1544 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 1545 res.setDocumentationElement(parseString(xpp)); 1546 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1547 res.setTypeElement(parseCode(xpp)); 1548 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 1549 res.setProfile(parseReference(xpp)); 1550 } else if (!parseElementContent(eventType, xpp, res)) 1551 unknownContent(xpp); 1552 eventType = nextNoWhitespace(xpp); 1553 } 1554 next(xpp); 1555 parseElementClose(res); 1556 return res; 1557 } 1558 1559 protected ContactPoint parseContactPoint(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1560 ContactPoint res = new ContactPoint(); 1561 parseElementAttributes(xpp, res); 1562 next(xpp); 1563 int eventType = nextNoWhitespace(xpp); 1564 while (eventType != XmlPullParser.END_TAG) { 1565 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 1566 res.setSystemElement(parseEnumeration(xpp, ContactPoint.ContactPointSystem.NULL, new ContactPoint.ContactPointSystemEnumFactory())); 1567 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 1568 res.setValueElement(parseString(xpp)); 1569 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 1570 res.setUseElement(parseEnumeration(xpp, ContactPoint.ContactPointUse.NULL, new ContactPoint.ContactPointUseEnumFactory())); 1571 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rank")) { 1572 res.setRankElement(parsePositiveInt(xpp)); 1573 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 1574 res.setPeriod(parsePeriod(xpp)); 1575 } else if (!parseElementContent(eventType, xpp, res)) 1576 unknownContent(xpp); 1577 eventType = nextNoWhitespace(xpp); 1578 } 1579 next(xpp); 1580 parseElementClose(res); 1581 return res; 1582 } 1583 1584 protected Parameters parseParameters(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1585 Parameters res = new Parameters(); 1586 parseResourceAttributes(xpp, res); 1587 next(xpp); 1588 int eventType = nextNoWhitespace(xpp); 1589 while (eventType != XmlPullParser.END_TAG) { 1590 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameter")) { 1591 res.getParameter().add(parseParametersParametersParameterComponent(xpp, res)); 1592 } else if (!parseResourceContent(eventType, xpp, res)) 1593 unknownContent(xpp); 1594 eventType = nextNoWhitespace(xpp); 1595 } 1596 next(xpp); 1597 parseElementClose(res); 1598 return res; 1599 } 1600 1601 protected Parameters.ParametersParameterComponent parseParametersParametersParameterComponent(XmlPullParser xpp, Parameters owner) throws XmlPullParserException, IOException, FHIRFormatError { 1602 Parameters.ParametersParameterComponent res = new Parameters.ParametersParameterComponent(); 1603 parseBackboneAttributes(xpp, res); 1604 next(xpp); 1605 int eventType = nextNoWhitespace(xpp); 1606 while (eventType != XmlPullParser.END_TAG) { 1607 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 1608 res.setNameElement(parseString(xpp)); 1609 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 1610 res.setValue(parseType("value", xpp)); 1611 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 1612 res.setResource(parseResourceContained(xpp)); 1613 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("part")) { 1614 res.getPart().add(parseParametersParametersParameterComponent(xpp, owner)); 1615 } else if (!parseBackboneContent(eventType, xpp, res)) 1616 unknownContent(xpp); 1617 eventType = nextNoWhitespace(xpp); 1618 } 1619 next(xpp); 1620 parseElementClose(res); 1621 return res; 1622 } 1623 1624 protected void parseResourceAttributes(XmlPullParser xpp, Resource res) throws XmlPullParserException, IOException, FHIRFormatError { 1625 if (!comments.isEmpty()) { 1626 res.getFormatCommentsPre().addAll(comments); 1627 comments.clear(); 1628 } 1629 } 1630 1631 protected boolean parseResourceContent(int eventType, XmlPullParser xpp, Resource res) throws XmlPullParserException, IOException, FHIRFormatError { 1632 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("id")) { 1633 res.setIdElement(parseId(xpp)); 1634 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("meta")) { 1635 res.setMeta(parseMeta(xpp)); 1636 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("implicitRules")) { 1637 res.setImplicitRulesElement(parseUri(xpp)); 1638 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 1639 res.setLanguageElement(parseCode(xpp)); 1640 } else 1641 return false; 1642 return true; 1643 } 1644 1645 protected void parseDomainResourceAttributes(XmlPullParser xpp, DomainResource res) throws XmlPullParserException, IOException, FHIRFormatError { 1646 parseResourceAttributes(xpp, res); 1647 } 1648 1649 protected boolean parseDomainResourceContent(int eventType, XmlPullParser xpp, DomainResource res) throws XmlPullParserException, IOException, FHIRFormatError { 1650 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 1651 res.setText(parseNarrative(xpp)); 1652 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contained")) { 1653 res.getContained().add(parseResourceContained(xpp)); 1654 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("extension")) { 1655 res.getExtension().add(parseExtension(xpp)); 1656 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifierExtension")) { 1657 res.getModifierExtension().add(parseExtension(xpp)); 1658 } else 1659 return parseResourceContent(eventType, xpp, res); 1660 return true; 1661 } 1662 1663 protected Account parseAccount(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1664 Account res = new Account(); 1665 parseDomainResourceAttributes(xpp, res); 1666 next(xpp); 1667 int eventType = nextNoWhitespace(xpp); 1668 while (eventType != XmlPullParser.END_TAG) { 1669 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 1670 res.getIdentifier().add(parseIdentifier(xpp)); 1671 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 1672 res.setNameElement(parseString(xpp)); 1673 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1674 res.setType(parseCodeableConcept(xpp)); 1675 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 1676 res.setStatusElement(parseEnumeration(xpp, Account.AccountStatus.NULL, new Account.AccountStatusEnumFactory())); 1677 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("activePeriod")) { 1678 res.setActivePeriod(parsePeriod(xpp)); 1679 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("currency")) { 1680 res.setCurrency(parseCoding(xpp)); 1681 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("balance")) { 1682 res.setBalance(parseMoney(xpp)); 1683 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coveragePeriod")) { 1684 res.setCoveragePeriod(parsePeriod(xpp)); 1685 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 1686 res.setSubject(parseReference(xpp)); 1687 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("owner")) { 1688 res.setOwner(parseReference(xpp)); 1689 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 1690 res.setDescriptionElement(parseString(xpp)); 1691 } else if (!parseDomainResourceContent(eventType, xpp, res)) 1692 unknownContent(xpp); 1693 eventType = nextNoWhitespace(xpp); 1694 } 1695 next(xpp); 1696 parseElementClose(res); 1697 return res; 1698 } 1699 1700 protected AllergyIntolerance parseAllergyIntolerance(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1701 AllergyIntolerance res = new AllergyIntolerance(); 1702 parseDomainResourceAttributes(xpp, res); 1703 next(xpp); 1704 int eventType = nextNoWhitespace(xpp); 1705 while (eventType != XmlPullParser.END_TAG) { 1706 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 1707 res.getIdentifier().add(parseIdentifier(xpp)); 1708 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 1709 res.setStatusElement(parseEnumeration(xpp, AllergyIntolerance.AllergyIntoleranceStatus.NULL, new AllergyIntolerance.AllergyIntoleranceStatusEnumFactory())); 1710 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1711 res.setTypeElement(parseEnumeration(xpp, AllergyIntolerance.AllergyIntoleranceType.NULL, new AllergyIntolerance.AllergyIntoleranceTypeEnumFactory())); 1712 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 1713 res.setCategoryElement(parseEnumeration(xpp, AllergyIntolerance.AllergyIntoleranceCategory.NULL, new AllergyIntolerance.AllergyIntoleranceCategoryEnumFactory())); 1714 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("criticality")) { 1715 res.setCriticalityElement(parseEnumeration(xpp, AllergyIntolerance.AllergyIntoleranceCriticality.NULL, new AllergyIntolerance.AllergyIntoleranceCriticalityEnumFactory())); 1716 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("substance")) { 1717 res.setSubstance(parseCodeableConcept(xpp)); 1718 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 1719 res.setPatient(parseReference(xpp)); 1720 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recordedDate")) { 1721 res.setRecordedDateElement(parseDateTime(xpp)); 1722 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recorder")) { 1723 res.setRecorder(parseReference(xpp)); 1724 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reporter")) { 1725 res.setReporter(parseReference(xpp)); 1726 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onset")) { 1727 res.setOnsetElement(parseDateTime(xpp)); 1728 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastOccurence")) { 1729 res.setLastOccurenceElement(parseDateTime(xpp)); 1730 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 1731 res.getNote().add(parseAnnotation(xpp)); 1732 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reaction")) { 1733 res.getReaction().add(parseAllergyIntoleranceAllergyIntoleranceReactionComponent(xpp, res)); 1734 } else if (!parseDomainResourceContent(eventType, xpp, res)) 1735 unknownContent(xpp); 1736 eventType = nextNoWhitespace(xpp); 1737 } 1738 next(xpp); 1739 parseElementClose(res); 1740 return res; 1741 } 1742 1743 protected AllergyIntolerance.AllergyIntoleranceReactionComponent parseAllergyIntoleranceAllergyIntoleranceReactionComponent(XmlPullParser xpp, AllergyIntolerance owner) throws XmlPullParserException, IOException, FHIRFormatError { 1744 AllergyIntolerance.AllergyIntoleranceReactionComponent res = new AllergyIntolerance.AllergyIntoleranceReactionComponent(); 1745 parseBackboneAttributes(xpp, res); 1746 next(xpp); 1747 int eventType = nextNoWhitespace(xpp); 1748 while (eventType != XmlPullParser.END_TAG) { 1749 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("substance")) { 1750 res.setSubstance(parseCodeableConcept(xpp)); 1751 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("certainty")) { 1752 res.setCertaintyElement(parseEnumeration(xpp, AllergyIntolerance.AllergyIntoleranceCertainty.NULL, new AllergyIntolerance.AllergyIntoleranceCertaintyEnumFactory())); 1753 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manifestation")) { 1754 res.getManifestation().add(parseCodeableConcept(xpp)); 1755 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 1756 res.setDescriptionElement(parseString(xpp)); 1757 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onset")) { 1758 res.setOnsetElement(parseDateTime(xpp)); 1759 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("severity")) { 1760 res.setSeverityElement(parseEnumeration(xpp, AllergyIntolerance.AllergyIntoleranceSeverity.NULL, new AllergyIntolerance.AllergyIntoleranceSeverityEnumFactory())); 1761 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exposureRoute")) { 1762 res.setExposureRoute(parseCodeableConcept(xpp)); 1763 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 1764 res.getNote().add(parseAnnotation(xpp)); 1765 } else if (!parseBackboneContent(eventType, xpp, res)) 1766 unknownContent(xpp); 1767 eventType = nextNoWhitespace(xpp); 1768 } 1769 next(xpp); 1770 parseElementClose(res); 1771 return res; 1772 } 1773 1774 protected Appointment parseAppointment(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1775 Appointment res = new Appointment(); 1776 parseDomainResourceAttributes(xpp, res); 1777 next(xpp); 1778 int eventType = nextNoWhitespace(xpp); 1779 while (eventType != XmlPullParser.END_TAG) { 1780 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 1781 res.getIdentifier().add(parseIdentifier(xpp)); 1782 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 1783 res.setStatusElement(parseEnumeration(xpp, Appointment.AppointmentStatus.NULL, new Appointment.AppointmentStatusEnumFactory())); 1784 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceCategory")) { 1785 res.setServiceCategory(parseCodeableConcept(xpp)); 1786 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceType")) { 1787 res.getServiceType().add(parseCodeableConcept(xpp)); 1788 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialty")) { 1789 res.getSpecialty().add(parseCodeableConcept(xpp)); 1790 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("appointmentType")) { 1791 res.setAppointmentType(parseCodeableConcept(xpp)); 1792 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 1793 res.setReason(parseCodeableConcept(xpp)); 1794 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 1795 res.setPriorityElement(parseUnsignedInt(xpp)); 1796 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 1797 res.setDescriptionElement(parseString(xpp)); 1798 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("start")) { 1799 res.setStartElement(parseInstant(xpp)); 1800 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("end")) { 1801 res.setEndElement(parseInstant(xpp)); 1802 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("minutesDuration")) { 1803 res.setMinutesDurationElement(parsePositiveInt(xpp)); 1804 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("slot")) { 1805 res.getSlot().add(parseReference(xpp)); 1806 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 1807 res.setCreatedElement(parseDateTime(xpp)); 1808 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 1809 res.setCommentElement(parseString(xpp)); 1810 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 1811 res.getParticipant().add(parseAppointmentAppointmentParticipantComponent(xpp, res)); 1812 } else if (!parseDomainResourceContent(eventType, xpp, res)) 1813 unknownContent(xpp); 1814 eventType = nextNoWhitespace(xpp); 1815 } 1816 next(xpp); 1817 parseElementClose(res); 1818 return res; 1819 } 1820 1821 protected Appointment.AppointmentParticipantComponent parseAppointmentAppointmentParticipantComponent(XmlPullParser xpp, Appointment owner) throws XmlPullParserException, IOException, FHIRFormatError { 1822 Appointment.AppointmentParticipantComponent res = new Appointment.AppointmentParticipantComponent(); 1823 parseBackboneAttributes(xpp, res); 1824 next(xpp); 1825 int eventType = nextNoWhitespace(xpp); 1826 while (eventType != XmlPullParser.END_TAG) { 1827 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1828 res.getType().add(parseCodeableConcept(xpp)); 1829 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 1830 res.setActor(parseReference(xpp)); 1831 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("required")) { 1832 res.setRequiredElement(parseEnumeration(xpp, Appointment.ParticipantRequired.NULL, new Appointment.ParticipantRequiredEnumFactory())); 1833 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 1834 res.setStatusElement(parseEnumeration(xpp, Appointment.ParticipationStatus.NULL, new Appointment.ParticipationStatusEnumFactory())); 1835 } else if (!parseBackboneContent(eventType, xpp, res)) 1836 unknownContent(xpp); 1837 eventType = nextNoWhitespace(xpp); 1838 } 1839 next(xpp); 1840 parseElementClose(res); 1841 return res; 1842 } 1843 1844 protected AppointmentResponse parseAppointmentResponse(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1845 AppointmentResponse res = new AppointmentResponse(); 1846 parseDomainResourceAttributes(xpp, res); 1847 next(xpp); 1848 int eventType = nextNoWhitespace(xpp); 1849 while (eventType != XmlPullParser.END_TAG) { 1850 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 1851 res.getIdentifier().add(parseIdentifier(xpp)); 1852 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("appointment")) { 1853 res.setAppointment(parseReference(xpp)); 1854 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("start")) { 1855 res.setStartElement(parseInstant(xpp)); 1856 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("end")) { 1857 res.setEndElement(parseInstant(xpp)); 1858 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participantType")) { 1859 res.getParticipantType().add(parseCodeableConcept(xpp)); 1860 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 1861 res.setActor(parseReference(xpp)); 1862 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participantStatus")) { 1863 res.setParticipantStatusElement(parseCode(xpp)); 1864 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 1865 res.setCommentElement(parseString(xpp)); 1866 } else if (!parseDomainResourceContent(eventType, xpp, res)) 1867 unknownContent(xpp); 1868 eventType = nextNoWhitespace(xpp); 1869 } 1870 next(xpp); 1871 parseElementClose(res); 1872 return res; 1873 } 1874 1875 protected AuditEvent parseAuditEvent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1876 AuditEvent res = new AuditEvent(); 1877 parseDomainResourceAttributes(xpp, res); 1878 next(xpp); 1879 int eventType = nextNoWhitespace(xpp); 1880 while (eventType != XmlPullParser.END_TAG) { 1881 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1882 res.setType(parseCoding(xpp)); 1883 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subtype")) { 1884 res.getSubtype().add(parseCoding(xpp)); 1885 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 1886 res.setActionElement(parseEnumeration(xpp, AuditEvent.AuditEventAction.NULL, new AuditEvent.AuditEventActionEnumFactory())); 1887 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recorded")) { 1888 res.setRecordedElement(parseInstant(xpp)); 1889 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 1890 res.setOutcomeElement(parseEnumeration(xpp, AuditEvent.AuditEventOutcome.NULL, new AuditEvent.AuditEventOutcomeEnumFactory())); 1891 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcomeDesc")) { 1892 res.setOutcomeDescElement(parseString(xpp)); 1893 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purposeOfEvent")) { 1894 res.getPurposeOfEvent().add(parseCoding(xpp)); 1895 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { 1896 res.getAgent().add(parseAuditEventAuditEventAgentComponent(xpp, res)); 1897 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 1898 res.setSource(parseAuditEventAuditEventSourceComponent(xpp, res)); 1899 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entity")) { 1900 res.getEntity().add(parseAuditEventAuditEventEntityComponent(xpp, res)); 1901 } else if (!parseDomainResourceContent(eventType, xpp, res)) 1902 unknownContent(xpp); 1903 eventType = nextNoWhitespace(xpp); 1904 } 1905 next(xpp); 1906 parseElementClose(res); 1907 return res; 1908 } 1909 1910 protected AuditEvent.AuditEventAgentComponent parseAuditEventAuditEventAgentComponent(XmlPullParser xpp, AuditEvent owner) throws XmlPullParserException, IOException, FHIRFormatError { 1911 AuditEvent.AuditEventAgentComponent res = new AuditEvent.AuditEventAgentComponent(); 1912 parseBackboneAttributes(xpp, res); 1913 next(xpp); 1914 int eventType = nextNoWhitespace(xpp); 1915 while (eventType != XmlPullParser.END_TAG) { 1916 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 1917 res.getRole().add(parseCodeableConcept(xpp)); 1918 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 1919 res.setReference(parseReference(xpp)); 1920 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("userId")) { 1921 res.setUserId(parseIdentifier(xpp)); 1922 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("altId")) { 1923 res.setAltIdElement(parseString(xpp)); 1924 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 1925 res.setNameElement(parseString(xpp)); 1926 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestor")) { 1927 res.setRequestorElement(parseBoolean(xpp)); 1928 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 1929 res.setLocation(parseReference(xpp)); 1930 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("policy")) { 1931 res.getPolicy().add(parseUri(xpp)); 1932 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("media")) { 1933 res.setMedia(parseCoding(xpp)); 1934 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("network")) { 1935 res.setNetwork(parseAuditEventAuditEventAgentNetworkComponent(xpp, owner)); 1936 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purposeOfUse")) { 1937 res.getPurposeOfUse().add(parseCoding(xpp)); 1938 } else if (!parseBackboneContent(eventType, xpp, res)) 1939 unknownContent(xpp); 1940 eventType = nextNoWhitespace(xpp); 1941 } 1942 next(xpp); 1943 parseElementClose(res); 1944 return res; 1945 } 1946 1947 protected AuditEvent.AuditEventAgentNetworkComponent parseAuditEventAuditEventAgentNetworkComponent(XmlPullParser xpp, AuditEvent owner) throws XmlPullParserException, IOException, FHIRFormatError { 1948 AuditEvent.AuditEventAgentNetworkComponent res = new AuditEvent.AuditEventAgentNetworkComponent(); 1949 parseBackboneAttributes(xpp, res); 1950 next(xpp); 1951 int eventType = nextNoWhitespace(xpp); 1952 while (eventType != XmlPullParser.END_TAG) { 1953 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 1954 res.setAddressElement(parseString(xpp)); 1955 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1956 res.setTypeElement(parseEnumeration(xpp, AuditEvent.AuditEventParticipantNetworkType.NULL, new AuditEvent.AuditEventParticipantNetworkTypeEnumFactory())); 1957 } else if (!parseBackboneContent(eventType, xpp, res)) 1958 unknownContent(xpp); 1959 eventType = nextNoWhitespace(xpp); 1960 } 1961 next(xpp); 1962 parseElementClose(res); 1963 return res; 1964 } 1965 1966 protected AuditEvent.AuditEventSourceComponent parseAuditEventAuditEventSourceComponent(XmlPullParser xpp, AuditEvent owner) throws XmlPullParserException, IOException, FHIRFormatError { 1967 AuditEvent.AuditEventSourceComponent res = new AuditEvent.AuditEventSourceComponent(); 1968 parseBackboneAttributes(xpp, res); 1969 next(xpp); 1970 int eventType = nextNoWhitespace(xpp); 1971 while (eventType != XmlPullParser.END_TAG) { 1972 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("site")) { 1973 res.setSiteElement(parseString(xpp)); 1974 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 1975 res.setIdentifier(parseIdentifier(xpp)); 1976 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1977 res.getType().add(parseCoding(xpp)); 1978 } else if (!parseBackboneContent(eventType, xpp, res)) 1979 unknownContent(xpp); 1980 eventType = nextNoWhitespace(xpp); 1981 } 1982 next(xpp); 1983 parseElementClose(res); 1984 return res; 1985 } 1986 1987 protected AuditEvent.AuditEventEntityComponent parseAuditEventAuditEventEntityComponent(XmlPullParser xpp, AuditEvent owner) throws XmlPullParserException, IOException, FHIRFormatError { 1988 AuditEvent.AuditEventEntityComponent res = new AuditEvent.AuditEventEntityComponent(); 1989 parseBackboneAttributes(xpp, res); 1990 next(xpp); 1991 int eventType = nextNoWhitespace(xpp); 1992 while (eventType != XmlPullParser.END_TAG) { 1993 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 1994 res.setIdentifier(parseIdentifier(xpp)); 1995 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 1996 res.setReference(parseReference(xpp)); 1997 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1998 res.setType(parseCoding(xpp)); 1999 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 2000 res.setRole(parseCoding(xpp)); 2001 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lifecycle")) { 2002 res.setLifecycle(parseCoding(xpp)); 2003 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("securityLabel")) { 2004 res.getSecurityLabel().add(parseCoding(xpp)); 2005 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 2006 res.setNameElement(parseString(xpp)); 2007 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 2008 res.setDescriptionElement(parseString(xpp)); 2009 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("query")) { 2010 res.setQueryElement(parseBase64Binary(xpp)); 2011 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 2012 res.getDetail().add(parseAuditEventAuditEventEntityDetailComponent(xpp, owner)); 2013 } else if (!parseBackboneContent(eventType, xpp, res)) 2014 unknownContent(xpp); 2015 eventType = nextNoWhitespace(xpp); 2016 } 2017 next(xpp); 2018 parseElementClose(res); 2019 return res; 2020 } 2021 2022 protected AuditEvent.AuditEventEntityDetailComponent parseAuditEventAuditEventEntityDetailComponent(XmlPullParser xpp, AuditEvent owner) throws XmlPullParserException, IOException, FHIRFormatError { 2023 AuditEvent.AuditEventEntityDetailComponent res = new AuditEvent.AuditEventEntityDetailComponent(); 2024 parseBackboneAttributes(xpp, res); 2025 next(xpp); 2026 int eventType = nextNoWhitespace(xpp); 2027 while (eventType != XmlPullParser.END_TAG) { 2028 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2029 res.setTypeElement(parseString(xpp)); 2030 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 2031 res.setValueElement(parseBase64Binary(xpp)); 2032 } else if (!parseBackboneContent(eventType, xpp, res)) 2033 unknownContent(xpp); 2034 eventType = nextNoWhitespace(xpp); 2035 } 2036 next(xpp); 2037 parseElementClose(res); 2038 return res; 2039 } 2040 2041 protected Basic parseBasic(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2042 Basic res = new Basic(); 2043 parseDomainResourceAttributes(xpp, res); 2044 next(xpp); 2045 int eventType = nextNoWhitespace(xpp); 2046 while (eventType != XmlPullParser.END_TAG) { 2047 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 2048 res.getIdentifier().add(parseIdentifier(xpp)); 2049 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 2050 res.setCode(parseCodeableConcept(xpp)); 2051 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 2052 res.setSubject(parseReference(xpp)); 2053 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 2054 res.setCreatedElement(parseDate(xpp)); 2055 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 2056 res.setAuthor(parseReference(xpp)); 2057 } else if (!parseDomainResourceContent(eventType, xpp, res)) 2058 unknownContent(xpp); 2059 eventType = nextNoWhitespace(xpp); 2060 } 2061 next(xpp); 2062 parseElementClose(res); 2063 return res; 2064 } 2065 2066 protected Binary parseBinary(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2067 Binary res = new Binary(); 2068 parseResourceAttributes(xpp, res); 2069 next(xpp); 2070 int eventType = nextNoWhitespace(xpp); 2071 while (eventType != XmlPullParser.END_TAG) { 2072 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentType")) { 2073 res.setContentTypeElement(parseCode(xpp)); 2074 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 2075 res.setContentElement(parseBase64Binary(xpp)); 2076 } else if (!parseResourceContent(eventType, xpp, res)) 2077 unknownContent(xpp); 2078 eventType = nextNoWhitespace(xpp); 2079 } 2080 next(xpp); 2081 parseElementClose(res); 2082 return res; 2083 } 2084 2085 protected BodySite parseBodySite(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2086 BodySite res = new BodySite(); 2087 parseDomainResourceAttributes(xpp, res); 2088 next(xpp); 2089 int eventType = nextNoWhitespace(xpp); 2090 while (eventType != XmlPullParser.END_TAG) { 2091 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 2092 res.setPatient(parseReference(xpp)); 2093 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 2094 res.getIdentifier().add(parseIdentifier(xpp)); 2095 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 2096 res.setCode(parseCodeableConcept(xpp)); 2097 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 2098 res.getModifier().add(parseCodeableConcept(xpp)); 2099 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 2100 res.setDescriptionElement(parseString(xpp)); 2101 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("image")) { 2102 res.getImage().add(parseAttachment(xpp)); 2103 } else if (!parseDomainResourceContent(eventType, xpp, res)) 2104 unknownContent(xpp); 2105 eventType = nextNoWhitespace(xpp); 2106 } 2107 next(xpp); 2108 parseElementClose(res); 2109 return res; 2110 } 2111 2112 protected Bundle parseBundle(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2113 Bundle res = new Bundle(); 2114 parseResourceAttributes(xpp, res); 2115 next(xpp); 2116 int eventType = nextNoWhitespace(xpp); 2117 while (eventType != XmlPullParser.END_TAG) { 2118 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2119 res.setTypeElement(parseEnumeration(xpp, Bundle.BundleType.NULL, new Bundle.BundleTypeEnumFactory())); 2120 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("total")) { 2121 res.setTotalElement(parseUnsignedInt(xpp)); 2122 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 2123 res.getLink().add(parseBundleBundleLinkComponent(xpp, res)); 2124 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entry")) { 2125 res.getEntry().add(parseBundleBundleEntryComponent(xpp, res)); 2126 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("signature")) { 2127 res.setSignature(parseSignature(xpp)); 2128 } else if (!parseResourceContent(eventType, xpp, res)) 2129 unknownContent(xpp); 2130 eventType = nextNoWhitespace(xpp); 2131 } 2132 next(xpp); 2133 parseElementClose(res); 2134 return res; 2135 } 2136 2137 protected Bundle.BundleLinkComponent parseBundleBundleLinkComponent(XmlPullParser xpp, Bundle owner) throws XmlPullParserException, IOException, FHIRFormatError { 2138 Bundle.BundleLinkComponent res = new Bundle.BundleLinkComponent(); 2139 parseBackboneAttributes(xpp, res); 2140 next(xpp); 2141 int eventType = nextNoWhitespace(xpp); 2142 while (eventType != XmlPullParser.END_TAG) { 2143 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relation")) { 2144 res.setRelationElement(parseString(xpp)); 2145 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 2146 res.setUrlElement(parseUri(xpp)); 2147 } else if (!parseBackboneContent(eventType, xpp, res)) 2148 unknownContent(xpp); 2149 eventType = nextNoWhitespace(xpp); 2150 } 2151 next(xpp); 2152 parseElementClose(res); 2153 return res; 2154 } 2155 2156 protected Bundle.BundleEntryComponent parseBundleBundleEntryComponent(XmlPullParser xpp, Bundle owner) throws XmlPullParserException, IOException, FHIRFormatError { 2157 Bundle.BundleEntryComponent res = new Bundle.BundleEntryComponent(); 2158 parseBackboneAttributes(xpp, res); 2159 next(xpp); 2160 int eventType = nextNoWhitespace(xpp); 2161 while (eventType != XmlPullParser.END_TAG) { 2162 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 2163 res.getLink().add(parseBundleBundleLinkComponent(xpp, owner)); 2164 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fullUrl")) { 2165 res.setFullUrlElement(parseUri(xpp)); 2166 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 2167 res.setResource(parseResourceContained(xpp)); 2168 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("search")) { 2169 res.setSearch(parseBundleBundleEntrySearchComponent(xpp, owner)); 2170 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 2171 res.setRequest(parseBundleBundleEntryRequestComponent(xpp, owner)); 2172 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("response")) { 2173 res.setResponse(parseBundleBundleEntryResponseComponent(xpp, owner)); 2174 } else if (!parseBackboneContent(eventType, xpp, res)) 2175 unknownContent(xpp); 2176 eventType = nextNoWhitespace(xpp); 2177 } 2178 next(xpp); 2179 parseElementClose(res); 2180 return res; 2181 } 2182 2183 protected Bundle.BundleEntrySearchComponent parseBundleBundleEntrySearchComponent(XmlPullParser xpp, Bundle owner) throws XmlPullParserException, IOException, FHIRFormatError { 2184 Bundle.BundleEntrySearchComponent res = new Bundle.BundleEntrySearchComponent(); 2185 parseBackboneAttributes(xpp, res); 2186 next(xpp); 2187 int eventType = nextNoWhitespace(xpp); 2188 while (eventType != XmlPullParser.END_TAG) { 2189 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 2190 res.setModeElement(parseEnumeration(xpp, Bundle.SearchEntryMode.NULL, new Bundle.SearchEntryModeEnumFactory())); 2191 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("score")) { 2192 res.setScoreElement(parseDecimal(xpp)); 2193 } else if (!parseBackboneContent(eventType, xpp, res)) 2194 unknownContent(xpp); 2195 eventType = nextNoWhitespace(xpp); 2196 } 2197 next(xpp); 2198 parseElementClose(res); 2199 return res; 2200 } 2201 2202 protected Bundle.BundleEntryRequestComponent parseBundleBundleEntryRequestComponent(XmlPullParser xpp, Bundle owner) throws XmlPullParserException, IOException, FHIRFormatError { 2203 Bundle.BundleEntryRequestComponent res = new Bundle.BundleEntryRequestComponent(); 2204 parseBackboneAttributes(xpp, res); 2205 next(xpp); 2206 int eventType = nextNoWhitespace(xpp); 2207 while (eventType != XmlPullParser.END_TAG) { 2208 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 2209 res.setMethodElement(parseEnumeration(xpp, Bundle.HTTPVerb.NULL, new Bundle.HTTPVerbEnumFactory())); 2210 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 2211 res.setUrlElement(parseUri(xpp)); 2212 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ifNoneMatch")) { 2213 res.setIfNoneMatchElement(parseString(xpp)); 2214 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ifModifiedSince")) { 2215 res.setIfModifiedSinceElement(parseInstant(xpp)); 2216 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ifMatch")) { 2217 res.setIfMatchElement(parseString(xpp)); 2218 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ifNoneExist")) { 2219 res.setIfNoneExistElement(parseString(xpp)); 2220 } else if (!parseBackboneContent(eventType, xpp, res)) 2221 unknownContent(xpp); 2222 eventType = nextNoWhitespace(xpp); 2223 } 2224 next(xpp); 2225 parseElementClose(res); 2226 return res; 2227 } 2228 2229 protected Bundle.BundleEntryResponseComponent parseBundleBundleEntryResponseComponent(XmlPullParser xpp, Bundle owner) throws XmlPullParserException, IOException, FHIRFormatError { 2230 Bundle.BundleEntryResponseComponent res = new Bundle.BundleEntryResponseComponent(); 2231 parseBackboneAttributes(xpp, res); 2232 next(xpp); 2233 int eventType = nextNoWhitespace(xpp); 2234 while (eventType != XmlPullParser.END_TAG) { 2235 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 2236 res.setStatusElement(parseString(xpp)); 2237 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 2238 res.setLocationElement(parseUri(xpp)); 2239 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("etag")) { 2240 res.setEtagElement(parseString(xpp)); 2241 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastModified")) { 2242 res.setLastModifiedElement(parseInstant(xpp)); 2243 } else if (!parseBackboneContent(eventType, xpp, res)) 2244 unknownContent(xpp); 2245 eventType = nextNoWhitespace(xpp); 2246 } 2247 next(xpp); 2248 parseElementClose(res); 2249 return res; 2250 } 2251 2252 protected CarePlan parseCarePlan(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2253 CarePlan res = new CarePlan(); 2254 parseDomainResourceAttributes(xpp, res); 2255 next(xpp); 2256 int eventType = nextNoWhitespace(xpp); 2257 while (eventType != XmlPullParser.END_TAG) { 2258 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 2259 res.getIdentifier().add(parseIdentifier(xpp)); 2260 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 2261 res.setSubject(parseReference(xpp)); 2262 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 2263 res.setStatusElement(parseEnumeration(xpp, CarePlan.CarePlanStatus.NULL, new CarePlan.CarePlanStatusEnumFactory())); 2264 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 2265 res.setContext(parseReference(xpp)); 2266 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 2267 res.setPeriod(parsePeriod(xpp)); 2268 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 2269 res.getAuthor().add(parseReference(xpp)); 2270 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modified")) { 2271 res.setModifiedElement(parseDateTime(xpp)); 2272 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 2273 res.getCategory().add(parseCodeableConcept(xpp)); 2274 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 2275 res.setDescriptionElement(parseString(xpp)); 2276 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("addresses")) { 2277 res.getAddresses().add(parseReference(xpp)); 2278 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("support")) { 2279 res.getSupport().add(parseReference(xpp)); 2280 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedPlan")) { 2281 res.getRelatedPlan().add(parseCarePlanCarePlanRelatedPlanComponent(xpp, res)); 2282 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 2283 res.getParticipant().add(parseCarePlanCarePlanParticipantComponent(xpp, res)); 2284 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("goal")) { 2285 res.getGoal().add(parseReference(xpp)); 2286 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("activity")) { 2287 res.getActivity().add(parseCarePlanCarePlanActivityComponent(xpp, res)); 2288 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 2289 res.setNote(parseAnnotation(xpp)); 2290 } else if (!parseDomainResourceContent(eventType, xpp, res)) 2291 unknownContent(xpp); 2292 eventType = nextNoWhitespace(xpp); 2293 } 2294 next(xpp); 2295 parseElementClose(res); 2296 return res; 2297 } 2298 2299 protected CarePlan.CarePlanRelatedPlanComponent parseCarePlanCarePlanRelatedPlanComponent(XmlPullParser xpp, CarePlan owner) throws XmlPullParserException, IOException, FHIRFormatError { 2300 CarePlan.CarePlanRelatedPlanComponent res = new CarePlan.CarePlanRelatedPlanComponent(); 2301 parseBackboneAttributes(xpp, res); 2302 next(xpp); 2303 int eventType = nextNoWhitespace(xpp); 2304 while (eventType != XmlPullParser.END_TAG) { 2305 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 2306 res.setCodeElement(parseEnumeration(xpp, CarePlan.CarePlanRelationship.NULL, new CarePlan.CarePlanRelationshipEnumFactory())); 2307 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("plan")) { 2308 res.setPlan(parseReference(xpp)); 2309 } else if (!parseBackboneContent(eventType, xpp, res)) 2310 unknownContent(xpp); 2311 eventType = nextNoWhitespace(xpp); 2312 } 2313 next(xpp); 2314 parseElementClose(res); 2315 return res; 2316 } 2317 2318 protected CarePlan.CarePlanParticipantComponent parseCarePlanCarePlanParticipantComponent(XmlPullParser xpp, CarePlan owner) throws XmlPullParserException, IOException, FHIRFormatError { 2319 CarePlan.CarePlanParticipantComponent res = new CarePlan.CarePlanParticipantComponent(); 2320 parseBackboneAttributes(xpp, res); 2321 next(xpp); 2322 int eventType = nextNoWhitespace(xpp); 2323 while (eventType != XmlPullParser.END_TAG) { 2324 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 2325 res.setRole(parseCodeableConcept(xpp)); 2326 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("member")) { 2327 res.setMember(parseReference(xpp)); 2328 } else if (!parseBackboneContent(eventType, xpp, res)) 2329 unknownContent(xpp); 2330 eventType = nextNoWhitespace(xpp); 2331 } 2332 next(xpp); 2333 parseElementClose(res); 2334 return res; 2335 } 2336 2337 protected CarePlan.CarePlanActivityComponent parseCarePlanCarePlanActivityComponent(XmlPullParser xpp, CarePlan owner) throws XmlPullParserException, IOException, FHIRFormatError { 2338 CarePlan.CarePlanActivityComponent res = new CarePlan.CarePlanActivityComponent(); 2339 parseBackboneAttributes(xpp, res); 2340 next(xpp); 2341 int eventType = nextNoWhitespace(xpp); 2342 while (eventType != XmlPullParser.END_TAG) { 2343 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actionResulting")) { 2344 res.getActionResulting().add(parseReference(xpp)); 2345 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("progress")) { 2346 res.getProgress().add(parseAnnotation(xpp)); 2347 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 2348 res.setReference(parseReference(xpp)); 2349 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 2350 res.setDetail(parseCarePlanCarePlanActivityDetailComponent(xpp, owner)); 2351 } else if (!parseBackboneContent(eventType, xpp, res)) 2352 unknownContent(xpp); 2353 eventType = nextNoWhitespace(xpp); 2354 } 2355 next(xpp); 2356 parseElementClose(res); 2357 return res; 2358 } 2359 2360 protected CarePlan.CarePlanActivityDetailComponent parseCarePlanCarePlanActivityDetailComponent(XmlPullParser xpp, CarePlan owner) throws XmlPullParserException, IOException, FHIRFormatError { 2361 CarePlan.CarePlanActivityDetailComponent res = new CarePlan.CarePlanActivityDetailComponent(); 2362 parseBackboneAttributes(xpp, res); 2363 next(xpp); 2364 int eventType = nextNoWhitespace(xpp); 2365 while (eventType != XmlPullParser.END_TAG) { 2366 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 2367 res.setCategory(parseCodeableConcept(xpp)); 2368 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 2369 res.setCode(parseCodeableConcept(xpp)); 2370 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonCode")) { 2371 res.getReasonCode().add(parseCodeableConcept(xpp)); 2372 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonReference")) { 2373 res.getReasonReference().add(parseReference(xpp)); 2374 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("goal")) { 2375 res.getGoal().add(parseReference(xpp)); 2376 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 2377 res.setStatusElement(parseEnumeration(xpp, CarePlan.CarePlanActivityStatus.NULL, new CarePlan.CarePlanActivityStatusEnumFactory())); 2378 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusReason")) { 2379 res.setStatusReason(parseCodeableConcept(xpp)); 2380 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prohibited")) { 2381 res.setProhibitedElement(parseBoolean(xpp)); 2382 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "scheduled")) { 2383 res.setScheduled(parseType("scheduled", xpp)); 2384 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 2385 res.setLocation(parseReference(xpp)); 2386 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 2387 res.getPerformer().add(parseReference(xpp)); 2388 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "product")) { 2389 res.setProduct(parseType("product", xpp)); 2390 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dailyAmount")) { 2391 res.setDailyAmount(parseSimpleQuantity(xpp)); 2392 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 2393 res.setQuantity(parseSimpleQuantity(xpp)); 2394 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 2395 res.setDescriptionElement(parseString(xpp)); 2396 } else if (!parseBackboneContent(eventType, xpp, res)) 2397 unknownContent(xpp); 2398 eventType = nextNoWhitespace(xpp); 2399 } 2400 next(xpp); 2401 parseElementClose(res); 2402 return res; 2403 } 2404 2405 protected CareTeam parseCareTeam(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2406 CareTeam res = new CareTeam(); 2407 parseDomainResourceAttributes(xpp, res); 2408 next(xpp); 2409 int eventType = nextNoWhitespace(xpp); 2410 while (eventType != XmlPullParser.END_TAG) { 2411 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 2412 res.getIdentifier().add(parseIdentifier(xpp)); 2413 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 2414 res.setStatus(parseCodeableConcept(xpp)); 2415 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2416 res.getType().add(parseCodeableConcept(xpp)); 2417 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 2418 res.setNameElement(parseString(xpp)); 2419 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 2420 res.setSubject(parseReference(xpp)); 2421 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 2422 res.setPeriod(parsePeriod(xpp)); 2423 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 2424 res.getParticipant().add(parseCareTeamCareTeamParticipantComponent(xpp, res)); 2425 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("managingOrganization")) { 2426 res.setManagingOrganization(parseReference(xpp)); 2427 } else if (!parseDomainResourceContent(eventType, xpp, res)) 2428 unknownContent(xpp); 2429 eventType = nextNoWhitespace(xpp); 2430 } 2431 next(xpp); 2432 parseElementClose(res); 2433 return res; 2434 } 2435 2436 protected CareTeam.CareTeamParticipantComponent parseCareTeamCareTeamParticipantComponent(XmlPullParser xpp, CareTeam owner) throws XmlPullParserException, IOException, FHIRFormatError { 2437 CareTeam.CareTeamParticipantComponent res = new CareTeam.CareTeamParticipantComponent(); 2438 parseBackboneAttributes(xpp, res); 2439 next(xpp); 2440 int eventType = nextNoWhitespace(xpp); 2441 while (eventType != XmlPullParser.END_TAG) { 2442 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 2443 res.setRole(parseCodeableConcept(xpp)); 2444 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("member")) { 2445 res.setMember(parseReference(xpp)); 2446 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 2447 res.setPeriod(parsePeriod(xpp)); 2448 } else if (!parseBackboneContent(eventType, xpp, res)) 2449 unknownContent(xpp); 2450 eventType = nextNoWhitespace(xpp); 2451 } 2452 next(xpp); 2453 parseElementClose(res); 2454 return res; 2455 } 2456 2457 protected Claim parseClaim(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2458 Claim res = new Claim(); 2459 parseDomainResourceAttributes(xpp, res); 2460 next(xpp); 2461 int eventType = nextNoWhitespace(xpp); 2462 while (eventType != XmlPullParser.END_TAG) { 2463 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2464 res.setTypeElement(parseEnumeration(xpp, Claim.ClaimType.NULL, new Claim.ClaimTypeEnumFactory())); 2465 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subType")) { 2466 res.getSubType().add(parseCoding(xpp)); 2467 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 2468 res.getIdentifier().add(parseIdentifier(xpp)); 2469 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleset")) { 2470 res.setRuleset(parseCoding(xpp)); 2471 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("originalRuleset")) { 2472 res.setOriginalRuleset(parseCoding(xpp)); 2473 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 2474 res.setCreatedElement(parseDateTime(xpp)); 2475 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("billablePeriod")) { 2476 res.setBillablePeriod(parsePeriod(xpp)); 2477 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "target")) { 2478 res.setTarget(parseType("target", xpp)); 2479 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "provider")) { 2480 res.setProvider(parseType("provider", xpp)); 2481 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "organization")) { 2482 res.setOrganization(parseType("organization", xpp)); 2483 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 2484 res.setUseElement(parseEnumeration(xpp, Claim.Use.NULL, new Claim.UseEnumFactory())); 2485 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 2486 res.setPriority(parseCoding(xpp)); 2487 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fundsReserve")) { 2488 res.setFundsReserve(parseCoding(xpp)); 2489 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "enterer")) { 2490 res.setEnterer(parseType("enterer", xpp)); 2491 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "facility")) { 2492 res.setFacility(parseType("facility", xpp)); 2493 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("related")) { 2494 res.getRelated().add(parseClaimRelatedClaimsComponent(xpp, res)); 2495 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "prescription")) { 2496 res.setPrescription(parseType("prescription", xpp)); 2497 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "originalPrescription")) { 2498 res.setOriginalPrescription(parseType("originalPrescription", xpp)); 2499 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payee")) { 2500 res.setPayee(parseClaimPayeeComponent(xpp, res)); 2501 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "referral")) { 2502 res.setReferral(parseType("referral", xpp)); 2503 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("occurrenceCode")) { 2504 res.getOccurrenceCode().add(parseCoding(xpp)); 2505 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("occurenceSpanCode")) { 2506 res.getOccurenceSpanCode().add(parseCoding(xpp)); 2507 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valueCode")) { 2508 res.getValueCode().add(parseCoding(xpp)); 2509 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnosis")) { 2510 res.getDiagnosis().add(parseClaimDiagnosisComponent(xpp, res)); 2511 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("procedure")) { 2512 res.getProcedure().add(parseClaimProcedureComponent(xpp, res)); 2513 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialCondition")) { 2514 res.getSpecialCondition().add(parseCoding(xpp)); 2515 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "patient")) { 2516 res.setPatient(parseType("patient", xpp)); 2517 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverage")) { 2518 res.getCoverage().add(parseClaimCoverageComponent(xpp, res)); 2519 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("accidentDate")) { 2520 res.setAccidentDateElement(parseDate(xpp)); 2521 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("accidentType")) { 2522 res.setAccidentType(parseCoding(xpp)); 2523 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "accidentLocation")) { 2524 res.setAccidentLocation(parseType("accidentLocation", xpp)); 2525 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("interventionException")) { 2526 res.getInterventionException().add(parseCoding(xpp)); 2527 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onset")) { 2528 res.getOnset().add(parseClaimOnsetComponent(xpp, res)); 2529 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("employmentImpacted")) { 2530 res.setEmploymentImpacted(parsePeriod(xpp)); 2531 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("hospitalization")) { 2532 res.setHospitalization(parsePeriod(xpp)); 2533 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 2534 res.getItem().add(parseClaimItemsComponent(xpp, res)); 2535 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("total")) { 2536 res.setTotal(parseMoney(xpp)); 2537 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("additionalMaterial")) { 2538 res.getAdditionalMaterial().add(parseCoding(xpp)); 2539 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("missingTeeth")) { 2540 res.getMissingTeeth().add(parseClaimMissingTeethComponent(xpp, res)); 2541 } else if (!parseDomainResourceContent(eventType, xpp, res)) 2542 unknownContent(xpp); 2543 eventType = nextNoWhitespace(xpp); 2544 } 2545 next(xpp); 2546 parseElementClose(res); 2547 return res; 2548 } 2549 2550 protected Claim.RelatedClaimsComponent parseClaimRelatedClaimsComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 2551 Claim.RelatedClaimsComponent res = new Claim.RelatedClaimsComponent(); 2552 parseBackboneAttributes(xpp, res); 2553 next(xpp); 2554 int eventType = nextNoWhitespace(xpp); 2555 while (eventType != XmlPullParser.END_TAG) { 2556 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "claim")) { 2557 res.setClaim(parseType("claim", xpp)); 2558 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 2559 res.setRelationship(parseCoding(xpp)); 2560 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 2561 res.setReference(parseIdentifier(xpp)); 2562 } else if (!parseBackboneContent(eventType, xpp, res)) 2563 unknownContent(xpp); 2564 eventType = nextNoWhitespace(xpp); 2565 } 2566 next(xpp); 2567 parseElementClose(res); 2568 return res; 2569 } 2570 2571 protected Claim.PayeeComponent parseClaimPayeeComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 2572 Claim.PayeeComponent res = new Claim.PayeeComponent(); 2573 parseBackboneAttributes(xpp, res); 2574 next(xpp); 2575 int eventType = nextNoWhitespace(xpp); 2576 while (eventType != XmlPullParser.END_TAG) { 2577 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2578 res.setType(parseCoding(xpp)); 2579 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "party")) { 2580 res.setParty(parseType("party", xpp)); 2581 } else if (!parseBackboneContent(eventType, xpp, res)) 2582 unknownContent(xpp); 2583 eventType = nextNoWhitespace(xpp); 2584 } 2585 next(xpp); 2586 parseElementClose(res); 2587 return res; 2588 } 2589 2590 protected Claim.DiagnosisComponent parseClaimDiagnosisComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 2591 Claim.DiagnosisComponent res = new Claim.DiagnosisComponent(); 2592 parseBackboneAttributes(xpp, res); 2593 next(xpp); 2594 int eventType = nextNoWhitespace(xpp); 2595 while (eventType != XmlPullParser.END_TAG) { 2596 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 2597 res.setSequenceElement(parsePositiveInt(xpp)); 2598 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnosis")) { 2599 res.setDiagnosis(parseCoding(xpp)); 2600 } else if (!parseBackboneContent(eventType, xpp, res)) 2601 unknownContent(xpp); 2602 eventType = nextNoWhitespace(xpp); 2603 } 2604 next(xpp); 2605 parseElementClose(res); 2606 return res; 2607 } 2608 2609 protected Claim.ProcedureComponent parseClaimProcedureComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 2610 Claim.ProcedureComponent res = new Claim.ProcedureComponent(); 2611 parseBackboneAttributes(xpp, res); 2612 next(xpp); 2613 int eventType = nextNoWhitespace(xpp); 2614 while (eventType != XmlPullParser.END_TAG) { 2615 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 2616 res.setSequenceElement(parsePositiveInt(xpp)); 2617 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 2618 res.setDateElement(parseDateTime(xpp)); 2619 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "procedure")) { 2620 res.setProcedure(parseType("procedure", xpp)); 2621 } else if (!parseBackboneContent(eventType, xpp, res)) 2622 unknownContent(xpp); 2623 eventType = nextNoWhitespace(xpp); 2624 } 2625 next(xpp); 2626 parseElementClose(res); 2627 return res; 2628 } 2629 2630 protected Claim.CoverageComponent parseClaimCoverageComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 2631 Claim.CoverageComponent res = new Claim.CoverageComponent(); 2632 parseBackboneAttributes(xpp, res); 2633 next(xpp); 2634 int eventType = nextNoWhitespace(xpp); 2635 while (eventType != XmlPullParser.END_TAG) { 2636 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 2637 res.setSequenceElement(parsePositiveInt(xpp)); 2638 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focal")) { 2639 res.setFocalElement(parseBoolean(xpp)); 2640 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "coverage")) { 2641 res.setCoverage(parseType("coverage", xpp)); 2642 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("businessArrangement")) { 2643 res.setBusinessArrangementElement(parseString(xpp)); 2644 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preAuthRef")) { 2645 res.getPreAuthRef().add(parseString(xpp)); 2646 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("claimResponse")) { 2647 res.setClaimResponse(parseReference(xpp)); 2648 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("originalRuleset")) { 2649 res.setOriginalRuleset(parseCoding(xpp)); 2650 } else if (!parseBackboneContent(eventType, xpp, res)) 2651 unknownContent(xpp); 2652 eventType = nextNoWhitespace(xpp); 2653 } 2654 next(xpp); 2655 parseElementClose(res); 2656 return res; 2657 } 2658 2659 protected Claim.OnsetComponent parseClaimOnsetComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 2660 Claim.OnsetComponent res = new Claim.OnsetComponent(); 2661 parseBackboneAttributes(xpp, res); 2662 next(xpp); 2663 int eventType = nextNoWhitespace(xpp); 2664 while (eventType != XmlPullParser.END_TAG) { 2665 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "time")) { 2666 res.setTime(parseType("time", xpp)); 2667 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2668 res.setType(parseCoding(xpp)); 2669 } else if (!parseBackboneContent(eventType, xpp, res)) 2670 unknownContent(xpp); 2671 eventType = nextNoWhitespace(xpp); 2672 } 2673 next(xpp); 2674 parseElementClose(res); 2675 return res; 2676 } 2677 2678 protected Claim.ItemsComponent parseClaimItemsComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 2679 Claim.ItemsComponent res = new Claim.ItemsComponent(); 2680 parseBackboneAttributes(xpp, res); 2681 next(xpp); 2682 int eventType = nextNoWhitespace(xpp); 2683 while (eventType != XmlPullParser.END_TAG) { 2684 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 2685 res.setSequenceElement(parsePositiveInt(xpp)); 2686 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2687 res.setType(parseCoding(xpp)); 2688 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "provider")) { 2689 res.setProvider(parseType("provider", xpp)); 2690 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "supervisor")) { 2691 res.setSupervisor(parseType("supervisor", xpp)); 2692 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("providerQualification")) { 2693 res.setProviderQualification(parseCoding(xpp)); 2694 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnosisLinkId")) { 2695 res.getDiagnosisLinkId().add(parsePositiveInt(xpp)); 2696 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 2697 res.setService(parseCoding(xpp)); 2698 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceModifier")) { 2699 res.getServiceModifier().add(parseCoding(xpp)); 2700 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 2701 res.getModifier().add(parseCoding(xpp)); 2702 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("programCode")) { 2703 res.getProgramCode().add(parseCoding(xpp)); 2704 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "serviced")) { 2705 res.setServiced(parseType("serviced", xpp)); 2706 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("place")) { 2707 res.setPlace(parseCoding(xpp)); 2708 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 2709 res.setQuantity(parseSimpleQuantity(xpp)); 2710 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 2711 res.setUnitPrice(parseMoney(xpp)); 2712 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 2713 res.setFactorElement(parseDecimal(xpp)); 2714 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("points")) { 2715 res.setPointsElement(parseDecimal(xpp)); 2716 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 2717 res.setNet(parseMoney(xpp)); 2718 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udi")) { 2719 res.getUdi().add(parseReference(xpp)); 2720 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 2721 res.setBodySite(parseCoding(xpp)); 2722 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subSite")) { 2723 res.getSubSite().add(parseCoding(xpp)); 2724 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 2725 res.getDetail().add(parseClaimDetailComponent(xpp, owner)); 2726 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prosthesis")) { 2727 res.setProsthesis(parseClaimProsthesisComponent(xpp, owner)); 2728 } else if (!parseBackboneContent(eventType, xpp, res)) 2729 unknownContent(xpp); 2730 eventType = nextNoWhitespace(xpp); 2731 } 2732 next(xpp); 2733 parseElementClose(res); 2734 return res; 2735 } 2736 2737 protected Claim.DetailComponent parseClaimDetailComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 2738 Claim.DetailComponent res = new Claim.DetailComponent(); 2739 parseBackboneAttributes(xpp, res); 2740 next(xpp); 2741 int eventType = nextNoWhitespace(xpp); 2742 while (eventType != XmlPullParser.END_TAG) { 2743 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 2744 res.setSequenceElement(parsePositiveInt(xpp)); 2745 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2746 res.setType(parseCoding(xpp)); 2747 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 2748 res.setService(parseCoding(xpp)); 2749 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("programCode")) { 2750 res.getProgramCode().add(parseCoding(xpp)); 2751 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 2752 res.setQuantity(parseSimpleQuantity(xpp)); 2753 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 2754 res.setUnitPrice(parseMoney(xpp)); 2755 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 2756 res.setFactorElement(parseDecimal(xpp)); 2757 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("points")) { 2758 res.setPointsElement(parseDecimal(xpp)); 2759 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 2760 res.setNet(parseMoney(xpp)); 2761 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udi")) { 2762 res.getUdi().add(parseReference(xpp)); 2763 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subDetail")) { 2764 res.getSubDetail().add(parseClaimSubDetailComponent(xpp, owner)); 2765 } else if (!parseBackboneContent(eventType, xpp, res)) 2766 unknownContent(xpp); 2767 eventType = nextNoWhitespace(xpp); 2768 } 2769 next(xpp); 2770 parseElementClose(res); 2771 return res; 2772 } 2773 2774 protected Claim.SubDetailComponent parseClaimSubDetailComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 2775 Claim.SubDetailComponent res = new Claim.SubDetailComponent(); 2776 parseBackboneAttributes(xpp, res); 2777 next(xpp); 2778 int eventType = nextNoWhitespace(xpp); 2779 while (eventType != XmlPullParser.END_TAG) { 2780 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 2781 res.setSequenceElement(parsePositiveInt(xpp)); 2782 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2783 res.setType(parseCoding(xpp)); 2784 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 2785 res.setService(parseCoding(xpp)); 2786 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("programCode")) { 2787 res.getProgramCode().add(parseCoding(xpp)); 2788 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 2789 res.setQuantity(parseSimpleQuantity(xpp)); 2790 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 2791 res.setUnitPrice(parseMoney(xpp)); 2792 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 2793 res.setFactorElement(parseDecimal(xpp)); 2794 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("points")) { 2795 res.setPointsElement(parseDecimal(xpp)); 2796 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 2797 res.setNet(parseMoney(xpp)); 2798 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udi")) { 2799 res.getUdi().add(parseReference(xpp)); 2800 } else if (!parseBackboneContent(eventType, xpp, res)) 2801 unknownContent(xpp); 2802 eventType = nextNoWhitespace(xpp); 2803 } 2804 next(xpp); 2805 parseElementClose(res); 2806 return res; 2807 } 2808 2809 protected Claim.ProsthesisComponent parseClaimProsthesisComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 2810 Claim.ProsthesisComponent res = new Claim.ProsthesisComponent(); 2811 parseBackboneAttributes(xpp, res); 2812 next(xpp); 2813 int eventType = nextNoWhitespace(xpp); 2814 while (eventType != XmlPullParser.END_TAG) { 2815 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("initial")) { 2816 res.setInitialElement(parseBoolean(xpp)); 2817 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priorDate")) { 2818 res.setPriorDateElement(parseDate(xpp)); 2819 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priorMaterial")) { 2820 res.setPriorMaterial(parseCoding(xpp)); 2821 } else if (!parseBackboneContent(eventType, xpp, res)) 2822 unknownContent(xpp); 2823 eventType = nextNoWhitespace(xpp); 2824 } 2825 next(xpp); 2826 parseElementClose(res); 2827 return res; 2828 } 2829 2830 protected Claim.MissingTeethComponent parseClaimMissingTeethComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 2831 Claim.MissingTeethComponent res = new Claim.MissingTeethComponent(); 2832 parseBackboneAttributes(xpp, res); 2833 next(xpp); 2834 int eventType = nextNoWhitespace(xpp); 2835 while (eventType != XmlPullParser.END_TAG) { 2836 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("tooth")) { 2837 res.setTooth(parseCoding(xpp)); 2838 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 2839 res.setReason(parseCoding(xpp)); 2840 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("extractionDate")) { 2841 res.setExtractionDateElement(parseDate(xpp)); 2842 } else if (!parseBackboneContent(eventType, xpp, res)) 2843 unknownContent(xpp); 2844 eventType = nextNoWhitespace(xpp); 2845 } 2846 next(xpp); 2847 parseElementClose(res); 2848 return res; 2849 } 2850 2851 protected ClaimResponse parseClaimResponse(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2852 ClaimResponse res = new ClaimResponse(); 2853 parseDomainResourceAttributes(xpp, res); 2854 next(xpp); 2855 int eventType = nextNoWhitespace(xpp); 2856 while (eventType != XmlPullParser.END_TAG) { 2857 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 2858 res.getIdentifier().add(parseIdentifier(xpp)); 2859 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "request")) { 2860 res.setRequest(parseType("request", xpp)); 2861 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleset")) { 2862 res.setRuleset(parseCoding(xpp)); 2863 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("originalRuleset")) { 2864 res.setOriginalRuleset(parseCoding(xpp)); 2865 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 2866 res.setCreatedElement(parseDateTime(xpp)); 2867 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "organization")) { 2868 res.setOrganization(parseType("organization", xpp)); 2869 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "requestProvider")) { 2870 res.setRequestProvider(parseType("requestProvider", xpp)); 2871 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "requestOrganization")) { 2872 res.setRequestOrganization(parseType("requestOrganization", xpp)); 2873 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 2874 res.setOutcomeElement(parseEnumeration(xpp, Enumerations.RemittanceOutcome.NULL, new Enumerations.RemittanceOutcomeEnumFactory())); 2875 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disposition")) { 2876 res.setDispositionElement(parseString(xpp)); 2877 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payeeType")) { 2878 res.setPayeeType(parseCoding(xpp)); 2879 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 2880 res.getItem().add(parseClaimResponseItemsComponent(xpp, res)); 2881 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("addItem")) { 2882 res.getAddItem().add(parseClaimResponseAddedItemComponent(xpp, res)); 2883 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("error")) { 2884 res.getError().add(parseClaimResponseErrorsComponent(xpp, res)); 2885 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("totalCost")) { 2886 res.setTotalCost(parseMoney(xpp)); 2887 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unallocDeductable")) { 2888 res.setUnallocDeductable(parseMoney(xpp)); 2889 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("totalBenefit")) { 2890 res.setTotalBenefit(parseMoney(xpp)); 2891 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("paymentAdjustment")) { 2892 res.setPaymentAdjustment(parseMoney(xpp)); 2893 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("paymentAdjustmentReason")) { 2894 res.setPaymentAdjustmentReason(parseCoding(xpp)); 2895 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("paymentDate")) { 2896 res.setPaymentDateElement(parseDate(xpp)); 2897 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("paymentAmount")) { 2898 res.setPaymentAmount(parseMoney(xpp)); 2899 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("paymentRef")) { 2900 res.setPaymentRef(parseIdentifier(xpp)); 2901 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reserved")) { 2902 res.setReserved(parseCoding(xpp)); 2903 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("form")) { 2904 res.setForm(parseCoding(xpp)); 2905 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 2906 res.getNote().add(parseClaimResponseNotesComponent(xpp, res)); 2907 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverage")) { 2908 res.getCoverage().add(parseClaimResponseCoverageComponent(xpp, res)); 2909 } else if (!parseDomainResourceContent(eventType, xpp, res)) 2910 unknownContent(xpp); 2911 eventType = nextNoWhitespace(xpp); 2912 } 2913 next(xpp); 2914 parseElementClose(res); 2915 return res; 2916 } 2917 2918 protected ClaimResponse.ItemsComponent parseClaimResponseItemsComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 2919 ClaimResponse.ItemsComponent res = new ClaimResponse.ItemsComponent(); 2920 parseBackboneAttributes(xpp, res); 2921 next(xpp); 2922 int eventType = nextNoWhitespace(xpp); 2923 while (eventType != XmlPullParser.END_TAG) { 2924 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequenceLinkId")) { 2925 res.setSequenceLinkIdElement(parsePositiveInt(xpp)); 2926 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumber")) { 2927 res.getNoteNumber().add(parsePositiveInt(xpp)); 2928 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 2929 res.getAdjudication().add(parseClaimResponseItemAdjudicationComponent(xpp, owner)); 2930 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 2931 res.getDetail().add(parseClaimResponseItemDetailComponent(xpp, owner)); 2932 } else if (!parseBackboneContent(eventType, xpp, res)) 2933 unknownContent(xpp); 2934 eventType = nextNoWhitespace(xpp); 2935 } 2936 next(xpp); 2937 parseElementClose(res); 2938 return res; 2939 } 2940 2941 protected ClaimResponse.ItemAdjudicationComponent parseClaimResponseItemAdjudicationComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 2942 ClaimResponse.ItemAdjudicationComponent res = new ClaimResponse.ItemAdjudicationComponent(); 2943 parseBackboneAttributes(xpp, res); 2944 next(xpp); 2945 int eventType = nextNoWhitespace(xpp); 2946 while (eventType != XmlPullParser.END_TAG) { 2947 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 2948 res.setCategory(parseCoding(xpp)); 2949 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 2950 res.setReason(parseCoding(xpp)); 2951 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 2952 res.setAmount(parseMoney(xpp)); 2953 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 2954 res.setValueElement(parseDecimal(xpp)); 2955 } else if (!parseBackboneContent(eventType, xpp, res)) 2956 unknownContent(xpp); 2957 eventType = nextNoWhitespace(xpp); 2958 } 2959 next(xpp); 2960 parseElementClose(res); 2961 return res; 2962 } 2963 2964 protected ClaimResponse.ItemDetailComponent parseClaimResponseItemDetailComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 2965 ClaimResponse.ItemDetailComponent res = new ClaimResponse.ItemDetailComponent(); 2966 parseBackboneAttributes(xpp, res); 2967 next(xpp); 2968 int eventType = nextNoWhitespace(xpp); 2969 while (eventType != XmlPullParser.END_TAG) { 2970 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequenceLinkId")) { 2971 res.setSequenceLinkIdElement(parsePositiveInt(xpp)); 2972 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 2973 res.getAdjudication().add(parseClaimResponseDetailAdjudicationComponent(xpp, owner)); 2974 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subDetail")) { 2975 res.getSubDetail().add(parseClaimResponseSubDetailComponent(xpp, owner)); 2976 } else if (!parseBackboneContent(eventType, xpp, res)) 2977 unknownContent(xpp); 2978 eventType = nextNoWhitespace(xpp); 2979 } 2980 next(xpp); 2981 parseElementClose(res); 2982 return res; 2983 } 2984 2985 protected ClaimResponse.DetailAdjudicationComponent parseClaimResponseDetailAdjudicationComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 2986 ClaimResponse.DetailAdjudicationComponent res = new ClaimResponse.DetailAdjudicationComponent(); 2987 parseBackboneAttributes(xpp, res); 2988 next(xpp); 2989 int eventType = nextNoWhitespace(xpp); 2990 while (eventType != XmlPullParser.END_TAG) { 2991 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 2992 res.setCategory(parseCoding(xpp)); 2993 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 2994 res.setReason(parseCoding(xpp)); 2995 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 2996 res.setAmount(parseMoney(xpp)); 2997 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 2998 res.setValueElement(parseDecimal(xpp)); 2999 } else if (!parseBackboneContent(eventType, xpp, res)) 3000 unknownContent(xpp); 3001 eventType = nextNoWhitespace(xpp); 3002 } 3003 next(xpp); 3004 parseElementClose(res); 3005 return res; 3006 } 3007 3008 protected ClaimResponse.SubDetailComponent parseClaimResponseSubDetailComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 3009 ClaimResponse.SubDetailComponent res = new ClaimResponse.SubDetailComponent(); 3010 parseBackboneAttributes(xpp, res); 3011 next(xpp); 3012 int eventType = nextNoWhitespace(xpp); 3013 while (eventType != XmlPullParser.END_TAG) { 3014 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequenceLinkId")) { 3015 res.setSequenceLinkIdElement(parsePositiveInt(xpp)); 3016 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 3017 res.getAdjudication().add(parseClaimResponseSubdetailAdjudicationComponent(xpp, owner)); 3018 } else if (!parseBackboneContent(eventType, xpp, res)) 3019 unknownContent(xpp); 3020 eventType = nextNoWhitespace(xpp); 3021 } 3022 next(xpp); 3023 parseElementClose(res); 3024 return res; 3025 } 3026 3027 protected ClaimResponse.SubdetailAdjudicationComponent parseClaimResponseSubdetailAdjudicationComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 3028 ClaimResponse.SubdetailAdjudicationComponent res = new ClaimResponse.SubdetailAdjudicationComponent(); 3029 parseBackboneAttributes(xpp, res); 3030 next(xpp); 3031 int eventType = nextNoWhitespace(xpp); 3032 while (eventType != XmlPullParser.END_TAG) { 3033 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 3034 res.setCategory(parseCoding(xpp)); 3035 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 3036 res.setReason(parseCoding(xpp)); 3037 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 3038 res.setAmount(parseMoney(xpp)); 3039 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 3040 res.setValueElement(parseDecimal(xpp)); 3041 } else if (!parseBackboneContent(eventType, xpp, res)) 3042 unknownContent(xpp); 3043 eventType = nextNoWhitespace(xpp); 3044 } 3045 next(xpp); 3046 parseElementClose(res); 3047 return res; 3048 } 3049 3050 protected ClaimResponse.AddedItemComponent parseClaimResponseAddedItemComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 3051 ClaimResponse.AddedItemComponent res = new ClaimResponse.AddedItemComponent(); 3052 parseBackboneAttributes(xpp, res); 3053 next(xpp); 3054 int eventType = nextNoWhitespace(xpp); 3055 while (eventType != XmlPullParser.END_TAG) { 3056 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequenceLinkId")) { 3057 res.getSequenceLinkId().add(parsePositiveInt(xpp)); 3058 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 3059 res.setService(parseCoding(xpp)); 3060 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fee")) { 3061 res.setFee(parseMoney(xpp)); 3062 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumberLinkId")) { 3063 res.getNoteNumberLinkId().add(parsePositiveInt(xpp)); 3064 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 3065 res.getAdjudication().add(parseClaimResponseAddedItemAdjudicationComponent(xpp, owner)); 3066 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 3067 res.getDetail().add(parseClaimResponseAddedItemsDetailComponent(xpp, owner)); 3068 } else if (!parseBackboneContent(eventType, xpp, res)) 3069 unknownContent(xpp); 3070 eventType = nextNoWhitespace(xpp); 3071 } 3072 next(xpp); 3073 parseElementClose(res); 3074 return res; 3075 } 3076 3077 protected ClaimResponse.AddedItemAdjudicationComponent parseClaimResponseAddedItemAdjudicationComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 3078 ClaimResponse.AddedItemAdjudicationComponent res = new ClaimResponse.AddedItemAdjudicationComponent(); 3079 parseBackboneAttributes(xpp, res); 3080 next(xpp); 3081 int eventType = nextNoWhitespace(xpp); 3082 while (eventType != XmlPullParser.END_TAG) { 3083 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 3084 res.setCategory(parseCoding(xpp)); 3085 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 3086 res.setReason(parseCoding(xpp)); 3087 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 3088 res.setAmount(parseMoney(xpp)); 3089 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 3090 res.setValueElement(parseDecimal(xpp)); 3091 } else if (!parseBackboneContent(eventType, xpp, res)) 3092 unknownContent(xpp); 3093 eventType = nextNoWhitespace(xpp); 3094 } 3095 next(xpp); 3096 parseElementClose(res); 3097 return res; 3098 } 3099 3100 protected ClaimResponse.AddedItemsDetailComponent parseClaimResponseAddedItemsDetailComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 3101 ClaimResponse.AddedItemsDetailComponent res = new ClaimResponse.AddedItemsDetailComponent(); 3102 parseBackboneAttributes(xpp, res); 3103 next(xpp); 3104 int eventType = nextNoWhitespace(xpp); 3105 while (eventType != XmlPullParser.END_TAG) { 3106 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 3107 res.setService(parseCoding(xpp)); 3108 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fee")) { 3109 res.setFee(parseMoney(xpp)); 3110 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 3111 res.getAdjudication().add(parseClaimResponseAddedItemDetailAdjudicationComponent(xpp, owner)); 3112 } else if (!parseBackboneContent(eventType, xpp, res)) 3113 unknownContent(xpp); 3114 eventType = nextNoWhitespace(xpp); 3115 } 3116 next(xpp); 3117 parseElementClose(res); 3118 return res; 3119 } 3120 3121 protected ClaimResponse.AddedItemDetailAdjudicationComponent parseClaimResponseAddedItemDetailAdjudicationComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 3122 ClaimResponse.AddedItemDetailAdjudicationComponent res = new ClaimResponse.AddedItemDetailAdjudicationComponent(); 3123 parseBackboneAttributes(xpp, res); 3124 next(xpp); 3125 int eventType = nextNoWhitespace(xpp); 3126 while (eventType != XmlPullParser.END_TAG) { 3127 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 3128 res.setCategory(parseCoding(xpp)); 3129 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 3130 res.setReason(parseCoding(xpp)); 3131 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 3132 res.setAmount(parseMoney(xpp)); 3133 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 3134 res.setValueElement(parseDecimal(xpp)); 3135 } else if (!parseBackboneContent(eventType, xpp, res)) 3136 unknownContent(xpp); 3137 eventType = nextNoWhitespace(xpp); 3138 } 3139 next(xpp); 3140 parseElementClose(res); 3141 return res; 3142 } 3143 3144 protected ClaimResponse.ErrorsComponent parseClaimResponseErrorsComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 3145 ClaimResponse.ErrorsComponent res = new ClaimResponse.ErrorsComponent(); 3146 parseBackboneAttributes(xpp, res); 3147 next(xpp); 3148 int eventType = nextNoWhitespace(xpp); 3149 while (eventType != XmlPullParser.END_TAG) { 3150 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequenceLinkId")) { 3151 res.setSequenceLinkIdElement(parsePositiveInt(xpp)); 3152 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detailSequenceLinkId")) { 3153 res.setDetailSequenceLinkIdElement(parsePositiveInt(xpp)); 3154 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subdetailSequenceLinkId")) { 3155 res.setSubdetailSequenceLinkIdElement(parsePositiveInt(xpp)); 3156 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3157 res.setCode(parseCoding(xpp)); 3158 } else if (!parseBackboneContent(eventType, xpp, res)) 3159 unknownContent(xpp); 3160 eventType = nextNoWhitespace(xpp); 3161 } 3162 next(xpp); 3163 parseElementClose(res); 3164 return res; 3165 } 3166 3167 protected ClaimResponse.NotesComponent parseClaimResponseNotesComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 3168 ClaimResponse.NotesComponent res = new ClaimResponse.NotesComponent(); 3169 parseBackboneAttributes(xpp, res); 3170 next(xpp); 3171 int eventType = nextNoWhitespace(xpp); 3172 while (eventType != XmlPullParser.END_TAG) { 3173 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("number")) { 3174 res.setNumberElement(parsePositiveInt(xpp)); 3175 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 3176 res.setType(parseCoding(xpp)); 3177 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 3178 res.setTextElement(parseString(xpp)); 3179 } else if (!parseBackboneContent(eventType, xpp, res)) 3180 unknownContent(xpp); 3181 eventType = nextNoWhitespace(xpp); 3182 } 3183 next(xpp); 3184 parseElementClose(res); 3185 return res; 3186 } 3187 3188 protected ClaimResponse.CoverageComponent parseClaimResponseCoverageComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 3189 ClaimResponse.CoverageComponent res = new ClaimResponse.CoverageComponent(); 3190 parseBackboneAttributes(xpp, res); 3191 next(xpp); 3192 int eventType = nextNoWhitespace(xpp); 3193 while (eventType != XmlPullParser.END_TAG) { 3194 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 3195 res.setSequenceElement(parsePositiveInt(xpp)); 3196 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focal")) { 3197 res.setFocalElement(parseBoolean(xpp)); 3198 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "coverage")) { 3199 res.setCoverage(parseType("coverage", xpp)); 3200 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("businessArrangement")) { 3201 res.setBusinessArrangementElement(parseString(xpp)); 3202 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preAuthRef")) { 3203 res.getPreAuthRef().add(parseString(xpp)); 3204 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("claimResponse")) { 3205 res.setClaimResponse(parseReference(xpp)); 3206 } else if (!parseBackboneContent(eventType, xpp, res)) 3207 unknownContent(xpp); 3208 eventType = nextNoWhitespace(xpp); 3209 } 3210 next(xpp); 3211 parseElementClose(res); 3212 return res; 3213 } 3214 3215 protected ClinicalImpression parseClinicalImpression(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3216 ClinicalImpression res = new ClinicalImpression(); 3217 parseDomainResourceAttributes(xpp, res); 3218 next(xpp); 3219 int eventType = nextNoWhitespace(xpp); 3220 while (eventType != XmlPullParser.END_TAG) { 3221 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 3222 res.setPatient(parseReference(xpp)); 3223 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assessor")) { 3224 res.setAssessor(parseReference(xpp)); 3225 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 3226 res.setStatusElement(parseEnumeration(xpp, ClinicalImpression.ClinicalImpressionStatus.NULL, new ClinicalImpression.ClinicalImpressionStatusEnumFactory())); 3227 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 3228 res.setDateElement(parseDateTime(xpp)); 3229 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 3230 res.setDescriptionElement(parseString(xpp)); 3231 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("previous")) { 3232 res.setPrevious(parseReference(xpp)); 3233 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("problem")) { 3234 res.getProblem().add(parseReference(xpp)); 3235 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "trigger")) { 3236 res.setTrigger(parseType("trigger", xpp)); 3237 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("investigations")) { 3238 res.getInvestigations().add(parseClinicalImpressionClinicalImpressionInvestigationsComponent(xpp, res)); 3239 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("protocol")) { 3240 res.setProtocolElement(parseUri(xpp)); 3241 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("summary")) { 3242 res.setSummaryElement(parseString(xpp)); 3243 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("finding")) { 3244 res.getFinding().add(parseClinicalImpressionClinicalImpressionFindingComponent(xpp, res)); 3245 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resolved")) { 3246 res.getResolved().add(parseCodeableConcept(xpp)); 3247 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruledOut")) { 3248 res.getRuledOut().add(parseClinicalImpressionClinicalImpressionRuledOutComponent(xpp, res)); 3249 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prognosis")) { 3250 res.setPrognosisElement(parseString(xpp)); 3251 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("plan")) { 3252 res.getPlan().add(parseReference(xpp)); 3253 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 3254 res.getAction().add(parseReference(xpp)); 3255 } else if (!parseDomainResourceContent(eventType, xpp, res)) 3256 unknownContent(xpp); 3257 eventType = nextNoWhitespace(xpp); 3258 } 3259 next(xpp); 3260 parseElementClose(res); 3261 return res; 3262 } 3263 3264 protected ClinicalImpression.ClinicalImpressionInvestigationsComponent parseClinicalImpressionClinicalImpressionInvestigationsComponent(XmlPullParser xpp, ClinicalImpression owner) throws XmlPullParserException, IOException, FHIRFormatError { 3265 ClinicalImpression.ClinicalImpressionInvestigationsComponent res = new ClinicalImpression.ClinicalImpressionInvestigationsComponent(); 3266 parseBackboneAttributes(xpp, res); 3267 next(xpp); 3268 int eventType = nextNoWhitespace(xpp); 3269 while (eventType != XmlPullParser.END_TAG) { 3270 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3271 res.setCode(parseCodeableConcept(xpp)); 3272 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 3273 res.getItem().add(parseReference(xpp)); 3274 } else if (!parseBackboneContent(eventType, xpp, res)) 3275 unknownContent(xpp); 3276 eventType = nextNoWhitespace(xpp); 3277 } 3278 next(xpp); 3279 parseElementClose(res); 3280 return res; 3281 } 3282 3283 protected ClinicalImpression.ClinicalImpressionFindingComponent parseClinicalImpressionClinicalImpressionFindingComponent(XmlPullParser xpp, ClinicalImpression owner) throws XmlPullParserException, IOException, FHIRFormatError { 3284 ClinicalImpression.ClinicalImpressionFindingComponent res = new ClinicalImpression.ClinicalImpressionFindingComponent(); 3285 parseBackboneAttributes(xpp, res); 3286 next(xpp); 3287 int eventType = nextNoWhitespace(xpp); 3288 while (eventType != XmlPullParser.END_TAG) { 3289 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 3290 res.setItem(parseCodeableConcept(xpp)); 3291 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("cause")) { 3292 res.setCauseElement(parseString(xpp)); 3293 } else if (!parseBackboneContent(eventType, xpp, res)) 3294 unknownContent(xpp); 3295 eventType = nextNoWhitespace(xpp); 3296 } 3297 next(xpp); 3298 parseElementClose(res); 3299 return res; 3300 } 3301 3302 protected ClinicalImpression.ClinicalImpressionRuledOutComponent parseClinicalImpressionClinicalImpressionRuledOutComponent(XmlPullParser xpp, ClinicalImpression owner) throws XmlPullParserException, IOException, FHIRFormatError { 3303 ClinicalImpression.ClinicalImpressionRuledOutComponent res = new ClinicalImpression.ClinicalImpressionRuledOutComponent(); 3304 parseBackboneAttributes(xpp, res); 3305 next(xpp); 3306 int eventType = nextNoWhitespace(xpp); 3307 while (eventType != XmlPullParser.END_TAG) { 3308 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 3309 res.setItem(parseCodeableConcept(xpp)); 3310 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 3311 res.setReasonElement(parseString(xpp)); 3312 } else if (!parseBackboneContent(eventType, xpp, res)) 3313 unknownContent(xpp); 3314 eventType = nextNoWhitespace(xpp); 3315 } 3316 next(xpp); 3317 parseElementClose(res); 3318 return res; 3319 } 3320 3321 protected CodeSystem parseCodeSystem(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3322 CodeSystem res = new CodeSystem(); 3323 parseDomainResourceAttributes(xpp, res); 3324 next(xpp); 3325 int eventType = nextNoWhitespace(xpp); 3326 while (eventType != XmlPullParser.END_TAG) { 3327 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 3328 res.setUrlElement(parseUri(xpp)); 3329 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 3330 res.setIdentifier(parseIdentifier(xpp)); 3331 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 3332 res.setVersionElement(parseString(xpp)); 3333 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 3334 res.setNameElement(parseString(xpp)); 3335 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 3336 res.setStatusElement(parseEnumeration(xpp, Enumerations.ConformanceResourceStatus.NULL, new Enumerations.ConformanceResourceStatusEnumFactory())); 3337 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 3338 res.setExperimentalElement(parseBoolean(xpp)); 3339 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 3340 res.setPublisherElement(parseString(xpp)); 3341 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 3342 res.getContact().add(parseCodeSystemCodeSystemContactComponent(xpp, res)); 3343 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 3344 res.setDateElement(parseDateTime(xpp)); 3345 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 3346 res.setDescriptionElement(parseString(xpp)); 3347 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 3348 res.getUseContext().add(parseCodeableConcept(xpp)); 3349 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirements")) { 3350 res.setRequirementsElement(parseString(xpp)); 3351 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 3352 res.setCopyrightElement(parseString(xpp)); 3353 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("caseSensitive")) { 3354 res.setCaseSensitiveElement(parseBoolean(xpp)); 3355 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valueSet")) { 3356 res.setValueSetElement(parseUri(xpp)); 3357 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("compositional")) { 3358 res.setCompositionalElement(parseBoolean(xpp)); 3359 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("versionNeeded")) { 3360 res.setVersionNeededElement(parseBoolean(xpp)); 3361 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 3362 res.setContentElement(parseEnumeration(xpp, CodeSystem.CodeSystemContentMode.NULL, new CodeSystem.CodeSystemContentModeEnumFactory())); 3363 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("count")) { 3364 res.setCountElement(parseUnsignedInt(xpp)); 3365 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("filter")) { 3366 res.getFilter().add(parseCodeSystemCodeSystemFilterComponent(xpp, res)); 3367 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("property")) { 3368 res.getProperty().add(parseCodeSystemCodeSystemPropertyComponent(xpp, res)); 3369 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("concept")) { 3370 res.getConcept().add(parseCodeSystemConceptDefinitionComponent(xpp, res)); 3371 } else if (!parseDomainResourceContent(eventType, xpp, res)) 3372 unknownContent(xpp); 3373 eventType = nextNoWhitespace(xpp); 3374 } 3375 next(xpp); 3376 parseElementClose(res); 3377 return res; 3378 } 3379 3380 protected CodeSystem.CodeSystemContactComponent parseCodeSystemCodeSystemContactComponent(XmlPullParser xpp, CodeSystem owner) throws XmlPullParserException, IOException, FHIRFormatError { 3381 CodeSystem.CodeSystemContactComponent res = new CodeSystem.CodeSystemContactComponent(); 3382 parseBackboneAttributes(xpp, res); 3383 next(xpp); 3384 int eventType = nextNoWhitespace(xpp); 3385 while (eventType != XmlPullParser.END_TAG) { 3386 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 3387 res.setNameElement(parseString(xpp)); 3388 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 3389 res.getTelecom().add(parseContactPoint(xpp)); 3390 } else if (!parseBackboneContent(eventType, xpp, res)) 3391 unknownContent(xpp); 3392 eventType = nextNoWhitespace(xpp); 3393 } 3394 next(xpp); 3395 parseElementClose(res); 3396 return res; 3397 } 3398 3399 protected CodeSystem.CodeSystemFilterComponent parseCodeSystemCodeSystemFilterComponent(XmlPullParser xpp, CodeSystem owner) throws XmlPullParserException, IOException, FHIRFormatError { 3400 CodeSystem.CodeSystemFilterComponent res = new CodeSystem.CodeSystemFilterComponent(); 3401 parseBackboneAttributes(xpp, res); 3402 next(xpp); 3403 int eventType = nextNoWhitespace(xpp); 3404 while (eventType != XmlPullParser.END_TAG) { 3405 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3406 res.setCodeElement(parseCode(xpp)); 3407 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 3408 res.setDescriptionElement(parseString(xpp)); 3409 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operator")) { 3410 res.getOperator().add(parseCode(xpp)); 3411 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 3412 res.setValueElement(parseString(xpp)); 3413 } else if (!parseBackboneContent(eventType, xpp, res)) 3414 unknownContent(xpp); 3415 eventType = nextNoWhitespace(xpp); 3416 } 3417 next(xpp); 3418 parseElementClose(res); 3419 return res; 3420 } 3421 3422 protected CodeSystem.CodeSystemPropertyComponent parseCodeSystemCodeSystemPropertyComponent(XmlPullParser xpp, CodeSystem owner) throws XmlPullParserException, IOException, FHIRFormatError { 3423 CodeSystem.CodeSystemPropertyComponent res = new CodeSystem.CodeSystemPropertyComponent(); 3424 parseBackboneAttributes(xpp, res); 3425 next(xpp); 3426 int eventType = nextNoWhitespace(xpp); 3427 while (eventType != XmlPullParser.END_TAG) { 3428 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3429 res.setCodeElement(parseCode(xpp)); 3430 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 3431 res.setDescriptionElement(parseString(xpp)); 3432 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 3433 res.setTypeElement(parseEnumeration(xpp, CodeSystem.PropertyType.NULL, new CodeSystem.PropertyTypeEnumFactory())); 3434 } else if (!parseBackboneContent(eventType, xpp, res)) 3435 unknownContent(xpp); 3436 eventType = nextNoWhitespace(xpp); 3437 } 3438 next(xpp); 3439 parseElementClose(res); 3440 return res; 3441 } 3442 3443 protected CodeSystem.ConceptDefinitionComponent parseCodeSystemConceptDefinitionComponent(XmlPullParser xpp, CodeSystem owner) throws XmlPullParserException, IOException, FHIRFormatError { 3444 CodeSystem.ConceptDefinitionComponent res = new CodeSystem.ConceptDefinitionComponent(); 3445 parseBackboneAttributes(xpp, res); 3446 next(xpp); 3447 int eventType = nextNoWhitespace(xpp); 3448 while (eventType != XmlPullParser.END_TAG) { 3449 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3450 res.setCodeElement(parseCode(xpp)); 3451 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 3452 res.setDisplayElement(parseString(xpp)); 3453 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 3454 res.setDefinitionElement(parseString(xpp)); 3455 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("designation")) { 3456 res.getDesignation().add(parseCodeSystemConceptDefinitionDesignationComponent(xpp, owner)); 3457 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("property")) { 3458 res.getProperty().add(parseCodeSystemConceptDefinitionPropertyComponent(xpp, owner)); 3459 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("concept")) { 3460 res.getConcept().add(parseCodeSystemConceptDefinitionComponent(xpp, owner)); 3461 } else if (!parseBackboneContent(eventType, xpp, res)) 3462 unknownContent(xpp); 3463 eventType = nextNoWhitespace(xpp); 3464 } 3465 next(xpp); 3466 parseElementClose(res); 3467 return res; 3468 } 3469 3470 protected CodeSystem.ConceptDefinitionDesignationComponent parseCodeSystemConceptDefinitionDesignationComponent(XmlPullParser xpp, CodeSystem owner) throws XmlPullParserException, IOException, FHIRFormatError { 3471 CodeSystem.ConceptDefinitionDesignationComponent res = new CodeSystem.ConceptDefinitionDesignationComponent(); 3472 parseBackboneAttributes(xpp, res); 3473 next(xpp); 3474 int eventType = nextNoWhitespace(xpp); 3475 while (eventType != XmlPullParser.END_TAG) { 3476 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 3477 res.setLanguageElement(parseCode(xpp)); 3478 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 3479 res.setUse(parseCoding(xpp)); 3480 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 3481 res.setValueElement(parseString(xpp)); 3482 } else if (!parseBackboneContent(eventType, xpp, res)) 3483 unknownContent(xpp); 3484 eventType = nextNoWhitespace(xpp); 3485 } 3486 next(xpp); 3487 parseElementClose(res); 3488 return res; 3489 } 3490 3491 protected CodeSystem.ConceptDefinitionPropertyComponent parseCodeSystemConceptDefinitionPropertyComponent(XmlPullParser xpp, CodeSystem owner) throws XmlPullParserException, IOException, FHIRFormatError { 3492 CodeSystem.ConceptDefinitionPropertyComponent res = new CodeSystem.ConceptDefinitionPropertyComponent(); 3493 parseBackboneAttributes(xpp, res); 3494 next(xpp); 3495 int eventType = nextNoWhitespace(xpp); 3496 while (eventType != XmlPullParser.END_TAG) { 3497 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3498 res.setCodeElement(parseCode(xpp)); 3499 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 3500 res.setValue(parseType("value", xpp)); 3501 } else if (!parseBackboneContent(eventType, xpp, res)) 3502 unknownContent(xpp); 3503 eventType = nextNoWhitespace(xpp); 3504 } 3505 next(xpp); 3506 parseElementClose(res); 3507 return res; 3508 } 3509 3510 protected Communication parseCommunication(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3511 Communication res = new Communication(); 3512 parseDomainResourceAttributes(xpp, res); 3513 next(xpp); 3514 int eventType = nextNoWhitespace(xpp); 3515 while (eventType != XmlPullParser.END_TAG) { 3516 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 3517 res.getIdentifier().add(parseIdentifier(xpp)); 3518 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 3519 res.setCategory(parseCodeableConcept(xpp)); 3520 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sender")) { 3521 res.setSender(parseReference(xpp)); 3522 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recipient")) { 3523 res.getRecipient().add(parseReference(xpp)); 3524 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payload")) { 3525 res.getPayload().add(parseCommunicationCommunicationPayloadComponent(xpp, res)); 3526 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("medium")) { 3527 res.getMedium().add(parseCodeableConcept(xpp)); 3528 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 3529 res.setStatusElement(parseEnumeration(xpp, Communication.CommunicationStatus.NULL, new Communication.CommunicationStatusEnumFactory())); 3530 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 3531 res.setEncounter(parseReference(xpp)); 3532 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sent")) { 3533 res.setSentElement(parseDateTime(xpp)); 3534 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("received")) { 3535 res.setReceivedElement(parseDateTime(xpp)); 3536 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 3537 res.getReason().add(parseCodeableConcept(xpp)); 3538 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 3539 res.setSubject(parseReference(xpp)); 3540 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestDetail")) { 3541 res.setRequestDetail(parseReference(xpp)); 3542 } else if (!parseDomainResourceContent(eventType, xpp, res)) 3543 unknownContent(xpp); 3544 eventType = nextNoWhitespace(xpp); 3545 } 3546 next(xpp); 3547 parseElementClose(res); 3548 return res; 3549 } 3550 3551 protected Communication.CommunicationPayloadComponent parseCommunicationCommunicationPayloadComponent(XmlPullParser xpp, Communication owner) throws XmlPullParserException, IOException, FHIRFormatError { 3552 Communication.CommunicationPayloadComponent res = new Communication.CommunicationPayloadComponent(); 3553 parseBackboneAttributes(xpp, res); 3554 next(xpp); 3555 int eventType = nextNoWhitespace(xpp); 3556 while (eventType != XmlPullParser.END_TAG) { 3557 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "content")) { 3558 res.setContent(parseType("content", xpp)); 3559 } else if (!parseBackboneContent(eventType, xpp, res)) 3560 unknownContent(xpp); 3561 eventType = nextNoWhitespace(xpp); 3562 } 3563 next(xpp); 3564 parseElementClose(res); 3565 return res; 3566 } 3567 3568 protected CommunicationRequest parseCommunicationRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3569 CommunicationRequest res = new CommunicationRequest(); 3570 parseDomainResourceAttributes(xpp, res); 3571 next(xpp); 3572 int eventType = nextNoWhitespace(xpp); 3573 while (eventType != XmlPullParser.END_TAG) { 3574 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 3575 res.getIdentifier().add(parseIdentifier(xpp)); 3576 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 3577 res.setCategory(parseCodeableConcept(xpp)); 3578 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sender")) { 3579 res.setSender(parseReference(xpp)); 3580 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recipient")) { 3581 res.getRecipient().add(parseReference(xpp)); 3582 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payload")) { 3583 res.getPayload().add(parseCommunicationRequestCommunicationRequestPayloadComponent(xpp, res)); 3584 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("medium")) { 3585 res.getMedium().add(parseCodeableConcept(xpp)); 3586 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requester")) { 3587 res.setRequester(parseReference(xpp)); 3588 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 3589 res.setStatusElement(parseEnumeration(xpp, CommunicationRequest.CommunicationRequestStatus.NULL, new CommunicationRequest.CommunicationRequestStatusEnumFactory())); 3590 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 3591 res.setEncounter(parseReference(xpp)); 3592 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "scheduled")) { 3593 res.setScheduled(parseType("scheduled", xpp)); 3594 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 3595 res.getReason().add(parseCodeableConcept(xpp)); 3596 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestedOn")) { 3597 res.setRequestedOnElement(parseDateTime(xpp)); 3598 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 3599 res.setSubject(parseReference(xpp)); 3600 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 3601 res.setPriority(parseCodeableConcept(xpp)); 3602 } else if (!parseDomainResourceContent(eventType, xpp, res)) 3603 unknownContent(xpp); 3604 eventType = nextNoWhitespace(xpp); 3605 } 3606 next(xpp); 3607 parseElementClose(res); 3608 return res; 3609 } 3610 3611 protected CommunicationRequest.CommunicationRequestPayloadComponent parseCommunicationRequestCommunicationRequestPayloadComponent(XmlPullParser xpp, CommunicationRequest owner) throws XmlPullParserException, IOException, FHIRFormatError { 3612 CommunicationRequest.CommunicationRequestPayloadComponent res = new CommunicationRequest.CommunicationRequestPayloadComponent(); 3613 parseBackboneAttributes(xpp, res); 3614 next(xpp); 3615 int eventType = nextNoWhitespace(xpp); 3616 while (eventType != XmlPullParser.END_TAG) { 3617 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "content")) { 3618 res.setContent(parseType("content", xpp)); 3619 } else if (!parseBackboneContent(eventType, xpp, res)) 3620 unknownContent(xpp); 3621 eventType = nextNoWhitespace(xpp); 3622 } 3623 next(xpp); 3624 parseElementClose(res); 3625 return res; 3626 } 3627 3628 protected CompartmentDefinition parseCompartmentDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3629 CompartmentDefinition res = new CompartmentDefinition(); 3630 parseDomainResourceAttributes(xpp, res); 3631 next(xpp); 3632 int eventType = nextNoWhitespace(xpp); 3633 while (eventType != XmlPullParser.END_TAG) { 3634 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 3635 res.setUrlElement(parseUri(xpp)); 3636 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 3637 res.setNameElement(parseString(xpp)); 3638 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 3639 res.setStatusElement(parseEnumeration(xpp, Enumerations.ConformanceResourceStatus.NULL, new Enumerations.ConformanceResourceStatusEnumFactory())); 3640 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 3641 res.setExperimentalElement(parseBoolean(xpp)); 3642 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 3643 res.setPublisherElement(parseString(xpp)); 3644 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 3645 res.getContact().add(parseCompartmentDefinitionCompartmentDefinitionContactComponent(xpp, res)); 3646 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 3647 res.setDateElement(parseDateTime(xpp)); 3648 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 3649 res.setDescriptionElement(parseString(xpp)); 3650 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirements")) { 3651 res.setRequirementsElement(parseString(xpp)); 3652 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3653 res.setCodeElement(parseEnumeration(xpp, CompartmentDefinition.CompartmentType.NULL, new CompartmentDefinition.CompartmentTypeEnumFactory())); 3654 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("search")) { 3655 res.setSearchElement(parseBoolean(xpp)); 3656 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 3657 res.getResource().add(parseCompartmentDefinitionCompartmentDefinitionResourceComponent(xpp, res)); 3658 } else if (!parseDomainResourceContent(eventType, xpp, res)) 3659 unknownContent(xpp); 3660 eventType = nextNoWhitespace(xpp); 3661 } 3662 next(xpp); 3663 parseElementClose(res); 3664 return res; 3665 } 3666 3667 protected CompartmentDefinition.CompartmentDefinitionContactComponent parseCompartmentDefinitionCompartmentDefinitionContactComponent(XmlPullParser xpp, CompartmentDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 3668 CompartmentDefinition.CompartmentDefinitionContactComponent res = new CompartmentDefinition.CompartmentDefinitionContactComponent(); 3669 parseBackboneAttributes(xpp, res); 3670 next(xpp); 3671 int eventType = nextNoWhitespace(xpp); 3672 while (eventType != XmlPullParser.END_TAG) { 3673 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 3674 res.setNameElement(parseString(xpp)); 3675 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 3676 res.getTelecom().add(parseContactPoint(xpp)); 3677 } else if (!parseBackboneContent(eventType, xpp, res)) 3678 unknownContent(xpp); 3679 eventType = nextNoWhitespace(xpp); 3680 } 3681 next(xpp); 3682 parseElementClose(res); 3683 return res; 3684 } 3685 3686 protected CompartmentDefinition.CompartmentDefinitionResourceComponent parseCompartmentDefinitionCompartmentDefinitionResourceComponent(XmlPullParser xpp, CompartmentDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 3687 CompartmentDefinition.CompartmentDefinitionResourceComponent res = new CompartmentDefinition.CompartmentDefinitionResourceComponent(); 3688 parseBackboneAttributes(xpp, res); 3689 next(xpp); 3690 int eventType = nextNoWhitespace(xpp); 3691 while (eventType != XmlPullParser.END_TAG) { 3692 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3693 res.setCodeElement(parseCode(xpp)); 3694 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("param")) { 3695 res.getParam().add(parseString(xpp)); 3696 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 3697 res.setDocumentationElement(parseString(xpp)); 3698 } else if (!parseBackboneContent(eventType, xpp, res)) 3699 unknownContent(xpp); 3700 eventType = nextNoWhitespace(xpp); 3701 } 3702 next(xpp); 3703 parseElementClose(res); 3704 return res; 3705 } 3706 3707 protected Composition parseComposition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3708 Composition res = new Composition(); 3709 parseDomainResourceAttributes(xpp, res); 3710 next(xpp); 3711 int eventType = nextNoWhitespace(xpp); 3712 while (eventType != XmlPullParser.END_TAG) { 3713 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 3714 res.setIdentifier(parseIdentifier(xpp)); 3715 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 3716 res.setDateElement(parseDateTime(xpp)); 3717 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 3718 res.setType(parseCodeableConcept(xpp)); 3719 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("class")) { 3720 res.setClass_(parseCodeableConcept(xpp)); 3721 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 3722 res.setTitleElement(parseString(xpp)); 3723 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 3724 res.setStatusElement(parseEnumeration(xpp, Composition.CompositionStatus.NULL, new Composition.CompositionStatusEnumFactory())); 3725 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("confidentiality")) { 3726 res.setConfidentialityElement(parseCode(xpp)); 3727 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 3728 res.setSubject(parseReference(xpp)); 3729 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 3730 res.getAuthor().add(parseReference(xpp)); 3731 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("attester")) { 3732 res.getAttester().add(parseCompositionCompositionAttesterComponent(xpp, res)); 3733 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("custodian")) { 3734 res.setCustodian(parseReference(xpp)); 3735 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 3736 res.getEvent().add(parseCompositionCompositionEventComponent(xpp, res)); 3737 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 3738 res.setEncounter(parseReference(xpp)); 3739 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("section")) { 3740 res.getSection().add(parseCompositionSectionComponent(xpp, res)); 3741 } else if (!parseDomainResourceContent(eventType, xpp, res)) 3742 unknownContent(xpp); 3743 eventType = nextNoWhitespace(xpp); 3744 } 3745 next(xpp); 3746 parseElementClose(res); 3747 return res; 3748 } 3749 3750 protected Composition.CompositionAttesterComponent parseCompositionCompositionAttesterComponent(XmlPullParser xpp, Composition owner) throws XmlPullParserException, IOException, FHIRFormatError { 3751 Composition.CompositionAttesterComponent res = new Composition.CompositionAttesterComponent(); 3752 parseBackboneAttributes(xpp, res); 3753 next(xpp); 3754 int eventType = nextNoWhitespace(xpp); 3755 while (eventType != XmlPullParser.END_TAG) { 3756 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 3757 res.getMode().add(parseEnumeration(xpp, Composition.CompositionAttestationMode.NULL, new Composition.CompositionAttestationModeEnumFactory())); 3758 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("time")) { 3759 res.setTimeElement(parseDateTime(xpp)); 3760 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("party")) { 3761 res.setParty(parseReference(xpp)); 3762 } else if (!parseBackboneContent(eventType, xpp, res)) 3763 unknownContent(xpp); 3764 eventType = nextNoWhitespace(xpp); 3765 } 3766 next(xpp); 3767 parseElementClose(res); 3768 return res; 3769 } 3770 3771 protected Composition.CompositionEventComponent parseCompositionCompositionEventComponent(XmlPullParser xpp, Composition owner) throws XmlPullParserException, IOException, FHIRFormatError { 3772 Composition.CompositionEventComponent res = new Composition.CompositionEventComponent(); 3773 parseBackboneAttributes(xpp, res); 3774 next(xpp); 3775 int eventType = nextNoWhitespace(xpp); 3776 while (eventType != XmlPullParser.END_TAG) { 3777 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3778 res.getCode().add(parseCodeableConcept(xpp)); 3779 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 3780 res.setPeriod(parsePeriod(xpp)); 3781 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 3782 res.getDetail().add(parseReference(xpp)); 3783 } else if (!parseBackboneContent(eventType, xpp, res)) 3784 unknownContent(xpp); 3785 eventType = nextNoWhitespace(xpp); 3786 } 3787 next(xpp); 3788 parseElementClose(res); 3789 return res; 3790 } 3791 3792 protected Composition.SectionComponent parseCompositionSectionComponent(XmlPullParser xpp, Composition owner) throws XmlPullParserException, IOException, FHIRFormatError { 3793 Composition.SectionComponent res = new Composition.SectionComponent(); 3794 parseBackboneAttributes(xpp, res); 3795 next(xpp); 3796 int eventType = nextNoWhitespace(xpp); 3797 while (eventType != XmlPullParser.END_TAG) { 3798 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 3799 res.setTitleElement(parseString(xpp)); 3800 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3801 res.setCode(parseCodeableConcept(xpp)); 3802 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 3803 res.setText(parseNarrative(xpp)); 3804 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 3805 res.setModeElement(parseCode(xpp)); 3806 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orderedBy")) { 3807 res.setOrderedBy(parseCodeableConcept(xpp)); 3808 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entry")) { 3809 res.getEntry().add(parseReference(xpp)); 3810 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("emptyReason")) { 3811 res.setEmptyReason(parseCodeableConcept(xpp)); 3812 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("section")) { 3813 res.getSection().add(parseCompositionSectionComponent(xpp, owner)); 3814 } else if (!parseBackboneContent(eventType, xpp, res)) 3815 unknownContent(xpp); 3816 eventType = nextNoWhitespace(xpp); 3817 } 3818 next(xpp); 3819 parseElementClose(res); 3820 return res; 3821 } 3822 3823 protected ConceptMap parseConceptMap(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3824 ConceptMap res = new ConceptMap(); 3825 parseDomainResourceAttributes(xpp, res); 3826 next(xpp); 3827 int eventType = nextNoWhitespace(xpp); 3828 while (eventType != XmlPullParser.END_TAG) { 3829 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 3830 res.setUrlElement(parseUri(xpp)); 3831 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 3832 res.setIdentifier(parseIdentifier(xpp)); 3833 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 3834 res.setVersionElement(parseString(xpp)); 3835 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 3836 res.setNameElement(parseString(xpp)); 3837 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 3838 res.setStatusElement(parseEnumeration(xpp, Enumerations.ConformanceResourceStatus.NULL, new Enumerations.ConformanceResourceStatusEnumFactory())); 3839 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 3840 res.setExperimentalElement(parseBoolean(xpp)); 3841 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 3842 res.setPublisherElement(parseString(xpp)); 3843 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 3844 res.getContact().add(parseConceptMapConceptMapContactComponent(xpp, res)); 3845 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 3846 res.setDateElement(parseDateTime(xpp)); 3847 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 3848 res.setDescriptionElement(parseString(xpp)); 3849 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 3850 res.getUseContext().add(parseCodeableConcept(xpp)); 3851 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirements")) { 3852 res.setRequirementsElement(parseString(xpp)); 3853 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 3854 res.setCopyrightElement(parseString(xpp)); 3855 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "source")) { 3856 res.setSource(parseType("source", xpp)); 3857 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "target")) { 3858 res.setTarget(parseType("target", xpp)); 3859 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("element")) { 3860 res.getElement().add(parseConceptMapSourceElementComponent(xpp, res)); 3861 } else if (!parseDomainResourceContent(eventType, xpp, res)) 3862 unknownContent(xpp); 3863 eventType = nextNoWhitespace(xpp); 3864 } 3865 next(xpp); 3866 parseElementClose(res); 3867 return res; 3868 } 3869 3870 protected ConceptMap.ConceptMapContactComponent parseConceptMapConceptMapContactComponent(XmlPullParser xpp, ConceptMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 3871 ConceptMap.ConceptMapContactComponent res = new ConceptMap.ConceptMapContactComponent(); 3872 parseBackboneAttributes(xpp, res); 3873 next(xpp); 3874 int eventType = nextNoWhitespace(xpp); 3875 while (eventType != XmlPullParser.END_TAG) { 3876 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 3877 res.setNameElement(parseString(xpp)); 3878 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 3879 res.getTelecom().add(parseContactPoint(xpp)); 3880 } else if (!parseBackboneContent(eventType, xpp, res)) 3881 unknownContent(xpp); 3882 eventType = nextNoWhitespace(xpp); 3883 } 3884 next(xpp); 3885 parseElementClose(res); 3886 return res; 3887 } 3888 3889 protected ConceptMap.SourceElementComponent parseConceptMapSourceElementComponent(XmlPullParser xpp, ConceptMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 3890 ConceptMap.SourceElementComponent res = new ConceptMap.SourceElementComponent(); 3891 parseBackboneAttributes(xpp, res); 3892 next(xpp); 3893 int eventType = nextNoWhitespace(xpp); 3894 while (eventType != XmlPullParser.END_TAG) { 3895 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 3896 res.setSystemElement(parseUri(xpp)); 3897 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 3898 res.setVersionElement(parseString(xpp)); 3899 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3900 res.setCodeElement(parseCode(xpp)); 3901 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 3902 res.getTarget().add(parseConceptMapTargetElementComponent(xpp, owner)); 3903 } else if (!parseBackboneContent(eventType, xpp, res)) 3904 unknownContent(xpp); 3905 eventType = nextNoWhitespace(xpp); 3906 } 3907 next(xpp); 3908 parseElementClose(res); 3909 return res; 3910 } 3911 3912 protected ConceptMap.TargetElementComponent parseConceptMapTargetElementComponent(XmlPullParser xpp, ConceptMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 3913 ConceptMap.TargetElementComponent res = new ConceptMap.TargetElementComponent(); 3914 parseBackboneAttributes(xpp, res); 3915 next(xpp); 3916 int eventType = nextNoWhitespace(xpp); 3917 while (eventType != XmlPullParser.END_TAG) { 3918 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 3919 res.setSystemElement(parseUri(xpp)); 3920 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 3921 res.setVersionElement(parseString(xpp)); 3922 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3923 res.setCodeElement(parseCode(xpp)); 3924 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("equivalence")) { 3925 res.setEquivalenceElement(parseEnumeration(xpp, Enumerations.ConceptMapEquivalence.NULL, new Enumerations.ConceptMapEquivalenceEnumFactory())); 3926 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comments")) { 3927 res.setCommentsElement(parseString(xpp)); 3928 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dependsOn")) { 3929 res.getDependsOn().add(parseConceptMapOtherElementComponent(xpp, owner)); 3930 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("product")) { 3931 res.getProduct().add(parseConceptMapOtherElementComponent(xpp, owner)); 3932 } else if (!parseBackboneContent(eventType, xpp, res)) 3933 unknownContent(xpp); 3934 eventType = nextNoWhitespace(xpp); 3935 } 3936 next(xpp); 3937 parseElementClose(res); 3938 return res; 3939 } 3940 3941 protected ConceptMap.OtherElementComponent parseConceptMapOtherElementComponent(XmlPullParser xpp, ConceptMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 3942 ConceptMap.OtherElementComponent res = new ConceptMap.OtherElementComponent(); 3943 parseBackboneAttributes(xpp, res); 3944 next(xpp); 3945 int eventType = nextNoWhitespace(xpp); 3946 while (eventType != XmlPullParser.END_TAG) { 3947 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("element")) { 3948 res.setElementElement(parseUri(xpp)); 3949 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 3950 res.setSystemElement(parseUri(xpp)); 3951 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3952 res.setCodeElement(parseString(xpp)); 3953 } else if (!parseBackboneContent(eventType, xpp, res)) 3954 unknownContent(xpp); 3955 eventType = nextNoWhitespace(xpp); 3956 } 3957 next(xpp); 3958 parseElementClose(res); 3959 return res; 3960 } 3961 3962 protected Condition parseCondition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3963 Condition res = new Condition(); 3964 parseDomainResourceAttributes(xpp, res); 3965 next(xpp); 3966 int eventType = nextNoWhitespace(xpp); 3967 while (eventType != XmlPullParser.END_TAG) { 3968 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 3969 res.getIdentifier().add(parseIdentifier(xpp)); 3970 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 3971 res.setPatient(parseReference(xpp)); 3972 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 3973 res.setEncounter(parseReference(xpp)); 3974 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("asserter")) { 3975 res.setAsserter(parseReference(xpp)); 3976 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateRecorded")) { 3977 res.setDateRecordedElement(parseDate(xpp)); 3978 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3979 res.setCode(parseCodeableConcept(xpp)); 3980 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 3981 res.setCategory(parseCodeableConcept(xpp)); 3982 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("clinicalStatus")) { 3983 res.setClinicalStatusElement(parseCode(xpp)); 3984 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("verificationStatus")) { 3985 res.setVerificationStatusElement(parseEnumeration(xpp, Condition.ConditionVerificationStatus.NULL, new Condition.ConditionVerificationStatusEnumFactory())); 3986 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("severity")) { 3987 res.setSeverity(parseCodeableConcept(xpp)); 3988 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "onset")) { 3989 res.setOnset(parseType("onset", xpp)); 3990 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "abatement")) { 3991 res.setAbatement(parseType("abatement", xpp)); 3992 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("stage")) { 3993 res.setStage(parseConditionConditionStageComponent(xpp, res)); 3994 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("evidence")) { 3995 res.getEvidence().add(parseConditionConditionEvidenceComponent(xpp, res)); 3996 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 3997 res.getBodySite().add(parseCodeableConcept(xpp)); 3998 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notes")) { 3999 res.setNotesElement(parseString(xpp)); 4000 } else if (!parseDomainResourceContent(eventType, xpp, res)) 4001 unknownContent(xpp); 4002 eventType = nextNoWhitespace(xpp); 4003 } 4004 next(xpp); 4005 parseElementClose(res); 4006 return res; 4007 } 4008 4009 protected Condition.ConditionStageComponent parseConditionConditionStageComponent(XmlPullParser xpp, Condition owner) throws XmlPullParserException, IOException, FHIRFormatError { 4010 Condition.ConditionStageComponent res = new Condition.ConditionStageComponent(); 4011 parseBackboneAttributes(xpp, res); 4012 next(xpp); 4013 int eventType = nextNoWhitespace(xpp); 4014 while (eventType != XmlPullParser.END_TAG) { 4015 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("summary")) { 4016 res.setSummary(parseCodeableConcept(xpp)); 4017 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assessment")) { 4018 res.getAssessment().add(parseReference(xpp)); 4019 } else if (!parseBackboneContent(eventType, xpp, res)) 4020 unknownContent(xpp); 4021 eventType = nextNoWhitespace(xpp); 4022 } 4023 next(xpp); 4024 parseElementClose(res); 4025 return res; 4026 } 4027 4028 protected Condition.ConditionEvidenceComponent parseConditionConditionEvidenceComponent(XmlPullParser xpp, Condition owner) throws XmlPullParserException, IOException, FHIRFormatError { 4029 Condition.ConditionEvidenceComponent res = new Condition.ConditionEvidenceComponent(); 4030 parseBackboneAttributes(xpp, res); 4031 next(xpp); 4032 int eventType = nextNoWhitespace(xpp); 4033 while (eventType != XmlPullParser.END_TAG) { 4034 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 4035 res.setCode(parseCodeableConcept(xpp)); 4036 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 4037 res.getDetail().add(parseReference(xpp)); 4038 } else if (!parseBackboneContent(eventType, xpp, res)) 4039 unknownContent(xpp); 4040 eventType = nextNoWhitespace(xpp); 4041 } 4042 next(xpp); 4043 parseElementClose(res); 4044 return res; 4045 } 4046 4047 protected Conformance parseConformance(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4048 Conformance res = new Conformance(); 4049 parseDomainResourceAttributes(xpp, res); 4050 next(xpp); 4051 int eventType = nextNoWhitespace(xpp); 4052 while (eventType != XmlPullParser.END_TAG) { 4053 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 4054 res.setUrlElement(parseUri(xpp)); 4055 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 4056 res.setVersionElement(parseString(xpp)); 4057 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 4058 res.setNameElement(parseString(xpp)); 4059 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 4060 res.setStatusElement(parseEnumeration(xpp, Enumerations.ConformanceResourceStatus.NULL, new Enumerations.ConformanceResourceStatusEnumFactory())); 4061 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 4062 res.setExperimentalElement(parseBoolean(xpp)); 4063 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 4064 res.setDateElement(parseDateTime(xpp)); 4065 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 4066 res.setPublisherElement(parseString(xpp)); 4067 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 4068 res.getContact().add(parseConformanceConformanceContactComponent(xpp, res)); 4069 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 4070 res.setDescriptionElement(parseString(xpp)); 4071 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 4072 res.getUseContext().add(parseCodeableConcept(xpp)); 4073 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirements")) { 4074 res.setRequirementsElement(parseString(xpp)); 4075 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 4076 res.setCopyrightElement(parseString(xpp)); 4077 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 4078 res.setKindElement(parseEnumeration(xpp, Conformance.ConformanceStatementKind.NULL, new Conformance.ConformanceStatementKindEnumFactory())); 4079 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("software")) { 4080 res.setSoftware(parseConformanceConformanceSoftwareComponent(xpp, res)); 4081 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("implementation")) { 4082 res.setImplementation(parseConformanceConformanceImplementationComponent(xpp, res)); 4083 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fhirVersion")) { 4084 res.setFhirVersionElement(parseId(xpp)); 4085 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("acceptUnknown")) { 4086 res.setAcceptUnknownElement(parseEnumeration(xpp, Conformance.UnknownContentCode.NULL, new Conformance.UnknownContentCodeEnumFactory())); 4087 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("format")) { 4088 res.getFormat().add(parseCode(xpp)); 4089 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 4090 res.getProfile().add(parseReference(xpp)); 4091 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rest")) { 4092 res.getRest().add(parseConformanceConformanceRestComponent(xpp, res)); 4093 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("messaging")) { 4094 res.getMessaging().add(parseConformanceConformanceMessagingComponent(xpp, res)); 4095 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("document")) { 4096 res.getDocument().add(parseConformanceConformanceDocumentComponent(xpp, res)); 4097 } else if (!parseDomainResourceContent(eventType, xpp, res)) 4098 unknownContent(xpp); 4099 eventType = nextNoWhitespace(xpp); 4100 } 4101 next(xpp); 4102 parseElementClose(res); 4103 return res; 4104 } 4105 4106 protected Conformance.ConformanceContactComponent parseConformanceConformanceContactComponent(XmlPullParser xpp, Conformance owner) throws XmlPullParserException, IOException, FHIRFormatError { 4107 Conformance.ConformanceContactComponent res = new Conformance.ConformanceContactComponent(); 4108 parseBackboneAttributes(xpp, res); 4109 next(xpp); 4110 int eventType = nextNoWhitespace(xpp); 4111 while (eventType != XmlPullParser.END_TAG) { 4112 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 4113 res.setNameElement(parseString(xpp)); 4114 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 4115 res.getTelecom().add(parseContactPoint(xpp)); 4116 } else if (!parseBackboneContent(eventType, xpp, res)) 4117 unknownContent(xpp); 4118 eventType = nextNoWhitespace(xpp); 4119 } 4120 next(xpp); 4121 parseElementClose(res); 4122 return res; 4123 } 4124 4125 protected Conformance.ConformanceSoftwareComponent parseConformanceConformanceSoftwareComponent(XmlPullParser xpp, Conformance owner) throws XmlPullParserException, IOException, FHIRFormatError { 4126 Conformance.ConformanceSoftwareComponent res = new Conformance.ConformanceSoftwareComponent(); 4127 parseBackboneAttributes(xpp, res); 4128 next(xpp); 4129 int eventType = nextNoWhitespace(xpp); 4130 while (eventType != XmlPullParser.END_TAG) { 4131 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 4132 res.setNameElement(parseString(xpp)); 4133 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 4134 res.setVersionElement(parseString(xpp)); 4135 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("releaseDate")) { 4136 res.setReleaseDateElement(parseDateTime(xpp)); 4137 } else if (!parseBackboneContent(eventType, xpp, res)) 4138 unknownContent(xpp); 4139 eventType = nextNoWhitespace(xpp); 4140 } 4141 next(xpp); 4142 parseElementClose(res); 4143 return res; 4144 } 4145 4146 protected Conformance.ConformanceImplementationComponent parseConformanceConformanceImplementationComponent(XmlPullParser xpp, Conformance owner) throws XmlPullParserException, IOException, FHIRFormatError { 4147 Conformance.ConformanceImplementationComponent res = new Conformance.ConformanceImplementationComponent(); 4148 parseBackboneAttributes(xpp, res); 4149 next(xpp); 4150 int eventType = nextNoWhitespace(xpp); 4151 while (eventType != XmlPullParser.END_TAG) { 4152 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 4153 res.setDescriptionElement(parseString(xpp)); 4154 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 4155 res.setUrlElement(parseUri(xpp)); 4156 } else if (!parseBackboneContent(eventType, xpp, res)) 4157 unknownContent(xpp); 4158 eventType = nextNoWhitespace(xpp); 4159 } 4160 next(xpp); 4161 parseElementClose(res); 4162 return res; 4163 } 4164 4165 protected Conformance.ConformanceRestComponent parseConformanceConformanceRestComponent(XmlPullParser xpp, Conformance owner) throws XmlPullParserException, IOException, FHIRFormatError { 4166 Conformance.ConformanceRestComponent res = new Conformance.ConformanceRestComponent(); 4167 parseBackboneAttributes(xpp, res); 4168 next(xpp); 4169 int eventType = nextNoWhitespace(xpp); 4170 while (eventType != XmlPullParser.END_TAG) { 4171 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 4172 res.setModeElement(parseEnumeration(xpp, Conformance.RestfulConformanceMode.NULL, new Conformance.RestfulConformanceModeEnumFactory())); 4173 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 4174 res.setDocumentationElement(parseString(xpp)); 4175 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("security")) { 4176 res.setSecurity(parseConformanceConformanceRestSecurityComponent(xpp, owner)); 4177 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 4178 res.getResource().add(parseConformanceConformanceRestResourceComponent(xpp, owner)); 4179 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("interaction")) { 4180 res.getInteraction().add(parseConformanceSystemInteractionComponent(xpp, owner)); 4181 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("transactionMode")) { 4182 res.setTransactionModeElement(parseEnumeration(xpp, Conformance.TransactionMode.NULL, new Conformance.TransactionModeEnumFactory())); 4183 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("searchParam")) { 4184 res.getSearchParam().add(parseConformanceConformanceRestResourceSearchParamComponent(xpp, owner)); 4185 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operation")) { 4186 res.getOperation().add(parseConformanceConformanceRestOperationComponent(xpp, owner)); 4187 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("compartment")) { 4188 res.getCompartment().add(parseUri(xpp)); 4189 } else if (!parseBackboneContent(eventType, xpp, res)) 4190 unknownContent(xpp); 4191 eventType = nextNoWhitespace(xpp); 4192 } 4193 next(xpp); 4194 parseElementClose(res); 4195 return res; 4196 } 4197 4198 protected Conformance.ConformanceRestSecurityComponent parseConformanceConformanceRestSecurityComponent(XmlPullParser xpp, Conformance owner) throws XmlPullParserException, IOException, FHIRFormatError { 4199 Conformance.ConformanceRestSecurityComponent res = new Conformance.ConformanceRestSecurityComponent(); 4200 parseBackboneAttributes(xpp, res); 4201 next(xpp); 4202 int eventType = nextNoWhitespace(xpp); 4203 while (eventType != XmlPullParser.END_TAG) { 4204 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("cors")) { 4205 res.setCorsElement(parseBoolean(xpp)); 4206 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 4207 res.getService().add(parseCodeableConcept(xpp)); 4208 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 4209 res.setDescriptionElement(parseString(xpp)); 4210 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("certificate")) { 4211 res.getCertificate().add(parseConformanceConformanceRestSecurityCertificateComponent(xpp, owner)); 4212 } else if (!parseBackboneContent(eventType, xpp, res)) 4213 unknownContent(xpp); 4214 eventType = nextNoWhitespace(xpp); 4215 } 4216 next(xpp); 4217 parseElementClose(res); 4218 return res; 4219 } 4220 4221 protected Conformance.ConformanceRestSecurityCertificateComponent parseConformanceConformanceRestSecurityCertificateComponent(XmlPullParser xpp, Conformance owner) throws XmlPullParserException, IOException, FHIRFormatError { 4222 Conformance.ConformanceRestSecurityCertificateComponent res = new Conformance.ConformanceRestSecurityCertificateComponent(); 4223 parseBackboneAttributes(xpp, res); 4224 next(xpp); 4225 int eventType = nextNoWhitespace(xpp); 4226 while (eventType != XmlPullParser.END_TAG) { 4227 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 4228 res.setTypeElement(parseCode(xpp)); 4229 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("blob")) { 4230 res.setBlobElement(parseBase64Binary(xpp)); 4231 } else if (!parseBackboneContent(eventType, xpp, res)) 4232 unknownContent(xpp); 4233 eventType = nextNoWhitespace(xpp); 4234 } 4235 next(xpp); 4236 parseElementClose(res); 4237 return res; 4238 } 4239 4240 protected Conformance.ConformanceRestResourceComponent parseConformanceConformanceRestResourceComponent(XmlPullParser xpp, Conformance owner) throws XmlPullParserException, IOException, FHIRFormatError { 4241 Conformance.ConformanceRestResourceComponent res = new Conformance.ConformanceRestResourceComponent(); 4242 parseBackboneAttributes(xpp, res); 4243 next(xpp); 4244 int eventType = nextNoWhitespace(xpp); 4245 while (eventType != XmlPullParser.END_TAG) { 4246 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 4247 res.setTypeElement(parseCode(xpp)); 4248 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 4249 res.setProfile(parseReference(xpp)); 4250 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("interaction")) { 4251 res.getInteraction().add(parseConformanceResourceInteractionComponent(xpp, owner)); 4252 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("versioning")) { 4253 res.setVersioningElement(parseEnumeration(xpp, Conformance.ResourceVersionPolicy.NULL, new Conformance.ResourceVersionPolicyEnumFactory())); 4254 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("readHistory")) { 4255 res.setReadHistoryElement(parseBoolean(xpp)); 4256 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("updateCreate")) { 4257 res.setUpdateCreateElement(parseBoolean(xpp)); 4258 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("conditionalCreate")) { 4259 res.setConditionalCreateElement(parseBoolean(xpp)); 4260 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("conditionalUpdate")) { 4261 res.setConditionalUpdateElement(parseBoolean(xpp)); 4262 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("conditionalDelete")) { 4263 res.setConditionalDeleteElement(parseEnumeration(xpp, Conformance.ConditionalDeleteStatus.NULL, new Conformance.ConditionalDeleteStatusEnumFactory())); 4264 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("searchInclude")) { 4265 res.getSearchInclude().add(parseString(xpp)); 4266 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("searchRevInclude")) { 4267 res.getSearchRevInclude().add(parseString(xpp)); 4268 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("searchParam")) { 4269 res.getSearchParam().add(parseConformanceConformanceRestResourceSearchParamComponent(xpp, owner)); 4270 } else if (!parseBackboneContent(eventType, xpp, res)) 4271 unknownContent(xpp); 4272 eventType = nextNoWhitespace(xpp); 4273 } 4274 next(xpp); 4275 parseElementClose(res); 4276 return res; 4277 } 4278 4279 protected Conformance.ResourceInteractionComponent parseConformanceResourceInteractionComponent(XmlPullParser xpp, Conformance owner) throws XmlPullParserException, IOException, FHIRFormatError { 4280 Conformance.ResourceInteractionComponent res = new Conformance.ResourceInteractionComponent(); 4281 parseBackboneAttributes(xpp, res); 4282 next(xpp); 4283 int eventType = nextNoWhitespace(xpp); 4284 while (eventType != XmlPullParser.END_TAG) { 4285 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 4286 res.setCodeElement(parseEnumeration(xpp, Conformance.TypeRestfulInteraction.NULL, new Conformance.TypeRestfulInteractionEnumFactory())); 4287 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 4288 res.setDocumentationElement(parseString(xpp)); 4289 } else if (!parseBackboneContent(eventType, xpp, res)) 4290 unknownContent(xpp); 4291 eventType = nextNoWhitespace(xpp); 4292 } 4293 next(xpp); 4294 parseElementClose(res); 4295 return res; 4296 } 4297 4298 protected Conformance.ConformanceRestResourceSearchParamComponent parseConformanceConformanceRestResourceSearchParamComponent(XmlPullParser xpp, Conformance owner) throws XmlPullParserException, IOException, FHIRFormatError { 4299 Conformance.ConformanceRestResourceSearchParamComponent res = new Conformance.ConformanceRestResourceSearchParamComponent(); 4300 parseBackboneAttributes(xpp, res); 4301 next(xpp); 4302 int eventType = nextNoWhitespace(xpp); 4303 while (eventType != XmlPullParser.END_TAG) { 4304 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 4305 res.setNameElement(parseString(xpp)); 4306 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 4307 res.setDefinitionElement(parseUri(xpp)); 4308 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 4309 res.setTypeElement(parseEnumeration(xpp, Enumerations.SearchParamType.NULL, new Enumerations.SearchParamTypeEnumFactory())); 4310 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 4311 res.setDocumentationElement(parseString(xpp)); 4312 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 4313 res.getTarget().add(parseCode(xpp)); 4314 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 4315 res.getModifier().add(parseEnumeration(xpp, Conformance.SearchModifierCode.NULL, new Conformance.SearchModifierCodeEnumFactory())); 4316 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("chain")) { 4317 res.getChain().add(parseString(xpp)); 4318 } else if (!parseBackboneContent(eventType, xpp, res)) 4319 unknownContent(xpp); 4320 eventType = nextNoWhitespace(xpp); 4321 } 4322 next(xpp); 4323 parseElementClose(res); 4324 return res; 4325 } 4326 4327 protected Conformance.SystemInteractionComponent parseConformanceSystemInteractionComponent(XmlPullParser xpp, Conformance owner) throws XmlPullParserException, IOException, FHIRFormatError { 4328 Conformance.SystemInteractionComponent res = new Conformance.SystemInteractionComponent(); 4329 parseBackboneAttributes(xpp, res); 4330 next(xpp); 4331 int eventType = nextNoWhitespace(xpp); 4332 while (eventType != XmlPullParser.END_TAG) { 4333 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 4334 res.setCodeElement(parseEnumeration(xpp, Conformance.SystemRestfulInteraction.NULL, new Conformance.SystemRestfulInteractionEnumFactory())); 4335 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 4336 res.setDocumentationElement(parseString(xpp)); 4337 } else if (!parseBackboneContent(eventType, xpp, res)) 4338 unknownContent(xpp); 4339 eventType = nextNoWhitespace(xpp); 4340 } 4341 next(xpp); 4342 parseElementClose(res); 4343 return res; 4344 } 4345 4346 protected Conformance.ConformanceRestOperationComponent parseConformanceConformanceRestOperationComponent(XmlPullParser xpp, Conformance owner) throws XmlPullParserException, IOException, FHIRFormatError { 4347 Conformance.ConformanceRestOperationComponent res = new Conformance.ConformanceRestOperationComponent(); 4348 parseBackboneAttributes(xpp, res); 4349 next(xpp); 4350 int eventType = nextNoWhitespace(xpp); 4351 while (eventType != XmlPullParser.END_TAG) { 4352 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 4353 res.setNameElement(parseString(xpp)); 4354 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 4355 res.setDefinition(parseReference(xpp)); 4356 } else if (!parseBackboneContent(eventType, xpp, res)) 4357 unknownContent(xpp); 4358 eventType = nextNoWhitespace(xpp); 4359 } 4360 next(xpp); 4361 parseElementClose(res); 4362 return res; 4363 } 4364 4365 protected Conformance.ConformanceMessagingComponent parseConformanceConformanceMessagingComponent(XmlPullParser xpp, Conformance owner) throws XmlPullParserException, IOException, FHIRFormatError { 4366 Conformance.ConformanceMessagingComponent res = new Conformance.ConformanceMessagingComponent(); 4367 parseBackboneAttributes(xpp, res); 4368 next(xpp); 4369 int eventType = nextNoWhitespace(xpp); 4370 while (eventType != XmlPullParser.END_TAG) { 4371 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 4372 res.getEndpoint().add(parseConformanceConformanceMessagingEndpointComponent(xpp, owner)); 4373 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reliableCache")) { 4374 res.setReliableCacheElement(parseUnsignedInt(xpp)); 4375 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 4376 res.setDocumentationElement(parseString(xpp)); 4377 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 4378 res.getEvent().add(parseConformanceConformanceMessagingEventComponent(xpp, owner)); 4379 } else if (!parseBackboneContent(eventType, xpp, res)) 4380 unknownContent(xpp); 4381 eventType = nextNoWhitespace(xpp); 4382 } 4383 next(xpp); 4384 parseElementClose(res); 4385 return res; 4386 } 4387 4388 protected Conformance.ConformanceMessagingEndpointComponent parseConformanceConformanceMessagingEndpointComponent(XmlPullParser xpp, Conformance owner) throws XmlPullParserException, IOException, FHIRFormatError { 4389 Conformance.ConformanceMessagingEndpointComponent res = new Conformance.ConformanceMessagingEndpointComponent(); 4390 parseBackboneAttributes(xpp, res); 4391 next(xpp); 4392 int eventType = nextNoWhitespace(xpp); 4393 while (eventType != XmlPullParser.END_TAG) { 4394 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("protocol")) { 4395 res.setProtocol(parseCoding(xpp)); 4396 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 4397 res.setAddressElement(parseUri(xpp)); 4398 } else if (!parseBackboneContent(eventType, xpp, res)) 4399 unknownContent(xpp); 4400 eventType = nextNoWhitespace(xpp); 4401 } 4402 next(xpp); 4403 parseElementClose(res); 4404 return res; 4405 } 4406 4407 protected Conformance.ConformanceMessagingEventComponent parseConformanceConformanceMessagingEventComponent(XmlPullParser xpp, Conformance owner) throws XmlPullParserException, IOException, FHIRFormatError { 4408 Conformance.ConformanceMessagingEventComponent res = new Conformance.ConformanceMessagingEventComponent(); 4409 parseBackboneAttributes(xpp, res); 4410 next(xpp); 4411 int eventType = nextNoWhitespace(xpp); 4412 while (eventType != XmlPullParser.END_TAG) { 4413 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 4414 res.setCode(parseCoding(xpp)); 4415 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 4416 res.setCategoryElement(parseEnumeration(xpp, Conformance.MessageSignificanceCategory.NULL, new Conformance.MessageSignificanceCategoryEnumFactory())); 4417 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 4418 res.setModeElement(parseEnumeration(xpp, Conformance.ConformanceEventMode.NULL, new Conformance.ConformanceEventModeEnumFactory())); 4419 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focus")) { 4420 res.setFocusElement(parseCode(xpp)); 4421 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 4422 res.setRequest(parseReference(xpp)); 4423 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("response")) { 4424 res.setResponse(parseReference(xpp)); 4425 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 4426 res.setDocumentationElement(parseString(xpp)); 4427 } else if (!parseBackboneContent(eventType, xpp, res)) 4428 unknownContent(xpp); 4429 eventType = nextNoWhitespace(xpp); 4430 } 4431 next(xpp); 4432 parseElementClose(res); 4433 return res; 4434 } 4435 4436 protected Conformance.ConformanceDocumentComponent parseConformanceConformanceDocumentComponent(XmlPullParser xpp, Conformance owner) throws XmlPullParserException, IOException, FHIRFormatError { 4437 Conformance.ConformanceDocumentComponent res = new Conformance.ConformanceDocumentComponent(); 4438 parseBackboneAttributes(xpp, res); 4439 next(xpp); 4440 int eventType = nextNoWhitespace(xpp); 4441 while (eventType != XmlPullParser.END_TAG) { 4442 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 4443 res.setModeElement(parseEnumeration(xpp, Conformance.DocumentMode.NULL, new Conformance.DocumentModeEnumFactory())); 4444 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 4445 res.setDocumentationElement(parseString(xpp)); 4446 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 4447 res.setProfile(parseReference(xpp)); 4448 } else if (!parseBackboneContent(eventType, xpp, res)) 4449 unknownContent(xpp); 4450 eventType = nextNoWhitespace(xpp); 4451 } 4452 next(xpp); 4453 parseElementClose(res); 4454 return res; 4455 } 4456 4457 protected Contract parseContract(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4458 Contract res = new Contract(); 4459 parseDomainResourceAttributes(xpp, res); 4460 next(xpp); 4461 int eventType = nextNoWhitespace(xpp); 4462 while (eventType != XmlPullParser.END_TAG) { 4463 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4464 res.setIdentifier(parseIdentifier(xpp)); 4465 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issued")) { 4466 res.setIssuedElement(parseDateTime(xpp)); 4467 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("applies")) { 4468 res.setApplies(parsePeriod(xpp)); 4469 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 4470 res.getSubject().add(parseReference(xpp)); 4471 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { 4472 res.getTopic().add(parseReference(xpp)); 4473 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authority")) { 4474 res.getAuthority().add(parseReference(xpp)); 4475 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("domain")) { 4476 res.getDomain().add(parseReference(xpp)); 4477 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 4478 res.setType(parseCodeableConcept(xpp)); 4479 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subType")) { 4480 res.getSubType().add(parseCodeableConcept(xpp)); 4481 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 4482 res.getAction().add(parseCodeableConcept(xpp)); 4483 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actionReason")) { 4484 res.getActionReason().add(parseCodeableConcept(xpp)); 4485 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { 4486 res.getAgent().add(parseContractAgentComponent(xpp, res)); 4487 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("signer")) { 4488 res.getSigner().add(parseContractSignatoryComponent(xpp, res)); 4489 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valuedItem")) { 4490 res.getValuedItem().add(parseContractValuedItemComponent(xpp, res)); 4491 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("term")) { 4492 res.getTerm().add(parseContractTermComponent(xpp, res)); 4493 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "binding")) { 4494 res.setBinding(parseType("binding", xpp)); 4495 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("friendly")) { 4496 res.getFriendly().add(parseContractFriendlyLanguageComponent(xpp, res)); 4497 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("legal")) { 4498 res.getLegal().add(parseContractLegalLanguageComponent(xpp, res)); 4499 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rule")) { 4500 res.getRule().add(parseContractComputableLanguageComponent(xpp, res)); 4501 } else if (!parseDomainResourceContent(eventType, xpp, res)) 4502 unknownContent(xpp); 4503 eventType = nextNoWhitespace(xpp); 4504 } 4505 next(xpp); 4506 parseElementClose(res); 4507 return res; 4508 } 4509 4510 protected Contract.AgentComponent parseContractAgentComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 4511 Contract.AgentComponent res = new Contract.AgentComponent(); 4512 parseBackboneAttributes(xpp, res); 4513 next(xpp); 4514 int eventType = nextNoWhitespace(xpp); 4515 while (eventType != XmlPullParser.END_TAG) { 4516 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 4517 res.setActor(parseReference(xpp)); 4518 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 4519 res.getRole().add(parseCodeableConcept(xpp)); 4520 } else if (!parseBackboneContent(eventType, xpp, res)) 4521 unknownContent(xpp); 4522 eventType = nextNoWhitespace(xpp); 4523 } 4524 next(xpp); 4525 parseElementClose(res); 4526 return res; 4527 } 4528 4529 protected Contract.SignatoryComponent parseContractSignatoryComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 4530 Contract.SignatoryComponent res = new Contract.SignatoryComponent(); 4531 parseBackboneAttributes(xpp, res); 4532 next(xpp); 4533 int eventType = nextNoWhitespace(xpp); 4534 while (eventType != XmlPullParser.END_TAG) { 4535 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 4536 res.setType(parseCoding(xpp)); 4537 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("party")) { 4538 res.setParty(parseReference(xpp)); 4539 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("signature")) { 4540 res.getSignature().add(parseSignature(xpp)); 4541 } else if (!parseBackboneContent(eventType, xpp, res)) 4542 unknownContent(xpp); 4543 eventType = nextNoWhitespace(xpp); 4544 } 4545 next(xpp); 4546 parseElementClose(res); 4547 return res; 4548 } 4549 4550 protected Contract.ValuedItemComponent parseContractValuedItemComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 4551 Contract.ValuedItemComponent res = new Contract.ValuedItemComponent(); 4552 parseBackboneAttributes(xpp, res); 4553 next(xpp); 4554 int eventType = nextNoWhitespace(xpp); 4555 while (eventType != XmlPullParser.END_TAG) { 4556 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "entity")) { 4557 res.setEntity(parseType("entity", xpp)); 4558 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4559 res.setIdentifier(parseIdentifier(xpp)); 4560 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectiveTime")) { 4561 res.setEffectiveTimeElement(parseDateTime(xpp)); 4562 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 4563 res.setQuantity(parseSimpleQuantity(xpp)); 4564 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 4565 res.setUnitPrice(parseMoney(xpp)); 4566 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 4567 res.setFactorElement(parseDecimal(xpp)); 4568 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("points")) { 4569 res.setPointsElement(parseDecimal(xpp)); 4570 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 4571 res.setNet(parseMoney(xpp)); 4572 } else if (!parseBackboneContent(eventType, xpp, res)) 4573 unknownContent(xpp); 4574 eventType = nextNoWhitespace(xpp); 4575 } 4576 next(xpp); 4577 parseElementClose(res); 4578 return res; 4579 } 4580 4581 protected Contract.TermComponent parseContractTermComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 4582 Contract.TermComponent res = new Contract.TermComponent(); 4583 parseBackboneAttributes(xpp, res); 4584 next(xpp); 4585 int eventType = nextNoWhitespace(xpp); 4586 while (eventType != XmlPullParser.END_TAG) { 4587 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4588 res.setIdentifier(parseIdentifier(xpp)); 4589 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issued")) { 4590 res.setIssuedElement(parseDateTime(xpp)); 4591 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("applies")) { 4592 res.setApplies(parsePeriod(xpp)); 4593 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 4594 res.setType(parseCodeableConcept(xpp)); 4595 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subType")) { 4596 res.setSubType(parseCodeableConcept(xpp)); 4597 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { 4598 res.getTopic().add(parseReference(xpp)); 4599 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 4600 res.getAction().add(parseCodeableConcept(xpp)); 4601 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actionReason")) { 4602 res.getActionReason().add(parseCodeableConcept(xpp)); 4603 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { 4604 res.getAgent().add(parseContractTermAgentComponent(xpp, owner)); 4605 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 4606 res.setTextElement(parseString(xpp)); 4607 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valuedItem")) { 4608 res.getValuedItem().add(parseContractTermValuedItemComponent(xpp, owner)); 4609 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("group")) { 4610 res.getGroup().add(parseContractTermComponent(xpp, owner)); 4611 } else if (!parseBackboneContent(eventType, xpp, res)) 4612 unknownContent(xpp); 4613 eventType = nextNoWhitespace(xpp); 4614 } 4615 next(xpp); 4616 parseElementClose(res); 4617 return res; 4618 } 4619 4620 protected Contract.TermAgentComponent parseContractTermAgentComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 4621 Contract.TermAgentComponent res = new Contract.TermAgentComponent(); 4622 parseBackboneAttributes(xpp, res); 4623 next(xpp); 4624 int eventType = nextNoWhitespace(xpp); 4625 while (eventType != XmlPullParser.END_TAG) { 4626 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 4627 res.setActor(parseReference(xpp)); 4628 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 4629 res.getRole().add(parseCodeableConcept(xpp)); 4630 } else if (!parseBackboneContent(eventType, xpp, res)) 4631 unknownContent(xpp); 4632 eventType = nextNoWhitespace(xpp); 4633 } 4634 next(xpp); 4635 parseElementClose(res); 4636 return res; 4637 } 4638 4639 protected Contract.TermValuedItemComponent parseContractTermValuedItemComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 4640 Contract.TermValuedItemComponent res = new Contract.TermValuedItemComponent(); 4641 parseBackboneAttributes(xpp, res); 4642 next(xpp); 4643 int eventType = nextNoWhitespace(xpp); 4644 while (eventType != XmlPullParser.END_TAG) { 4645 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "entity")) { 4646 res.setEntity(parseType("entity", xpp)); 4647 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4648 res.setIdentifier(parseIdentifier(xpp)); 4649 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectiveTime")) { 4650 res.setEffectiveTimeElement(parseDateTime(xpp)); 4651 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 4652 res.setQuantity(parseSimpleQuantity(xpp)); 4653 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 4654 res.setUnitPrice(parseMoney(xpp)); 4655 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 4656 res.setFactorElement(parseDecimal(xpp)); 4657 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("points")) { 4658 res.setPointsElement(parseDecimal(xpp)); 4659 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 4660 res.setNet(parseMoney(xpp)); 4661 } else if (!parseBackboneContent(eventType, xpp, res)) 4662 unknownContent(xpp); 4663 eventType = nextNoWhitespace(xpp); 4664 } 4665 next(xpp); 4666 parseElementClose(res); 4667 return res; 4668 } 4669 4670 protected Contract.FriendlyLanguageComponent parseContractFriendlyLanguageComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 4671 Contract.FriendlyLanguageComponent res = new Contract.FriendlyLanguageComponent(); 4672 parseBackboneAttributes(xpp, res); 4673 next(xpp); 4674 int eventType = nextNoWhitespace(xpp); 4675 while (eventType != XmlPullParser.END_TAG) { 4676 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "content")) { 4677 res.setContent(parseType("content", xpp)); 4678 } else if (!parseBackboneContent(eventType, xpp, res)) 4679 unknownContent(xpp); 4680 eventType = nextNoWhitespace(xpp); 4681 } 4682 next(xpp); 4683 parseElementClose(res); 4684 return res; 4685 } 4686 4687 protected Contract.LegalLanguageComponent parseContractLegalLanguageComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 4688 Contract.LegalLanguageComponent res = new Contract.LegalLanguageComponent(); 4689 parseBackboneAttributes(xpp, res); 4690 next(xpp); 4691 int eventType = nextNoWhitespace(xpp); 4692 while (eventType != XmlPullParser.END_TAG) { 4693 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "content")) { 4694 res.setContent(parseType("content", xpp)); 4695 } else if (!parseBackboneContent(eventType, xpp, res)) 4696 unknownContent(xpp); 4697 eventType = nextNoWhitespace(xpp); 4698 } 4699 next(xpp); 4700 parseElementClose(res); 4701 return res; 4702 } 4703 4704 protected Contract.ComputableLanguageComponent parseContractComputableLanguageComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 4705 Contract.ComputableLanguageComponent res = new Contract.ComputableLanguageComponent(); 4706 parseBackboneAttributes(xpp, res); 4707 next(xpp); 4708 int eventType = nextNoWhitespace(xpp); 4709 while (eventType != XmlPullParser.END_TAG) { 4710 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "content")) { 4711 res.setContent(parseType("content", xpp)); 4712 } else if (!parseBackboneContent(eventType, xpp, res)) 4713 unknownContent(xpp); 4714 eventType = nextNoWhitespace(xpp); 4715 } 4716 next(xpp); 4717 parseElementClose(res); 4718 return res; 4719 } 4720 4721 protected Coverage parseCoverage(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4722 Coverage res = new Coverage(); 4723 parseDomainResourceAttributes(xpp, res); 4724 next(xpp); 4725 int eventType = nextNoWhitespace(xpp); 4726 while (eventType != XmlPullParser.END_TAG) { 4727 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "issuer")) { 4728 res.setIssuer(parseType("issuer", xpp)); 4729 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bin")) { 4730 res.setBinElement(parseString(xpp)); 4731 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 4732 res.setPeriod(parsePeriod(xpp)); 4733 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 4734 res.setType(parseCoding(xpp)); 4735 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "planholder")) { 4736 res.setPlanholder(parseType("planholder", xpp)); 4737 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "beneficiary")) { 4738 res.setBeneficiary(parseType("beneficiary", xpp)); 4739 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 4740 res.setRelationship(parseCoding(xpp)); 4741 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4742 res.getIdentifier().add(parseIdentifier(xpp)); 4743 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("group")) { 4744 res.setGroupElement(parseString(xpp)); 4745 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("plan")) { 4746 res.setPlanElement(parseString(xpp)); 4747 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subPlan")) { 4748 res.setSubPlanElement(parseString(xpp)); 4749 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dependent")) { 4750 res.setDependentElement(parsePositiveInt(xpp)); 4751 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 4752 res.setSequenceElement(parsePositiveInt(xpp)); 4753 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exception")) { 4754 res.getException().add(parseCoding(xpp)); 4755 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("school")) { 4756 res.setSchoolElement(parseString(xpp)); 4757 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("network")) { 4758 res.setNetworkElement(parseString(xpp)); 4759 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contract")) { 4760 res.getContract().add(parseReference(xpp)); 4761 } else if (!parseDomainResourceContent(eventType, xpp, res)) 4762 unknownContent(xpp); 4763 eventType = nextNoWhitespace(xpp); 4764 } 4765 next(xpp); 4766 parseElementClose(res); 4767 return res; 4768 } 4769 4770 protected DataElement parseDataElement(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4771 DataElement res = new DataElement(); 4772 parseDomainResourceAttributes(xpp, res); 4773 next(xpp); 4774 int eventType = nextNoWhitespace(xpp); 4775 while (eventType != XmlPullParser.END_TAG) { 4776 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 4777 res.setUrlElement(parseUri(xpp)); 4778 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4779 res.getIdentifier().add(parseIdentifier(xpp)); 4780 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 4781 res.setVersionElement(parseString(xpp)); 4782 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 4783 res.setStatusElement(parseEnumeration(xpp, Enumerations.ConformanceResourceStatus.NULL, new Enumerations.ConformanceResourceStatusEnumFactory())); 4784 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 4785 res.setExperimentalElement(parseBoolean(xpp)); 4786 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 4787 res.setPublisherElement(parseString(xpp)); 4788 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 4789 res.setDateElement(parseDateTime(xpp)); 4790 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 4791 res.setNameElement(parseString(xpp)); 4792 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 4793 res.getContact().add(parseDataElementDataElementContactComponent(xpp, res)); 4794 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 4795 res.getUseContext().add(parseCodeableConcept(xpp)); 4796 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 4797 res.setCopyrightElement(parseString(xpp)); 4798 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("stringency")) { 4799 res.setStringencyElement(parseEnumeration(xpp, DataElement.DataElementStringency.NULL, new DataElement.DataElementStringencyEnumFactory())); 4800 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mapping")) { 4801 res.getMapping().add(parseDataElementDataElementMappingComponent(xpp, res)); 4802 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("element")) { 4803 res.getElement().add(parseElementDefinition(xpp)); 4804 } else if (!parseDomainResourceContent(eventType, xpp, res)) 4805 unknownContent(xpp); 4806 eventType = nextNoWhitespace(xpp); 4807 } 4808 next(xpp); 4809 parseElementClose(res); 4810 return res; 4811 } 4812 4813 protected DataElement.DataElementContactComponent parseDataElementDataElementContactComponent(XmlPullParser xpp, DataElement owner) throws XmlPullParserException, IOException, FHIRFormatError { 4814 DataElement.DataElementContactComponent res = new DataElement.DataElementContactComponent(); 4815 parseBackboneAttributes(xpp, res); 4816 next(xpp); 4817 int eventType = nextNoWhitespace(xpp); 4818 while (eventType != XmlPullParser.END_TAG) { 4819 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 4820 res.setNameElement(parseString(xpp)); 4821 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 4822 res.getTelecom().add(parseContactPoint(xpp)); 4823 } else if (!parseBackboneContent(eventType, xpp, res)) 4824 unknownContent(xpp); 4825 eventType = nextNoWhitespace(xpp); 4826 } 4827 next(xpp); 4828 parseElementClose(res); 4829 return res; 4830 } 4831 4832 protected DataElement.DataElementMappingComponent parseDataElementDataElementMappingComponent(XmlPullParser xpp, DataElement owner) throws XmlPullParserException, IOException, FHIRFormatError { 4833 DataElement.DataElementMappingComponent res = new DataElement.DataElementMappingComponent(); 4834 parseBackboneAttributes(xpp, res); 4835 next(xpp); 4836 int eventType = nextNoWhitespace(xpp); 4837 while (eventType != XmlPullParser.END_TAG) { 4838 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identity")) { 4839 res.setIdentityElement(parseId(xpp)); 4840 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uri")) { 4841 res.setUriElement(parseUri(xpp)); 4842 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 4843 res.setNameElement(parseString(xpp)); 4844 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 4845 res.setCommentElement(parseString(xpp)); 4846 } else if (!parseBackboneContent(eventType, xpp, res)) 4847 unknownContent(xpp); 4848 eventType = nextNoWhitespace(xpp); 4849 } 4850 next(xpp); 4851 parseElementClose(res); 4852 return res; 4853 } 4854 4855 protected DecisionSupportRule parseDecisionSupportRule(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4856 DecisionSupportRule res = new DecisionSupportRule(); 4857 parseDomainResourceAttributes(xpp, res); 4858 next(xpp); 4859 int eventType = nextNoWhitespace(xpp); 4860 while (eventType != XmlPullParser.END_TAG) { 4861 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("moduleMetadata")) { 4862 res.setModuleMetadata(parseModuleMetadata(xpp)); 4863 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("library")) { 4864 res.getLibrary().add(parseReference(xpp)); 4865 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("trigger")) { 4866 res.getTrigger().add(parseTriggerDefinition(xpp)); 4867 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 4868 res.setConditionElement(parseString(xpp)); 4869 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 4870 res.getAction().add(parseActionDefinition(xpp)); 4871 } else if (!parseDomainResourceContent(eventType, xpp, res)) 4872 unknownContent(xpp); 4873 eventType = nextNoWhitespace(xpp); 4874 } 4875 next(xpp); 4876 parseElementClose(res); 4877 return res; 4878 } 4879 4880 protected DecisionSupportServiceModule parseDecisionSupportServiceModule(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4881 DecisionSupportServiceModule res = new DecisionSupportServiceModule(); 4882 parseDomainResourceAttributes(xpp, res); 4883 next(xpp); 4884 int eventType = nextNoWhitespace(xpp); 4885 while (eventType != XmlPullParser.END_TAG) { 4886 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("moduleMetadata")) { 4887 res.setModuleMetadata(parseModuleMetadata(xpp)); 4888 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("trigger")) { 4889 res.getTrigger().add(parseTriggerDefinition(xpp)); 4890 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameter")) { 4891 res.getParameter().add(parseParameterDefinition(xpp)); 4892 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dataRequirement")) { 4893 res.getDataRequirement().add(parseDataRequirement(xpp)); 4894 } else if (!parseDomainResourceContent(eventType, xpp, res)) 4895 unknownContent(xpp); 4896 eventType = nextNoWhitespace(xpp); 4897 } 4898 next(xpp); 4899 parseElementClose(res); 4900 return res; 4901 } 4902 4903 protected DetectedIssue parseDetectedIssue(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4904 DetectedIssue res = new DetectedIssue(); 4905 parseDomainResourceAttributes(xpp, res); 4906 next(xpp); 4907 int eventType = nextNoWhitespace(xpp); 4908 while (eventType != XmlPullParser.END_TAG) { 4909 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 4910 res.setPatient(parseReference(xpp)); 4911 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 4912 res.setCategory(parseCodeableConcept(xpp)); 4913 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("severity")) { 4914 res.setSeverityElement(parseEnumeration(xpp, DetectedIssue.DetectedIssueSeverity.NULL, new DetectedIssue.DetectedIssueSeverityEnumFactory())); 4915 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("implicated")) { 4916 res.getImplicated().add(parseReference(xpp)); 4917 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 4918 res.setDetailElement(parseString(xpp)); 4919 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 4920 res.setDateElement(parseDateTime(xpp)); 4921 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 4922 res.setAuthor(parseReference(xpp)); 4923 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4924 res.setIdentifier(parseIdentifier(xpp)); 4925 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 4926 res.setReferenceElement(parseUri(xpp)); 4927 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mitigation")) { 4928 res.getMitigation().add(parseDetectedIssueDetectedIssueMitigationComponent(xpp, res)); 4929 } else if (!parseDomainResourceContent(eventType, xpp, res)) 4930 unknownContent(xpp); 4931 eventType = nextNoWhitespace(xpp); 4932 } 4933 next(xpp); 4934 parseElementClose(res); 4935 return res; 4936 } 4937 4938 protected DetectedIssue.DetectedIssueMitigationComponent parseDetectedIssueDetectedIssueMitigationComponent(XmlPullParser xpp, DetectedIssue owner) throws XmlPullParserException, IOException, FHIRFormatError { 4939 DetectedIssue.DetectedIssueMitigationComponent res = new DetectedIssue.DetectedIssueMitigationComponent(); 4940 parseBackboneAttributes(xpp, res); 4941 next(xpp); 4942 int eventType = nextNoWhitespace(xpp); 4943 while (eventType != XmlPullParser.END_TAG) { 4944 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 4945 res.setAction(parseCodeableConcept(xpp)); 4946 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 4947 res.setDateElement(parseDateTime(xpp)); 4948 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 4949 res.setAuthor(parseReference(xpp)); 4950 } else if (!parseBackboneContent(eventType, xpp, res)) 4951 unknownContent(xpp); 4952 eventType = nextNoWhitespace(xpp); 4953 } 4954 next(xpp); 4955 parseElementClose(res); 4956 return res; 4957 } 4958 4959 protected Device parseDevice(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4960 Device res = new Device(); 4961 parseDomainResourceAttributes(xpp, res); 4962 next(xpp); 4963 int eventType = nextNoWhitespace(xpp); 4964 while (eventType != XmlPullParser.END_TAG) { 4965 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4966 res.getIdentifier().add(parseIdentifier(xpp)); 4967 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udiCarrier")) { 4968 res.setUdiCarrier(parseIdentifier(xpp)); 4969 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 4970 res.setStatusElement(parseEnumeration(xpp, Device.DeviceStatus.NULL, new Device.DeviceStatusEnumFactory())); 4971 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 4972 res.setType(parseCodeableConcept(xpp)); 4973 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lotNumber")) { 4974 res.setLotNumberElement(parseString(xpp)); 4975 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manufacturer")) { 4976 res.setManufacturerElement(parseString(xpp)); 4977 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manufactureDate")) { 4978 res.setManufactureDateElement(parseDateTime(xpp)); 4979 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expirationDate")) { 4980 res.setExpirationDateElement(parseDateTime(xpp)); 4981 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("model")) { 4982 res.setModelElement(parseString(xpp)); 4983 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 4984 res.setVersionElement(parseString(xpp)); 4985 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 4986 res.setPatient(parseReference(xpp)); 4987 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("owner")) { 4988 res.setOwner(parseReference(xpp)); 4989 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 4990 res.getContact().add(parseContactPoint(xpp)); 4991 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 4992 res.setLocation(parseReference(xpp)); 4993 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 4994 res.setUrlElement(parseUri(xpp)); 4995 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 4996 res.getNote().add(parseAnnotation(xpp)); 4997 } else if (!parseDomainResourceContent(eventType, xpp, res)) 4998 unknownContent(xpp); 4999 eventType = nextNoWhitespace(xpp); 5000 } 5001 next(xpp); 5002 parseElementClose(res); 5003 return res; 5004 } 5005 5006 protected DeviceComponent parseDeviceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5007 DeviceComponent res = new DeviceComponent(); 5008 parseDomainResourceAttributes(xpp, res); 5009 next(xpp); 5010 int eventType = nextNoWhitespace(xpp); 5011 while (eventType != XmlPullParser.END_TAG) { 5012 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 5013 res.setType(parseCodeableConcept(xpp)); 5014 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5015 res.setIdentifier(parseIdentifier(xpp)); 5016 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastSystemChange")) { 5017 res.setLastSystemChangeElement(parseInstant(xpp)); 5018 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 5019 res.setSource(parseReference(xpp)); 5020 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parent")) { 5021 res.setParent(parseReference(xpp)); 5022 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operationalStatus")) { 5023 res.getOperationalStatus().add(parseCodeableConcept(xpp)); 5024 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameterGroup")) { 5025 res.setParameterGroup(parseCodeableConcept(xpp)); 5026 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("measurementPrinciple")) { 5027 res.setMeasurementPrincipleElement(parseEnumeration(xpp, DeviceComponent.MeasmntPrinciple.NULL, new DeviceComponent.MeasmntPrincipleEnumFactory())); 5028 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productionSpecification")) { 5029 res.getProductionSpecification().add(parseDeviceComponentDeviceComponentProductionSpecificationComponent(xpp, res)); 5030 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("languageCode")) { 5031 res.setLanguageCode(parseCodeableConcept(xpp)); 5032 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5033 unknownContent(xpp); 5034 eventType = nextNoWhitespace(xpp); 5035 } 5036 next(xpp); 5037 parseElementClose(res); 5038 return res; 5039 } 5040 5041 protected DeviceComponent.DeviceComponentProductionSpecificationComponent parseDeviceComponentDeviceComponentProductionSpecificationComponent(XmlPullParser xpp, DeviceComponent owner) throws XmlPullParserException, IOException, FHIRFormatError { 5042 DeviceComponent.DeviceComponentProductionSpecificationComponent res = new DeviceComponent.DeviceComponentProductionSpecificationComponent(); 5043 parseBackboneAttributes(xpp, res); 5044 next(xpp); 5045 int eventType = nextNoWhitespace(xpp); 5046 while (eventType != XmlPullParser.END_TAG) { 5047 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specType")) { 5048 res.setSpecType(parseCodeableConcept(xpp)); 5049 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("componentId")) { 5050 res.setComponentId(parseIdentifier(xpp)); 5051 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productionSpec")) { 5052 res.setProductionSpecElement(parseString(xpp)); 5053 } else if (!parseBackboneContent(eventType, xpp, res)) 5054 unknownContent(xpp); 5055 eventType = nextNoWhitespace(xpp); 5056 } 5057 next(xpp); 5058 parseElementClose(res); 5059 return res; 5060 } 5061 5062 protected DeviceMetric parseDeviceMetric(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5063 DeviceMetric res = new DeviceMetric(); 5064 parseDomainResourceAttributes(xpp, res); 5065 next(xpp); 5066 int eventType = nextNoWhitespace(xpp); 5067 while (eventType != XmlPullParser.END_TAG) { 5068 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 5069 res.setType(parseCodeableConcept(xpp)); 5070 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5071 res.setIdentifier(parseIdentifier(xpp)); 5072 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unit")) { 5073 res.setUnit(parseCodeableConcept(xpp)); 5074 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 5075 res.setSource(parseReference(xpp)); 5076 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parent")) { 5077 res.setParent(parseReference(xpp)); 5078 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operationalStatus")) { 5079 res.setOperationalStatusElement(parseEnumeration(xpp, DeviceMetric.DeviceMetricOperationalStatus.NULL, new DeviceMetric.DeviceMetricOperationalStatusEnumFactory())); 5080 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("color")) { 5081 res.setColorElement(parseEnumeration(xpp, DeviceMetric.DeviceMetricColor.NULL, new DeviceMetric.DeviceMetricColorEnumFactory())); 5082 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 5083 res.setCategoryElement(parseEnumeration(xpp, DeviceMetric.DeviceMetricCategory.NULL, new DeviceMetric.DeviceMetricCategoryEnumFactory())); 5084 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("measurementPeriod")) { 5085 res.setMeasurementPeriod(parseTiming(xpp)); 5086 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("calibration")) { 5087 res.getCalibration().add(parseDeviceMetricDeviceMetricCalibrationComponent(xpp, res)); 5088 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5089 unknownContent(xpp); 5090 eventType = nextNoWhitespace(xpp); 5091 } 5092 next(xpp); 5093 parseElementClose(res); 5094 return res; 5095 } 5096 5097 protected DeviceMetric.DeviceMetricCalibrationComponent parseDeviceMetricDeviceMetricCalibrationComponent(XmlPullParser xpp, DeviceMetric owner) throws XmlPullParserException, IOException, FHIRFormatError { 5098 DeviceMetric.DeviceMetricCalibrationComponent res = new DeviceMetric.DeviceMetricCalibrationComponent(); 5099 parseBackboneAttributes(xpp, res); 5100 next(xpp); 5101 int eventType = nextNoWhitespace(xpp); 5102 while (eventType != XmlPullParser.END_TAG) { 5103 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 5104 res.setTypeElement(parseEnumeration(xpp, DeviceMetric.DeviceMetricCalibrationType.NULL, new DeviceMetric.DeviceMetricCalibrationTypeEnumFactory())); 5105 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("state")) { 5106 res.setStateElement(parseEnumeration(xpp, DeviceMetric.DeviceMetricCalibrationState.NULL, new DeviceMetric.DeviceMetricCalibrationStateEnumFactory())); 5107 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("time")) { 5108 res.setTimeElement(parseInstant(xpp)); 5109 } else if (!parseBackboneContent(eventType, xpp, res)) 5110 unknownContent(xpp); 5111 eventType = nextNoWhitespace(xpp); 5112 } 5113 next(xpp); 5114 parseElementClose(res); 5115 return res; 5116 } 5117 5118 protected DeviceUseRequest parseDeviceUseRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5119 DeviceUseRequest res = new DeviceUseRequest(); 5120 parseDomainResourceAttributes(xpp, res); 5121 next(xpp); 5122 int eventType = nextNoWhitespace(xpp); 5123 while (eventType != XmlPullParser.END_TAG) { 5124 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "bodySite")) { 5125 res.setBodySite(parseType("bodySite", xpp)); 5126 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 5127 res.setStatusElement(parseEnumeration(xpp, DeviceUseRequest.DeviceUseRequestStatus.NULL, new DeviceUseRequest.DeviceUseRequestStatusEnumFactory())); 5128 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 5129 res.setDevice(parseReference(xpp)); 5130 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 5131 res.setEncounter(parseReference(xpp)); 5132 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5133 res.getIdentifier().add(parseIdentifier(xpp)); 5134 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("indication")) { 5135 res.getIndication().add(parseCodeableConcept(xpp)); 5136 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notes")) { 5137 res.getNotes().add(parseString(xpp)); 5138 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prnReason")) { 5139 res.getPrnReason().add(parseCodeableConcept(xpp)); 5140 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orderedOn")) { 5141 res.setOrderedOnElement(parseDateTime(xpp)); 5142 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recordedOn")) { 5143 res.setRecordedOnElement(parseDateTime(xpp)); 5144 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 5145 res.setSubject(parseReference(xpp)); 5146 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "timing")) { 5147 res.setTiming(parseType("timing", xpp)); 5148 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 5149 res.setPriorityElement(parseEnumeration(xpp, DeviceUseRequest.DeviceUseRequestPriority.NULL, new DeviceUseRequest.DeviceUseRequestPriorityEnumFactory())); 5150 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5151 unknownContent(xpp); 5152 eventType = nextNoWhitespace(xpp); 5153 } 5154 next(xpp); 5155 parseElementClose(res); 5156 return res; 5157 } 5158 5159 protected DeviceUseStatement parseDeviceUseStatement(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5160 DeviceUseStatement res = new DeviceUseStatement(); 5161 parseDomainResourceAttributes(xpp, res); 5162 next(xpp); 5163 int eventType = nextNoWhitespace(xpp); 5164 while (eventType != XmlPullParser.END_TAG) { 5165 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "bodySite")) { 5166 res.setBodySite(parseType("bodySite", xpp)); 5167 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("whenUsed")) { 5168 res.setWhenUsed(parsePeriod(xpp)); 5169 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 5170 res.setDevice(parseReference(xpp)); 5171 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5172 res.getIdentifier().add(parseIdentifier(xpp)); 5173 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("indication")) { 5174 res.getIndication().add(parseCodeableConcept(xpp)); 5175 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notes")) { 5176 res.getNotes().add(parseString(xpp)); 5177 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recordedOn")) { 5178 res.setRecordedOnElement(parseDateTime(xpp)); 5179 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 5180 res.setSubject(parseReference(xpp)); 5181 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "timing")) { 5182 res.setTiming(parseType("timing", xpp)); 5183 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5184 unknownContent(xpp); 5185 eventType = nextNoWhitespace(xpp); 5186 } 5187 next(xpp); 5188 parseElementClose(res); 5189 return res; 5190 } 5191 5192 protected DiagnosticOrder parseDiagnosticOrder(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5193 DiagnosticOrder res = new DiagnosticOrder(); 5194 parseDomainResourceAttributes(xpp, res); 5195 next(xpp); 5196 int eventType = nextNoWhitespace(xpp); 5197 while (eventType != XmlPullParser.END_TAG) { 5198 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5199 res.getIdentifier().add(parseIdentifier(xpp)); 5200 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 5201 res.setStatusElement(parseEnumeration(xpp, DiagnosticOrder.DiagnosticOrderStatus.NULL, new DiagnosticOrder.DiagnosticOrderStatusEnumFactory())); 5202 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 5203 res.setPriorityElement(parseEnumeration(xpp, DiagnosticOrder.DiagnosticOrderPriority.NULL, new DiagnosticOrder.DiagnosticOrderPriorityEnumFactory())); 5204 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 5205 res.setSubject(parseReference(xpp)); 5206 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 5207 res.setEncounter(parseReference(xpp)); 5208 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orderer")) { 5209 res.setOrderer(parseReference(xpp)); 5210 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 5211 res.getReason().add(parseCodeableConcept(xpp)); 5212 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInformation")) { 5213 res.getSupportingInformation().add(parseReference(xpp)); 5214 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specimen")) { 5215 res.getSpecimen().add(parseReference(xpp)); 5216 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 5217 res.getEvent().add(parseDiagnosticOrderDiagnosticOrderEventComponent(xpp, res)); 5218 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 5219 res.getItem().add(parseDiagnosticOrderDiagnosticOrderItemComponent(xpp, res)); 5220 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 5221 res.getNote().add(parseAnnotation(xpp)); 5222 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5223 unknownContent(xpp); 5224 eventType = nextNoWhitespace(xpp); 5225 } 5226 next(xpp); 5227 parseElementClose(res); 5228 return res; 5229 } 5230 5231 protected DiagnosticOrder.DiagnosticOrderEventComponent parseDiagnosticOrderDiagnosticOrderEventComponent(XmlPullParser xpp, DiagnosticOrder owner) throws XmlPullParserException, IOException, FHIRFormatError { 5232 DiagnosticOrder.DiagnosticOrderEventComponent res = new DiagnosticOrder.DiagnosticOrderEventComponent(); 5233 parseBackboneAttributes(xpp, res); 5234 next(xpp); 5235 int eventType = nextNoWhitespace(xpp); 5236 while (eventType != XmlPullParser.END_TAG) { 5237 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 5238 res.setStatusElement(parseEnumeration(xpp, DiagnosticOrder.DiagnosticOrderStatus.NULL, new DiagnosticOrder.DiagnosticOrderStatusEnumFactory())); 5239 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 5240 res.setDescription(parseCodeableConcept(xpp)); 5241 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateTime")) { 5242 res.setDateTimeElement(parseDateTime(xpp)); 5243 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 5244 res.setActor(parseReference(xpp)); 5245 } else if (!parseBackboneContent(eventType, xpp, res)) 5246 unknownContent(xpp); 5247 eventType = nextNoWhitespace(xpp); 5248 } 5249 next(xpp); 5250 parseElementClose(res); 5251 return res; 5252 } 5253 5254 protected DiagnosticOrder.DiagnosticOrderItemComponent parseDiagnosticOrderDiagnosticOrderItemComponent(XmlPullParser xpp, DiagnosticOrder owner) throws XmlPullParserException, IOException, FHIRFormatError { 5255 DiagnosticOrder.DiagnosticOrderItemComponent res = new DiagnosticOrder.DiagnosticOrderItemComponent(); 5256 parseBackboneAttributes(xpp, res); 5257 next(xpp); 5258 int eventType = nextNoWhitespace(xpp); 5259 while (eventType != XmlPullParser.END_TAG) { 5260 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 5261 res.setCode(parseCodeableConcept(xpp)); 5262 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specimen")) { 5263 res.getSpecimen().add(parseReference(xpp)); 5264 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 5265 res.setBodySite(parseCodeableConcept(xpp)); 5266 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 5267 res.setStatusElement(parseEnumeration(xpp, DiagnosticOrder.DiagnosticOrderStatus.NULL, new DiagnosticOrder.DiagnosticOrderStatusEnumFactory())); 5268 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 5269 res.getEvent().add(parseDiagnosticOrderDiagnosticOrderEventComponent(xpp, owner)); 5270 } else if (!parseBackboneContent(eventType, xpp, res)) 5271 unknownContent(xpp); 5272 eventType = nextNoWhitespace(xpp); 5273 } 5274 next(xpp); 5275 parseElementClose(res); 5276 return res; 5277 } 5278 5279 protected DiagnosticReport parseDiagnosticReport(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5280 DiagnosticReport res = new DiagnosticReport(); 5281 parseDomainResourceAttributes(xpp, res); 5282 next(xpp); 5283 int eventType = nextNoWhitespace(xpp); 5284 while (eventType != XmlPullParser.END_TAG) { 5285 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5286 res.getIdentifier().add(parseIdentifier(xpp)); 5287 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 5288 res.setStatusElement(parseEnumeration(xpp, DiagnosticReport.DiagnosticReportStatus.NULL, new DiagnosticReport.DiagnosticReportStatusEnumFactory())); 5289 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 5290 res.setCategory(parseCodeableConcept(xpp)); 5291 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 5292 res.setCode(parseCodeableConcept(xpp)); 5293 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 5294 res.setSubject(parseReference(xpp)); 5295 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 5296 res.setEncounter(parseReference(xpp)); 5297 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "effective")) { 5298 res.setEffective(parseType("effective", xpp)); 5299 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issued")) { 5300 res.setIssuedElement(parseInstant(xpp)); 5301 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 5302 res.setPerformer(parseReference(xpp)); 5303 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 5304 res.getRequest().add(parseReference(xpp)); 5305 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specimen")) { 5306 res.getSpecimen().add(parseReference(xpp)); 5307 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("result")) { 5308 res.getResult().add(parseReference(xpp)); 5309 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("imagingStudy")) { 5310 res.getImagingStudy().add(parseReference(xpp)); 5311 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("image")) { 5312 res.getImage().add(parseDiagnosticReportDiagnosticReportImageComponent(xpp, res)); 5313 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("conclusion")) { 5314 res.setConclusionElement(parseString(xpp)); 5315 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("codedDiagnosis")) { 5316 res.getCodedDiagnosis().add(parseCodeableConcept(xpp)); 5317 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("presentedForm")) { 5318 res.getPresentedForm().add(parseAttachment(xpp)); 5319 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5320 unknownContent(xpp); 5321 eventType = nextNoWhitespace(xpp); 5322 } 5323 next(xpp); 5324 parseElementClose(res); 5325 return res; 5326 } 5327 5328 protected DiagnosticReport.DiagnosticReportImageComponent parseDiagnosticReportDiagnosticReportImageComponent(XmlPullParser xpp, DiagnosticReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 5329 DiagnosticReport.DiagnosticReportImageComponent res = new DiagnosticReport.DiagnosticReportImageComponent(); 5330 parseBackboneAttributes(xpp, res); 5331 next(xpp); 5332 int eventType = nextNoWhitespace(xpp); 5333 while (eventType != XmlPullParser.END_TAG) { 5334 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 5335 res.setCommentElement(parseString(xpp)); 5336 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 5337 res.setLink(parseReference(xpp)); 5338 } else if (!parseBackboneContent(eventType, xpp, res)) 5339 unknownContent(xpp); 5340 eventType = nextNoWhitespace(xpp); 5341 } 5342 next(xpp); 5343 parseElementClose(res); 5344 return res; 5345 } 5346 5347 protected DocumentManifest parseDocumentManifest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5348 DocumentManifest res = new DocumentManifest(); 5349 parseDomainResourceAttributes(xpp, res); 5350 next(xpp); 5351 int eventType = nextNoWhitespace(xpp); 5352 while (eventType != XmlPullParser.END_TAG) { 5353 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("masterIdentifier")) { 5354 res.setMasterIdentifier(parseIdentifier(xpp)); 5355 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5356 res.getIdentifier().add(parseIdentifier(xpp)); 5357 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 5358 res.setSubject(parseReference(xpp)); 5359 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recipient")) { 5360 res.getRecipient().add(parseReference(xpp)); 5361 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 5362 res.setType(parseCodeableConcept(xpp)); 5363 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 5364 res.getAuthor().add(parseReference(xpp)); 5365 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 5366 res.setCreatedElement(parseDateTime(xpp)); 5367 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 5368 res.setSourceElement(parseUri(xpp)); 5369 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 5370 res.setStatusElement(parseEnumeration(xpp, Enumerations.DocumentReferenceStatus.NULL, new Enumerations.DocumentReferenceStatusEnumFactory())); 5371 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 5372 res.setDescriptionElement(parseString(xpp)); 5373 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 5374 res.getContent().add(parseDocumentManifestDocumentManifestContentComponent(xpp, res)); 5375 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("related")) { 5376 res.getRelated().add(parseDocumentManifestDocumentManifestRelatedComponent(xpp, res)); 5377 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5378 unknownContent(xpp); 5379 eventType = nextNoWhitespace(xpp); 5380 } 5381 next(xpp); 5382 parseElementClose(res); 5383 return res; 5384 } 5385 5386 protected DocumentManifest.DocumentManifestContentComponent parseDocumentManifestDocumentManifestContentComponent(XmlPullParser xpp, DocumentManifest owner) throws XmlPullParserException, IOException, FHIRFormatError { 5387 DocumentManifest.DocumentManifestContentComponent res = new DocumentManifest.DocumentManifestContentComponent(); 5388 parseBackboneAttributes(xpp, res); 5389 next(xpp); 5390 int eventType = nextNoWhitespace(xpp); 5391 while (eventType != XmlPullParser.END_TAG) { 5392 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "p")) { 5393 res.setP(parseType("p", xpp)); 5394 } else if (!parseBackboneContent(eventType, xpp, res)) 5395 unknownContent(xpp); 5396 eventType = nextNoWhitespace(xpp); 5397 } 5398 next(xpp); 5399 parseElementClose(res); 5400 return res; 5401 } 5402 5403 protected DocumentManifest.DocumentManifestRelatedComponent parseDocumentManifestDocumentManifestRelatedComponent(XmlPullParser xpp, DocumentManifest owner) throws XmlPullParserException, IOException, FHIRFormatError { 5404 DocumentManifest.DocumentManifestRelatedComponent res = new DocumentManifest.DocumentManifestRelatedComponent(); 5405 parseBackboneAttributes(xpp, res); 5406 next(xpp); 5407 int eventType = nextNoWhitespace(xpp); 5408 while (eventType != XmlPullParser.END_TAG) { 5409 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5410 res.setIdentifier(parseIdentifier(xpp)); 5411 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ref")) { 5412 res.setRef(parseReference(xpp)); 5413 } else if (!parseBackboneContent(eventType, xpp, res)) 5414 unknownContent(xpp); 5415 eventType = nextNoWhitespace(xpp); 5416 } 5417 next(xpp); 5418 parseElementClose(res); 5419 return res; 5420 } 5421 5422 protected DocumentReference parseDocumentReference(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5423 DocumentReference res = new DocumentReference(); 5424 parseDomainResourceAttributes(xpp, res); 5425 next(xpp); 5426 int eventType = nextNoWhitespace(xpp); 5427 while (eventType != XmlPullParser.END_TAG) { 5428 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("masterIdentifier")) { 5429 res.setMasterIdentifier(parseIdentifier(xpp)); 5430 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5431 res.getIdentifier().add(parseIdentifier(xpp)); 5432 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 5433 res.setSubject(parseReference(xpp)); 5434 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 5435 res.setType(parseCodeableConcept(xpp)); 5436 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("class")) { 5437 res.setClass_(parseCodeableConcept(xpp)); 5438 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 5439 res.getAuthor().add(parseReference(xpp)); 5440 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("custodian")) { 5441 res.setCustodian(parseReference(xpp)); 5442 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authenticator")) { 5443 res.setAuthenticator(parseReference(xpp)); 5444 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 5445 res.setCreatedElement(parseDateTime(xpp)); 5446 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("indexed")) { 5447 res.setIndexedElement(parseInstant(xpp)); 5448 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 5449 res.setStatusElement(parseEnumeration(xpp, Enumerations.DocumentReferenceStatus.NULL, new Enumerations.DocumentReferenceStatusEnumFactory())); 5450 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("docStatus")) { 5451 res.setDocStatus(parseCodeableConcept(xpp)); 5452 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatesTo")) { 5453 res.getRelatesTo().add(parseDocumentReferenceDocumentReferenceRelatesToComponent(xpp, res)); 5454 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 5455 res.setDescriptionElement(parseString(xpp)); 5456 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("securityLabel")) { 5457 res.getSecurityLabel().add(parseCodeableConcept(xpp)); 5458 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 5459 res.getContent().add(parseDocumentReferenceDocumentReferenceContentComponent(xpp, res)); 5460 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 5461 res.setContext(parseDocumentReferenceDocumentReferenceContextComponent(xpp, res)); 5462 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5463 unknownContent(xpp); 5464 eventType = nextNoWhitespace(xpp); 5465 } 5466 next(xpp); 5467 parseElementClose(res); 5468 return res; 5469 } 5470 5471 protected DocumentReference.DocumentReferenceRelatesToComponent parseDocumentReferenceDocumentReferenceRelatesToComponent(XmlPullParser xpp, DocumentReference owner) throws XmlPullParserException, IOException, FHIRFormatError { 5472 DocumentReference.DocumentReferenceRelatesToComponent res = new DocumentReference.DocumentReferenceRelatesToComponent(); 5473 parseBackboneAttributes(xpp, res); 5474 next(xpp); 5475 int eventType = nextNoWhitespace(xpp); 5476 while (eventType != XmlPullParser.END_TAG) { 5477 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 5478 res.setCodeElement(parseEnumeration(xpp, DocumentReference.DocumentRelationshipType.NULL, new DocumentReference.DocumentRelationshipTypeEnumFactory())); 5479 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 5480 res.setTarget(parseReference(xpp)); 5481 } else if (!parseBackboneContent(eventType, xpp, res)) 5482 unknownContent(xpp); 5483 eventType = nextNoWhitespace(xpp); 5484 } 5485 next(xpp); 5486 parseElementClose(res); 5487 return res; 5488 } 5489 5490 protected DocumentReference.DocumentReferenceContentComponent parseDocumentReferenceDocumentReferenceContentComponent(XmlPullParser xpp, DocumentReference owner) throws XmlPullParserException, IOException, FHIRFormatError { 5491 DocumentReference.DocumentReferenceContentComponent res = new DocumentReference.DocumentReferenceContentComponent(); 5492 parseBackboneAttributes(xpp, res); 5493 next(xpp); 5494 int eventType = nextNoWhitespace(xpp); 5495 while (eventType != XmlPullParser.END_TAG) { 5496 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("attachment")) { 5497 res.setAttachment(parseAttachment(xpp)); 5498 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("format")) { 5499 res.getFormat().add(parseCoding(xpp)); 5500 } else if (!parseBackboneContent(eventType, xpp, res)) 5501 unknownContent(xpp); 5502 eventType = nextNoWhitespace(xpp); 5503 } 5504 next(xpp); 5505 parseElementClose(res); 5506 return res; 5507 } 5508 5509 protected DocumentReference.DocumentReferenceContextComponent parseDocumentReferenceDocumentReferenceContextComponent(XmlPullParser xpp, DocumentReference owner) throws XmlPullParserException, IOException, FHIRFormatError { 5510 DocumentReference.DocumentReferenceContextComponent res = new DocumentReference.DocumentReferenceContextComponent(); 5511 parseBackboneAttributes(xpp, res); 5512 next(xpp); 5513 int eventType = nextNoWhitespace(xpp); 5514 while (eventType != XmlPullParser.END_TAG) { 5515 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 5516 res.setEncounter(parseReference(xpp)); 5517 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 5518 res.getEvent().add(parseCodeableConcept(xpp)); 5519 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 5520 res.setPeriod(parsePeriod(xpp)); 5521 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("facilityType")) { 5522 res.setFacilityType(parseCodeableConcept(xpp)); 5523 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("practiceSetting")) { 5524 res.setPracticeSetting(parseCodeableConcept(xpp)); 5525 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sourcePatientInfo")) { 5526 res.setSourcePatientInfo(parseReference(xpp)); 5527 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("related")) { 5528 res.getRelated().add(parseDocumentReferenceDocumentReferenceContextRelatedComponent(xpp, owner)); 5529 } else if (!parseBackboneContent(eventType, xpp, res)) 5530 unknownContent(xpp); 5531 eventType = nextNoWhitespace(xpp); 5532 } 5533 next(xpp); 5534 parseElementClose(res); 5535 return res; 5536 } 5537 5538 protected DocumentReference.DocumentReferenceContextRelatedComponent parseDocumentReferenceDocumentReferenceContextRelatedComponent(XmlPullParser xpp, DocumentReference owner) throws XmlPullParserException, IOException, FHIRFormatError { 5539 DocumentReference.DocumentReferenceContextRelatedComponent res = new DocumentReference.DocumentReferenceContextRelatedComponent(); 5540 parseBackboneAttributes(xpp, res); 5541 next(xpp); 5542 int eventType = nextNoWhitespace(xpp); 5543 while (eventType != XmlPullParser.END_TAG) { 5544 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5545 res.setIdentifier(parseIdentifier(xpp)); 5546 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ref")) { 5547 res.setRef(parseReference(xpp)); 5548 } else if (!parseBackboneContent(eventType, xpp, res)) 5549 unknownContent(xpp); 5550 eventType = nextNoWhitespace(xpp); 5551 } 5552 next(xpp); 5553 parseElementClose(res); 5554 return res; 5555 } 5556 5557 protected EligibilityRequest parseEligibilityRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5558 EligibilityRequest res = new EligibilityRequest(); 5559 parseDomainResourceAttributes(xpp, res); 5560 next(xpp); 5561 int eventType = nextNoWhitespace(xpp); 5562 while (eventType != XmlPullParser.END_TAG) { 5563 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5564 res.getIdentifier().add(parseIdentifier(xpp)); 5565 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleset")) { 5566 res.setRuleset(parseCoding(xpp)); 5567 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("originalRuleset")) { 5568 res.setOriginalRuleset(parseCoding(xpp)); 5569 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 5570 res.setCreatedElement(parseDateTime(xpp)); 5571 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "target")) { 5572 res.setTarget(parseType("target", xpp)); 5573 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "provider")) { 5574 res.setProvider(parseType("provider", xpp)); 5575 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "organization")) { 5576 res.setOrganization(parseType("organization", xpp)); 5577 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 5578 res.setPriority(parseCoding(xpp)); 5579 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "enterer")) { 5580 res.setEnterer(parseType("enterer", xpp)); 5581 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "facility")) { 5582 res.setFacility(parseType("facility", xpp)); 5583 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "patient")) { 5584 res.setPatient(parseType("patient", xpp)); 5585 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "coverage")) { 5586 res.setCoverage(parseType("coverage", xpp)); 5587 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("businessArrangement")) { 5588 res.setBusinessArrangementElement(parseString(xpp)); 5589 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "serviced")) { 5590 res.setServiced(parseType("serviced", xpp)); 5591 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("benefitCategory")) { 5592 res.setBenefitCategory(parseCoding(xpp)); 5593 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("benefitSubCategory")) { 5594 res.setBenefitSubCategory(parseCoding(xpp)); 5595 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5596 unknownContent(xpp); 5597 eventType = nextNoWhitespace(xpp); 5598 } 5599 next(xpp); 5600 parseElementClose(res); 5601 return res; 5602 } 5603 5604 protected EligibilityResponse parseEligibilityResponse(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5605 EligibilityResponse res = new EligibilityResponse(); 5606 parseDomainResourceAttributes(xpp, res); 5607 next(xpp); 5608 int eventType = nextNoWhitespace(xpp); 5609 while (eventType != XmlPullParser.END_TAG) { 5610 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5611 res.getIdentifier().add(parseIdentifier(xpp)); 5612 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "request")) { 5613 res.setRequest(parseType("request", xpp)); 5614 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 5615 res.setOutcomeElement(parseEnumeration(xpp, Enumerations.RemittanceOutcome.NULL, new Enumerations.RemittanceOutcomeEnumFactory())); 5616 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disposition")) { 5617 res.setDispositionElement(parseString(xpp)); 5618 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleset")) { 5619 res.setRuleset(parseCoding(xpp)); 5620 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("originalRuleset")) { 5621 res.setOriginalRuleset(parseCoding(xpp)); 5622 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 5623 res.setCreatedElement(parseDateTime(xpp)); 5624 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "organization")) { 5625 res.setOrganization(parseType("organization", xpp)); 5626 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "requestProvider")) { 5627 res.setRequestProvider(parseType("requestProvider", xpp)); 5628 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "requestOrganization")) { 5629 res.setRequestOrganization(parseType("requestOrganization", xpp)); 5630 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("inforce")) { 5631 res.setInforceElement(parseBoolean(xpp)); 5632 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contract")) { 5633 res.setContract(parseReference(xpp)); 5634 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("form")) { 5635 res.setForm(parseCoding(xpp)); 5636 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("benefitBalance")) { 5637 res.getBenefitBalance().add(parseEligibilityResponseBenefitsComponent(xpp, res)); 5638 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("error")) { 5639 res.getError().add(parseEligibilityResponseErrorsComponent(xpp, res)); 5640 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5641 unknownContent(xpp); 5642 eventType = nextNoWhitespace(xpp); 5643 } 5644 next(xpp); 5645 parseElementClose(res); 5646 return res; 5647 } 5648 5649 protected EligibilityResponse.BenefitsComponent parseEligibilityResponseBenefitsComponent(XmlPullParser xpp, EligibilityResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 5650 EligibilityResponse.BenefitsComponent res = new EligibilityResponse.BenefitsComponent(); 5651 parseBackboneAttributes(xpp, res); 5652 next(xpp); 5653 int eventType = nextNoWhitespace(xpp); 5654 while (eventType != XmlPullParser.END_TAG) { 5655 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 5656 res.setCategory(parseCoding(xpp)); 5657 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subCategory")) { 5658 res.setSubCategory(parseCoding(xpp)); 5659 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("network")) { 5660 res.setNetwork(parseCoding(xpp)); 5661 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unit")) { 5662 res.setUnit(parseCoding(xpp)); 5663 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("term")) { 5664 res.setTerm(parseCoding(xpp)); 5665 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("financial")) { 5666 res.getFinancial().add(parseEligibilityResponseBenefitComponent(xpp, owner)); 5667 } else if (!parseBackboneContent(eventType, xpp, res)) 5668 unknownContent(xpp); 5669 eventType = nextNoWhitespace(xpp); 5670 } 5671 next(xpp); 5672 parseElementClose(res); 5673 return res; 5674 } 5675 5676 protected EligibilityResponse.BenefitComponent parseEligibilityResponseBenefitComponent(XmlPullParser xpp, EligibilityResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 5677 EligibilityResponse.BenefitComponent res = new EligibilityResponse.BenefitComponent(); 5678 parseBackboneAttributes(xpp, res); 5679 next(xpp); 5680 int eventType = nextNoWhitespace(xpp); 5681 while (eventType != XmlPullParser.END_TAG) { 5682 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 5683 res.setType(parseCoding(xpp)); 5684 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "benefit")) { 5685 res.setBenefit(parseType("benefit", xpp)); 5686 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "benefitUsed")) { 5687 res.setBenefitUsed(parseType("benefitUsed", xpp)); 5688 } else if (!parseBackboneContent(eventType, xpp, res)) 5689 unknownContent(xpp); 5690 eventType = nextNoWhitespace(xpp); 5691 } 5692 next(xpp); 5693 parseElementClose(res); 5694 return res; 5695 } 5696 5697 protected EligibilityResponse.ErrorsComponent parseEligibilityResponseErrorsComponent(XmlPullParser xpp, EligibilityResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 5698 EligibilityResponse.ErrorsComponent res = new EligibilityResponse.ErrorsComponent(); 5699 parseBackboneAttributes(xpp, res); 5700 next(xpp); 5701 int eventType = nextNoWhitespace(xpp); 5702 while (eventType != XmlPullParser.END_TAG) { 5703 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 5704 res.setCode(parseCoding(xpp)); 5705 } else if (!parseBackboneContent(eventType, xpp, res)) 5706 unknownContent(xpp); 5707 eventType = nextNoWhitespace(xpp); 5708 } 5709 next(xpp); 5710 parseElementClose(res); 5711 return res; 5712 } 5713 5714 protected Encounter parseEncounter(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5715 Encounter res = new Encounter(); 5716 parseDomainResourceAttributes(xpp, res); 5717 next(xpp); 5718 int eventType = nextNoWhitespace(xpp); 5719 while (eventType != XmlPullParser.END_TAG) { 5720 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5721 res.getIdentifier().add(parseIdentifier(xpp)); 5722 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 5723 res.setStatusElement(parseEnumeration(xpp, Encounter.EncounterState.NULL, new Encounter.EncounterStateEnumFactory())); 5724 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusHistory")) { 5725 res.getStatusHistory().add(parseEncounterEncounterStatusHistoryComponent(xpp, res)); 5726 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("class")) { 5727 res.setClass_Element(parseEnumeration(xpp, Encounter.EncounterClass.NULL, new Encounter.EncounterClassEnumFactory())); 5728 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 5729 res.getType().add(parseCodeableConcept(xpp)); 5730 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 5731 res.setPriority(parseCodeableConcept(xpp)); 5732 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 5733 res.setPatient(parseReference(xpp)); 5734 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("episodeOfCare")) { 5735 res.getEpisodeOfCare().add(parseReference(xpp)); 5736 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("incomingReferral")) { 5737 res.getIncomingReferral().add(parseReference(xpp)); 5738 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 5739 res.getParticipant().add(parseEncounterEncounterParticipantComponent(xpp, res)); 5740 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("appointment")) { 5741 res.setAppointment(parseReference(xpp)); 5742 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 5743 res.setPeriod(parsePeriod(xpp)); 5744 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("length")) { 5745 res.setLength(parseDuration(xpp)); 5746 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 5747 res.getReason().add(parseCodeableConcept(xpp)); 5748 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("indication")) { 5749 res.getIndication().add(parseReference(xpp)); 5750 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("hospitalization")) { 5751 res.setHospitalization(parseEncounterEncounterHospitalizationComponent(xpp, res)); 5752 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 5753 res.getLocation().add(parseEncounterEncounterLocationComponent(xpp, res)); 5754 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceProvider")) { 5755 res.setServiceProvider(parseReference(xpp)); 5756 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 5757 res.setPartOf(parseReference(xpp)); 5758 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5759 unknownContent(xpp); 5760 eventType = nextNoWhitespace(xpp); 5761 } 5762 next(xpp); 5763 parseElementClose(res); 5764 return res; 5765 } 5766 5767 protected Encounter.EncounterStatusHistoryComponent parseEncounterEncounterStatusHistoryComponent(XmlPullParser xpp, Encounter owner) throws XmlPullParserException, IOException, FHIRFormatError { 5768 Encounter.EncounterStatusHistoryComponent res = new Encounter.EncounterStatusHistoryComponent(); 5769 parseBackboneAttributes(xpp, res); 5770 next(xpp); 5771 int eventType = nextNoWhitespace(xpp); 5772 while (eventType != XmlPullParser.END_TAG) { 5773 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 5774 res.setStatusElement(parseEnumeration(xpp, Encounter.EncounterState.NULL, new Encounter.EncounterStateEnumFactory())); 5775 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 5776 res.setPeriod(parsePeriod(xpp)); 5777 } else if (!parseBackboneContent(eventType, xpp, res)) 5778 unknownContent(xpp); 5779 eventType = nextNoWhitespace(xpp); 5780 } 5781 next(xpp); 5782 parseElementClose(res); 5783 return res; 5784 } 5785 5786 protected Encounter.EncounterParticipantComponent parseEncounterEncounterParticipantComponent(XmlPullParser xpp, Encounter owner) throws XmlPullParserException, IOException, FHIRFormatError { 5787 Encounter.EncounterParticipantComponent res = new Encounter.EncounterParticipantComponent(); 5788 parseBackboneAttributes(xpp, res); 5789 next(xpp); 5790 int eventType = nextNoWhitespace(xpp); 5791 while (eventType != XmlPullParser.END_TAG) { 5792 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 5793 res.getType().add(parseCodeableConcept(xpp)); 5794 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 5795 res.setPeriod(parsePeriod(xpp)); 5796 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("individual")) { 5797 res.setIndividual(parseReference(xpp)); 5798 } else if (!parseBackboneContent(eventType, xpp, res)) 5799 unknownContent(xpp); 5800 eventType = nextNoWhitespace(xpp); 5801 } 5802 next(xpp); 5803 parseElementClose(res); 5804 return res; 5805 } 5806 5807 protected Encounter.EncounterHospitalizationComponent parseEncounterEncounterHospitalizationComponent(XmlPullParser xpp, Encounter owner) throws XmlPullParserException, IOException, FHIRFormatError { 5808 Encounter.EncounterHospitalizationComponent res = new Encounter.EncounterHospitalizationComponent(); 5809 parseBackboneAttributes(xpp, res); 5810 next(xpp); 5811 int eventType = nextNoWhitespace(xpp); 5812 while (eventType != XmlPullParser.END_TAG) { 5813 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preAdmissionIdentifier")) { 5814 res.setPreAdmissionIdentifier(parseIdentifier(xpp)); 5815 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("origin")) { 5816 res.setOrigin(parseReference(xpp)); 5817 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("admitSource")) { 5818 res.setAdmitSource(parseCodeableConcept(xpp)); 5819 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("admittingDiagnosis")) { 5820 res.getAdmittingDiagnosis().add(parseReference(xpp)); 5821 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reAdmission")) { 5822 res.setReAdmission(parseCodeableConcept(xpp)); 5823 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dietPreference")) { 5824 res.getDietPreference().add(parseCodeableConcept(xpp)); 5825 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialCourtesy")) { 5826 res.getSpecialCourtesy().add(parseCodeableConcept(xpp)); 5827 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialArrangement")) { 5828 res.getSpecialArrangement().add(parseCodeableConcept(xpp)); 5829 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 5830 res.setDestination(parseReference(xpp)); 5831 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dischargeDisposition")) { 5832 res.setDischargeDisposition(parseCodeableConcept(xpp)); 5833 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dischargeDiagnosis")) { 5834 res.getDischargeDiagnosis().add(parseReference(xpp)); 5835 } else if (!parseBackboneContent(eventType, xpp, res)) 5836 unknownContent(xpp); 5837 eventType = nextNoWhitespace(xpp); 5838 } 5839 next(xpp); 5840 parseElementClose(res); 5841 return res; 5842 } 5843 5844 protected Encounter.EncounterLocationComponent parseEncounterEncounterLocationComponent(XmlPullParser xpp, Encounter owner) throws XmlPullParserException, IOException, FHIRFormatError { 5845 Encounter.EncounterLocationComponent res = new Encounter.EncounterLocationComponent(); 5846 parseBackboneAttributes(xpp, res); 5847 next(xpp); 5848 int eventType = nextNoWhitespace(xpp); 5849 while (eventType != XmlPullParser.END_TAG) { 5850 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 5851 res.setLocation(parseReference(xpp)); 5852 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 5853 res.setStatusElement(parseEnumeration(xpp, Encounter.EncounterLocationStatus.NULL, new Encounter.EncounterLocationStatusEnumFactory())); 5854 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 5855 res.setPeriod(parsePeriod(xpp)); 5856 } else if (!parseBackboneContent(eventType, xpp, res)) 5857 unknownContent(xpp); 5858 eventType = nextNoWhitespace(xpp); 5859 } 5860 next(xpp); 5861 parseElementClose(res); 5862 return res; 5863 } 5864 5865 protected EnrollmentRequest parseEnrollmentRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5866 EnrollmentRequest res = new EnrollmentRequest(); 5867 parseDomainResourceAttributes(xpp, res); 5868 next(xpp); 5869 int eventType = nextNoWhitespace(xpp); 5870 while (eventType != XmlPullParser.END_TAG) { 5871 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5872 res.getIdentifier().add(parseIdentifier(xpp)); 5873 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleset")) { 5874 res.setRuleset(parseCoding(xpp)); 5875 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("originalRuleset")) { 5876 res.setOriginalRuleset(parseCoding(xpp)); 5877 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 5878 res.setCreatedElement(parseDateTime(xpp)); 5879 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 5880 res.setTarget(parseReference(xpp)); 5881 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provider")) { 5882 res.setProvider(parseReference(xpp)); 5883 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 5884 res.setOrganization(parseReference(xpp)); 5885 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 5886 res.setSubject(parseReference(xpp)); 5887 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverage")) { 5888 res.setCoverage(parseReference(xpp)); 5889 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 5890 res.setRelationship(parseCoding(xpp)); 5891 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5892 unknownContent(xpp); 5893 eventType = nextNoWhitespace(xpp); 5894 } 5895 next(xpp); 5896 parseElementClose(res); 5897 return res; 5898 } 5899 5900 protected EnrollmentResponse parseEnrollmentResponse(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5901 EnrollmentResponse res = new EnrollmentResponse(); 5902 parseDomainResourceAttributes(xpp, res); 5903 next(xpp); 5904 int eventType = nextNoWhitespace(xpp); 5905 while (eventType != XmlPullParser.END_TAG) { 5906 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5907 res.getIdentifier().add(parseIdentifier(xpp)); 5908 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 5909 res.setRequest(parseReference(xpp)); 5910 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 5911 res.setOutcomeElement(parseEnumeration(xpp, Enumerations.RemittanceOutcome.NULL, new Enumerations.RemittanceOutcomeEnumFactory())); 5912 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disposition")) { 5913 res.setDispositionElement(parseString(xpp)); 5914 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleset")) { 5915 res.setRuleset(parseCoding(xpp)); 5916 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("originalRuleset")) { 5917 res.setOriginalRuleset(parseCoding(xpp)); 5918 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 5919 res.setCreatedElement(parseDateTime(xpp)); 5920 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 5921 res.setOrganization(parseReference(xpp)); 5922 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestProvider")) { 5923 res.setRequestProvider(parseReference(xpp)); 5924 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestOrganization")) { 5925 res.setRequestOrganization(parseReference(xpp)); 5926 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5927 unknownContent(xpp); 5928 eventType = nextNoWhitespace(xpp); 5929 } 5930 next(xpp); 5931 parseElementClose(res); 5932 return res; 5933 } 5934 5935 protected EpisodeOfCare parseEpisodeOfCare(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5936 EpisodeOfCare res = new EpisodeOfCare(); 5937 parseDomainResourceAttributes(xpp, res); 5938 next(xpp); 5939 int eventType = nextNoWhitespace(xpp); 5940 while (eventType != XmlPullParser.END_TAG) { 5941 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5942 res.getIdentifier().add(parseIdentifier(xpp)); 5943 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 5944 res.setStatusElement(parseEnumeration(xpp, EpisodeOfCare.EpisodeOfCareStatus.NULL, new EpisodeOfCare.EpisodeOfCareStatusEnumFactory())); 5945 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusHistory")) { 5946 res.getStatusHistory().add(parseEpisodeOfCareEpisodeOfCareStatusHistoryComponent(xpp, res)); 5947 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 5948 res.getType().add(parseCodeableConcept(xpp)); 5949 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 5950 res.getCondition().add(parseReference(xpp)); 5951 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 5952 res.setPatient(parseReference(xpp)); 5953 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("managingOrganization")) { 5954 res.setManagingOrganization(parseReference(xpp)); 5955 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 5956 res.setPeriod(parsePeriod(xpp)); 5957 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referralRequest")) { 5958 res.getReferralRequest().add(parseReference(xpp)); 5959 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("careManager")) { 5960 res.setCareManager(parseReference(xpp)); 5961 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("team")) { 5962 res.getTeam().add(parseReference(xpp)); 5963 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5964 unknownContent(xpp); 5965 eventType = nextNoWhitespace(xpp); 5966 } 5967 next(xpp); 5968 parseElementClose(res); 5969 return res; 5970 } 5971 5972 protected EpisodeOfCare.EpisodeOfCareStatusHistoryComponent parseEpisodeOfCareEpisodeOfCareStatusHistoryComponent(XmlPullParser xpp, EpisodeOfCare owner) throws XmlPullParserException, IOException, FHIRFormatError { 5973 EpisodeOfCare.EpisodeOfCareStatusHistoryComponent res = new EpisodeOfCare.EpisodeOfCareStatusHistoryComponent(); 5974 parseBackboneAttributes(xpp, res); 5975 next(xpp); 5976 int eventType = nextNoWhitespace(xpp); 5977 while (eventType != XmlPullParser.END_TAG) { 5978 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 5979 res.setStatusElement(parseEnumeration(xpp, EpisodeOfCare.EpisodeOfCareStatus.NULL, new EpisodeOfCare.EpisodeOfCareStatusEnumFactory())); 5980 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 5981 res.setPeriod(parsePeriod(xpp)); 5982 } else if (!parseBackboneContent(eventType, xpp, res)) 5983 unknownContent(xpp); 5984 eventType = nextNoWhitespace(xpp); 5985 } 5986 next(xpp); 5987 parseElementClose(res); 5988 return res; 5989 } 5990 5991 protected ExpansionProfile parseExpansionProfile(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5992 ExpansionProfile res = new ExpansionProfile(); 5993 parseDomainResourceAttributes(xpp, res); 5994 next(xpp); 5995 int eventType = nextNoWhitespace(xpp); 5996 while (eventType != XmlPullParser.END_TAG) { 5997 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 5998 res.setUrlElement(parseUri(xpp)); 5999 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6000 res.setIdentifier(parseIdentifier(xpp)); 6001 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 6002 res.setVersionElement(parseString(xpp)); 6003 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 6004 res.setNameElement(parseString(xpp)); 6005 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 6006 res.setStatusElement(parseEnumeration(xpp, Enumerations.ConformanceResourceStatus.NULL, new Enumerations.ConformanceResourceStatusEnumFactory())); 6007 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 6008 res.setExperimentalElement(parseBoolean(xpp)); 6009 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 6010 res.setPublisherElement(parseString(xpp)); 6011 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 6012 res.getContact().add(parseExpansionProfileExpansionProfileContactComponent(xpp, res)); 6013 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 6014 res.setDateElement(parseDateTime(xpp)); 6015 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 6016 res.setDescriptionElement(parseString(xpp)); 6017 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("codeSystem")) { 6018 res.setCodeSystem(parseExpansionProfileExpansionProfileCodeSystemComponent(xpp, res)); 6019 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("includeDesignations")) { 6020 res.setIncludeDesignationsElement(parseBoolean(xpp)); 6021 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("designation")) { 6022 res.setDesignation(parseExpansionProfileExpansionProfileDesignationComponent(xpp, res)); 6023 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("includeDefinition")) { 6024 res.setIncludeDefinitionElement(parseBoolean(xpp)); 6025 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("includeInactive")) { 6026 res.setIncludeInactiveElement(parseBoolean(xpp)); 6027 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("excludeNested")) { 6028 res.setExcludeNestedElement(parseBoolean(xpp)); 6029 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("excludeNotForUI")) { 6030 res.setExcludeNotForUIElement(parseBoolean(xpp)); 6031 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("excludePostCoordinated")) { 6032 res.setExcludePostCoordinatedElement(parseBoolean(xpp)); 6033 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("displayLanguage")) { 6034 res.setDisplayLanguageElement(parseCode(xpp)); 6035 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("limitedExpansion")) { 6036 res.setLimitedExpansionElement(parseBoolean(xpp)); 6037 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6038 unknownContent(xpp); 6039 eventType = nextNoWhitespace(xpp); 6040 } 6041 next(xpp); 6042 parseElementClose(res); 6043 return res; 6044 } 6045 6046 protected ExpansionProfile.ExpansionProfileContactComponent parseExpansionProfileExpansionProfileContactComponent(XmlPullParser xpp, ExpansionProfile owner) throws XmlPullParserException, IOException, FHIRFormatError { 6047 ExpansionProfile.ExpansionProfileContactComponent res = new ExpansionProfile.ExpansionProfileContactComponent(); 6048 parseBackboneAttributes(xpp, res); 6049 next(xpp); 6050 int eventType = nextNoWhitespace(xpp); 6051 while (eventType != XmlPullParser.END_TAG) { 6052 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 6053 res.setNameElement(parseString(xpp)); 6054 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 6055 res.getTelecom().add(parseContactPoint(xpp)); 6056 } else if (!parseBackboneContent(eventType, xpp, res)) 6057 unknownContent(xpp); 6058 eventType = nextNoWhitespace(xpp); 6059 } 6060 next(xpp); 6061 parseElementClose(res); 6062 return res; 6063 } 6064 6065 protected ExpansionProfile.ExpansionProfileCodeSystemComponent parseExpansionProfileExpansionProfileCodeSystemComponent(XmlPullParser xpp, ExpansionProfile owner) throws XmlPullParserException, IOException, FHIRFormatError { 6066 ExpansionProfile.ExpansionProfileCodeSystemComponent res = new ExpansionProfile.ExpansionProfileCodeSystemComponent(); 6067 parseBackboneAttributes(xpp, res); 6068 next(xpp); 6069 int eventType = nextNoWhitespace(xpp); 6070 while (eventType != XmlPullParser.END_TAG) { 6071 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("include")) { 6072 res.setInclude(parseExpansionProfileCodeSystemIncludeComponent(xpp, owner)); 6073 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exclude")) { 6074 res.setExclude(parseExpansionProfileCodeSystemExcludeComponent(xpp, owner)); 6075 } else if (!parseBackboneContent(eventType, xpp, res)) 6076 unknownContent(xpp); 6077 eventType = nextNoWhitespace(xpp); 6078 } 6079 next(xpp); 6080 parseElementClose(res); 6081 return res; 6082 } 6083 6084 protected ExpansionProfile.CodeSystemIncludeComponent parseExpansionProfileCodeSystemIncludeComponent(XmlPullParser xpp, ExpansionProfile owner) throws XmlPullParserException, IOException, FHIRFormatError { 6085 ExpansionProfile.CodeSystemIncludeComponent res = new ExpansionProfile.CodeSystemIncludeComponent(); 6086 parseBackboneAttributes(xpp, res); 6087 next(xpp); 6088 int eventType = nextNoWhitespace(xpp); 6089 while (eventType != XmlPullParser.END_TAG) { 6090 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("codeSystem")) { 6091 res.getCodeSystem().add(parseExpansionProfileCodeSystemIncludeCodeSystemComponent(xpp, owner)); 6092 } else if (!parseBackboneContent(eventType, xpp, res)) 6093 unknownContent(xpp); 6094 eventType = nextNoWhitespace(xpp); 6095 } 6096 next(xpp); 6097 parseElementClose(res); 6098 return res; 6099 } 6100 6101 protected ExpansionProfile.CodeSystemIncludeCodeSystemComponent parseExpansionProfileCodeSystemIncludeCodeSystemComponent(XmlPullParser xpp, ExpansionProfile owner) throws XmlPullParserException, IOException, FHIRFormatError { 6102 ExpansionProfile.CodeSystemIncludeCodeSystemComponent res = new ExpansionProfile.CodeSystemIncludeCodeSystemComponent(); 6103 parseBackboneAttributes(xpp, res); 6104 next(xpp); 6105 int eventType = nextNoWhitespace(xpp); 6106 while (eventType != XmlPullParser.END_TAG) { 6107 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 6108 res.setSystemElement(parseUri(xpp)); 6109 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 6110 res.setVersionElement(parseString(xpp)); 6111 } else if (!parseBackboneContent(eventType, xpp, res)) 6112 unknownContent(xpp); 6113 eventType = nextNoWhitespace(xpp); 6114 } 6115 next(xpp); 6116 parseElementClose(res); 6117 return res; 6118 } 6119 6120 protected ExpansionProfile.CodeSystemExcludeComponent parseExpansionProfileCodeSystemExcludeComponent(XmlPullParser xpp, ExpansionProfile owner) throws XmlPullParserException, IOException, FHIRFormatError { 6121 ExpansionProfile.CodeSystemExcludeComponent res = new ExpansionProfile.CodeSystemExcludeComponent(); 6122 parseBackboneAttributes(xpp, res); 6123 next(xpp); 6124 int eventType = nextNoWhitespace(xpp); 6125 while (eventType != XmlPullParser.END_TAG) { 6126 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("codeSystem")) { 6127 res.getCodeSystem().add(parseExpansionProfileCodeSystemExcludeCodeSystemComponent(xpp, owner)); 6128 } else if (!parseBackboneContent(eventType, xpp, res)) 6129 unknownContent(xpp); 6130 eventType = nextNoWhitespace(xpp); 6131 } 6132 next(xpp); 6133 parseElementClose(res); 6134 return res; 6135 } 6136 6137 protected ExpansionProfile.CodeSystemExcludeCodeSystemComponent parseExpansionProfileCodeSystemExcludeCodeSystemComponent(XmlPullParser xpp, ExpansionProfile owner) throws XmlPullParserException, IOException, FHIRFormatError { 6138 ExpansionProfile.CodeSystemExcludeCodeSystemComponent res = new ExpansionProfile.CodeSystemExcludeCodeSystemComponent(); 6139 parseBackboneAttributes(xpp, res); 6140 next(xpp); 6141 int eventType = nextNoWhitespace(xpp); 6142 while (eventType != XmlPullParser.END_TAG) { 6143 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 6144 res.setSystemElement(parseUri(xpp)); 6145 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 6146 res.setVersionElement(parseString(xpp)); 6147 } else if (!parseBackboneContent(eventType, xpp, res)) 6148 unknownContent(xpp); 6149 eventType = nextNoWhitespace(xpp); 6150 } 6151 next(xpp); 6152 parseElementClose(res); 6153 return res; 6154 } 6155 6156 protected ExpansionProfile.ExpansionProfileDesignationComponent parseExpansionProfileExpansionProfileDesignationComponent(XmlPullParser xpp, ExpansionProfile owner) throws XmlPullParserException, IOException, FHIRFormatError { 6157 ExpansionProfile.ExpansionProfileDesignationComponent res = new ExpansionProfile.ExpansionProfileDesignationComponent(); 6158 parseBackboneAttributes(xpp, res); 6159 next(xpp); 6160 int eventType = nextNoWhitespace(xpp); 6161 while (eventType != XmlPullParser.END_TAG) { 6162 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("include")) { 6163 res.setInclude(parseExpansionProfileDesignationIncludeComponent(xpp, owner)); 6164 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exclude")) { 6165 res.setExclude(parseExpansionProfileDesignationExcludeComponent(xpp, owner)); 6166 } else if (!parseBackboneContent(eventType, xpp, res)) 6167 unknownContent(xpp); 6168 eventType = nextNoWhitespace(xpp); 6169 } 6170 next(xpp); 6171 parseElementClose(res); 6172 return res; 6173 } 6174 6175 protected ExpansionProfile.DesignationIncludeComponent parseExpansionProfileDesignationIncludeComponent(XmlPullParser xpp, ExpansionProfile owner) throws XmlPullParserException, IOException, FHIRFormatError { 6176 ExpansionProfile.DesignationIncludeComponent res = new ExpansionProfile.DesignationIncludeComponent(); 6177 parseBackboneAttributes(xpp, res); 6178 next(xpp); 6179 int eventType = nextNoWhitespace(xpp); 6180 while (eventType != XmlPullParser.END_TAG) { 6181 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("designation")) { 6182 res.getDesignation().add(parseExpansionProfileDesignationIncludeDesignationComponent(xpp, owner)); 6183 } else if (!parseBackboneContent(eventType, xpp, res)) 6184 unknownContent(xpp); 6185 eventType = nextNoWhitespace(xpp); 6186 } 6187 next(xpp); 6188 parseElementClose(res); 6189 return res; 6190 } 6191 6192 protected ExpansionProfile.DesignationIncludeDesignationComponent parseExpansionProfileDesignationIncludeDesignationComponent(XmlPullParser xpp, ExpansionProfile owner) throws XmlPullParserException, IOException, FHIRFormatError { 6193 ExpansionProfile.DesignationIncludeDesignationComponent res = new ExpansionProfile.DesignationIncludeDesignationComponent(); 6194 parseBackboneAttributes(xpp, res); 6195 next(xpp); 6196 int eventType = nextNoWhitespace(xpp); 6197 while (eventType != XmlPullParser.END_TAG) { 6198 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 6199 res.setLanguageElement(parseCode(xpp)); 6200 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 6201 res.setUse(parseCoding(xpp)); 6202 } else if (!parseBackboneContent(eventType, xpp, res)) 6203 unknownContent(xpp); 6204 eventType = nextNoWhitespace(xpp); 6205 } 6206 next(xpp); 6207 parseElementClose(res); 6208 return res; 6209 } 6210 6211 protected ExpansionProfile.DesignationExcludeComponent parseExpansionProfileDesignationExcludeComponent(XmlPullParser xpp, ExpansionProfile owner) throws XmlPullParserException, IOException, FHIRFormatError { 6212 ExpansionProfile.DesignationExcludeComponent res = new ExpansionProfile.DesignationExcludeComponent(); 6213 parseBackboneAttributes(xpp, res); 6214 next(xpp); 6215 int eventType = nextNoWhitespace(xpp); 6216 while (eventType != XmlPullParser.END_TAG) { 6217 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("designation")) { 6218 res.getDesignation().add(parseExpansionProfileDesignationExcludeDesignationComponent(xpp, owner)); 6219 } else if (!parseBackboneContent(eventType, xpp, res)) 6220 unknownContent(xpp); 6221 eventType = nextNoWhitespace(xpp); 6222 } 6223 next(xpp); 6224 parseElementClose(res); 6225 return res; 6226 } 6227 6228 protected ExpansionProfile.DesignationExcludeDesignationComponent parseExpansionProfileDesignationExcludeDesignationComponent(XmlPullParser xpp, ExpansionProfile owner) throws XmlPullParserException, IOException, FHIRFormatError { 6229 ExpansionProfile.DesignationExcludeDesignationComponent res = new ExpansionProfile.DesignationExcludeDesignationComponent(); 6230 parseBackboneAttributes(xpp, res); 6231 next(xpp); 6232 int eventType = nextNoWhitespace(xpp); 6233 while (eventType != XmlPullParser.END_TAG) { 6234 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 6235 res.setLanguageElement(parseCode(xpp)); 6236 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 6237 res.setUse(parseCoding(xpp)); 6238 } else if (!parseBackboneContent(eventType, xpp, res)) 6239 unknownContent(xpp); 6240 eventType = nextNoWhitespace(xpp); 6241 } 6242 next(xpp); 6243 parseElementClose(res); 6244 return res; 6245 } 6246 6247 protected ExplanationOfBenefit parseExplanationOfBenefit(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6248 ExplanationOfBenefit res = new ExplanationOfBenefit(); 6249 parseDomainResourceAttributes(xpp, res); 6250 next(xpp); 6251 int eventType = nextNoWhitespace(xpp); 6252 while (eventType != XmlPullParser.END_TAG) { 6253 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6254 res.getIdentifier().add(parseIdentifier(xpp)); 6255 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "claim")) { 6256 res.setClaim(parseType("claim", xpp)); 6257 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "claimResponse")) { 6258 res.setClaimResponse(parseType("claimResponse", xpp)); 6259 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subType")) { 6260 res.getSubType().add(parseCoding(xpp)); 6261 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleset")) { 6262 res.setRuleset(parseCoding(xpp)); 6263 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("originalRuleset")) { 6264 res.setOriginalRuleset(parseCoding(xpp)); 6265 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 6266 res.setCreatedElement(parseDateTime(xpp)); 6267 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("billablePeriod")) { 6268 res.setBillablePeriod(parsePeriod(xpp)); 6269 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disposition")) { 6270 res.setDispositionElement(parseString(xpp)); 6271 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "provider")) { 6272 res.setProvider(parseType("provider", xpp)); 6273 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "organization")) { 6274 res.setOrganization(parseType("organization", xpp)); 6275 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "facility")) { 6276 res.setFacility(parseType("facility", xpp)); 6277 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("related")) { 6278 res.getRelated().add(parseExplanationOfBenefitRelatedClaimsComponent(xpp, res)); 6279 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "prescription")) { 6280 res.setPrescription(parseType("prescription", xpp)); 6281 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "originalPrescription")) { 6282 res.setOriginalPrescription(parseType("originalPrescription", xpp)); 6283 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payee")) { 6284 res.setPayee(parseExplanationOfBenefitPayeeComponent(xpp, res)); 6285 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "referral")) { 6286 res.setReferral(parseType("referral", xpp)); 6287 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("occurrenceCode")) { 6288 res.getOccurrenceCode().add(parseCoding(xpp)); 6289 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("occurenceSpanCode")) { 6290 res.getOccurenceSpanCode().add(parseCoding(xpp)); 6291 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valueCode")) { 6292 res.getValueCode().add(parseCoding(xpp)); 6293 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnosis")) { 6294 res.getDiagnosis().add(parseExplanationOfBenefitDiagnosisComponent(xpp, res)); 6295 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("procedure")) { 6296 res.getProcedure().add(parseExplanationOfBenefitProcedureComponent(xpp, res)); 6297 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialCondition")) { 6298 res.getSpecialCondition().add(parseCoding(xpp)); 6299 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "patient")) { 6300 res.setPatient(parseType("patient", xpp)); 6301 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("precedence")) { 6302 res.setPrecedenceElement(parsePositiveInt(xpp)); 6303 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverage")) { 6304 res.setCoverage(parseExplanationOfBenefitCoverageComponent(xpp, res)); 6305 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("accidentDate")) { 6306 res.setAccidentDateElement(parseDate(xpp)); 6307 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("accidentType")) { 6308 res.setAccidentType(parseCoding(xpp)); 6309 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "accidentLocation")) { 6310 res.setAccidentLocation(parseType("accidentLocation", xpp)); 6311 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("interventionException")) { 6312 res.getInterventionException().add(parseCoding(xpp)); 6313 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onset")) { 6314 res.getOnset().add(parseExplanationOfBenefitOnsetComponent(xpp, res)); 6315 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("employmentImpacted")) { 6316 res.setEmploymentImpacted(parsePeriod(xpp)); 6317 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("hospitalization")) { 6318 res.setHospitalization(parsePeriod(xpp)); 6319 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 6320 res.getItem().add(parseExplanationOfBenefitItemsComponent(xpp, res)); 6321 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("addItem")) { 6322 res.getAddItem().add(parseExplanationOfBenefitAddedItemComponent(xpp, res)); 6323 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("missingTeeth")) { 6324 res.getMissingTeeth().add(parseExplanationOfBenefitMissingTeethComponent(xpp, res)); 6325 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("totalCost")) { 6326 res.setTotalCost(parseMoney(xpp)); 6327 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unallocDeductable")) { 6328 res.setUnallocDeductable(parseMoney(xpp)); 6329 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("totalBenefit")) { 6330 res.setTotalBenefit(parseMoney(xpp)); 6331 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("paymentAdjustment")) { 6332 res.setPaymentAdjustment(parseMoney(xpp)); 6333 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("paymentAdjustmentReason")) { 6334 res.setPaymentAdjustmentReason(parseCoding(xpp)); 6335 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("paymentDate")) { 6336 res.setPaymentDateElement(parseDate(xpp)); 6337 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("paymentAmount")) { 6338 res.setPaymentAmount(parseMoney(xpp)); 6339 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("paymentRef")) { 6340 res.setPaymentRef(parseIdentifier(xpp)); 6341 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reserved")) { 6342 res.setReserved(parseCoding(xpp)); 6343 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("form")) { 6344 res.setForm(parseCoding(xpp)); 6345 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 6346 res.getNote().add(parseExplanationOfBenefitNotesComponent(xpp, res)); 6347 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("benefitBalance")) { 6348 res.getBenefitBalance().add(parseExplanationOfBenefitBenefitBalanceComponent(xpp, res)); 6349 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6350 unknownContent(xpp); 6351 eventType = nextNoWhitespace(xpp); 6352 } 6353 next(xpp); 6354 parseElementClose(res); 6355 return res; 6356 } 6357 6358 protected ExplanationOfBenefit.RelatedClaimsComponent parseExplanationOfBenefitRelatedClaimsComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 6359 ExplanationOfBenefit.RelatedClaimsComponent res = new ExplanationOfBenefit.RelatedClaimsComponent(); 6360 parseBackboneAttributes(xpp, res); 6361 next(xpp); 6362 int eventType = nextNoWhitespace(xpp); 6363 while (eventType != XmlPullParser.END_TAG) { 6364 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "claim")) { 6365 res.setClaim(parseType("claim", xpp)); 6366 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 6367 res.setRelationship(parseCoding(xpp)); 6368 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 6369 res.setReference(parseIdentifier(xpp)); 6370 } else if (!parseBackboneContent(eventType, xpp, res)) 6371 unknownContent(xpp); 6372 eventType = nextNoWhitespace(xpp); 6373 } 6374 next(xpp); 6375 parseElementClose(res); 6376 return res; 6377 } 6378 6379 protected ExplanationOfBenefit.PayeeComponent parseExplanationOfBenefitPayeeComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 6380 ExplanationOfBenefit.PayeeComponent res = new ExplanationOfBenefit.PayeeComponent(); 6381 parseBackboneAttributes(xpp, res); 6382 next(xpp); 6383 int eventType = nextNoWhitespace(xpp); 6384 while (eventType != XmlPullParser.END_TAG) { 6385 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6386 res.setType(parseCoding(xpp)); 6387 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "party")) { 6388 res.setParty(parseType("party", xpp)); 6389 } else if (!parseBackboneContent(eventType, xpp, res)) 6390 unknownContent(xpp); 6391 eventType = nextNoWhitespace(xpp); 6392 } 6393 next(xpp); 6394 parseElementClose(res); 6395 return res; 6396 } 6397 6398 protected ExplanationOfBenefit.DiagnosisComponent parseExplanationOfBenefitDiagnosisComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 6399 ExplanationOfBenefit.DiagnosisComponent res = new ExplanationOfBenefit.DiagnosisComponent(); 6400 parseBackboneAttributes(xpp, res); 6401 next(xpp); 6402 int eventType = nextNoWhitespace(xpp); 6403 while (eventType != XmlPullParser.END_TAG) { 6404 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 6405 res.setSequenceElement(parsePositiveInt(xpp)); 6406 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnosis")) { 6407 res.setDiagnosis(parseCoding(xpp)); 6408 } else if (!parseBackboneContent(eventType, xpp, res)) 6409 unknownContent(xpp); 6410 eventType = nextNoWhitespace(xpp); 6411 } 6412 next(xpp); 6413 parseElementClose(res); 6414 return res; 6415 } 6416 6417 protected ExplanationOfBenefit.ProcedureComponent parseExplanationOfBenefitProcedureComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 6418 ExplanationOfBenefit.ProcedureComponent res = new ExplanationOfBenefit.ProcedureComponent(); 6419 parseBackboneAttributes(xpp, res); 6420 next(xpp); 6421 int eventType = nextNoWhitespace(xpp); 6422 while (eventType != XmlPullParser.END_TAG) { 6423 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 6424 res.setSequenceElement(parsePositiveInt(xpp)); 6425 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 6426 res.setDateElement(parseDateTime(xpp)); 6427 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "procedure")) { 6428 res.setProcedure(parseType("procedure", xpp)); 6429 } else if (!parseBackboneContent(eventType, xpp, res)) 6430 unknownContent(xpp); 6431 eventType = nextNoWhitespace(xpp); 6432 } 6433 next(xpp); 6434 parseElementClose(res); 6435 return res; 6436 } 6437 6438 protected ExplanationOfBenefit.CoverageComponent parseExplanationOfBenefitCoverageComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 6439 ExplanationOfBenefit.CoverageComponent res = new ExplanationOfBenefit.CoverageComponent(); 6440 parseBackboneAttributes(xpp, res); 6441 next(xpp); 6442 int eventType = nextNoWhitespace(xpp); 6443 while (eventType != XmlPullParser.END_TAG) { 6444 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "coverage")) { 6445 res.setCoverage(parseType("coverage", xpp)); 6446 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preAuthRef")) { 6447 res.getPreAuthRef().add(parseString(xpp)); 6448 } else if (!parseBackboneContent(eventType, xpp, res)) 6449 unknownContent(xpp); 6450 eventType = nextNoWhitespace(xpp); 6451 } 6452 next(xpp); 6453 parseElementClose(res); 6454 return res; 6455 } 6456 6457 protected ExplanationOfBenefit.OnsetComponent parseExplanationOfBenefitOnsetComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 6458 ExplanationOfBenefit.OnsetComponent res = new ExplanationOfBenefit.OnsetComponent(); 6459 parseBackboneAttributes(xpp, res); 6460 next(xpp); 6461 int eventType = nextNoWhitespace(xpp); 6462 while (eventType != XmlPullParser.END_TAG) { 6463 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "time")) { 6464 res.setTime(parseType("time", xpp)); 6465 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6466 res.setType(parseCoding(xpp)); 6467 } else if (!parseBackboneContent(eventType, xpp, res)) 6468 unknownContent(xpp); 6469 eventType = nextNoWhitespace(xpp); 6470 } 6471 next(xpp); 6472 parseElementClose(res); 6473 return res; 6474 } 6475 6476 protected ExplanationOfBenefit.ItemsComponent parseExplanationOfBenefitItemsComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 6477 ExplanationOfBenefit.ItemsComponent res = new ExplanationOfBenefit.ItemsComponent(); 6478 parseBackboneAttributes(xpp, res); 6479 next(xpp); 6480 int eventType = nextNoWhitespace(xpp); 6481 while (eventType != XmlPullParser.END_TAG) { 6482 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 6483 res.setSequenceElement(parsePositiveInt(xpp)); 6484 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6485 res.setType(parseCoding(xpp)); 6486 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "provider")) { 6487 res.setProvider(parseType("provider", xpp)); 6488 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "supervisor")) { 6489 res.setSupervisor(parseType("supervisor", xpp)); 6490 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("providerQualification")) { 6491 res.setProviderQualification(parseCoding(xpp)); 6492 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnosisLinkId")) { 6493 res.getDiagnosisLinkId().add(parsePositiveInt(xpp)); 6494 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 6495 res.setService(parseCoding(xpp)); 6496 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceModifier")) { 6497 res.getServiceModifier().add(parseCoding(xpp)); 6498 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 6499 res.getModifier().add(parseCoding(xpp)); 6500 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("programCode")) { 6501 res.getProgramCode().add(parseCoding(xpp)); 6502 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "serviced")) { 6503 res.setServiced(parseType("serviced", xpp)); 6504 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("place")) { 6505 res.setPlace(parseCoding(xpp)); 6506 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 6507 res.setQuantity(parseSimpleQuantity(xpp)); 6508 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 6509 res.setUnitPrice(parseMoney(xpp)); 6510 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 6511 res.setFactorElement(parseDecimal(xpp)); 6512 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("points")) { 6513 res.setPointsElement(parseDecimal(xpp)); 6514 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 6515 res.setNet(parseMoney(xpp)); 6516 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udi")) { 6517 res.getUdi().add(parseReference(xpp)); 6518 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 6519 res.setBodySite(parseCoding(xpp)); 6520 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subSite")) { 6521 res.getSubSite().add(parseCoding(xpp)); 6522 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumber")) { 6523 res.getNoteNumber().add(parsePositiveInt(xpp)); 6524 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 6525 res.getAdjudication().add(parseExplanationOfBenefitItemAdjudicationComponent(xpp, owner)); 6526 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 6527 res.getDetail().add(parseExplanationOfBenefitDetailComponent(xpp, owner)); 6528 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prosthesis")) { 6529 res.setProsthesis(parseExplanationOfBenefitProsthesisComponent(xpp, owner)); 6530 } else if (!parseBackboneContent(eventType, xpp, res)) 6531 unknownContent(xpp); 6532 eventType = nextNoWhitespace(xpp); 6533 } 6534 next(xpp); 6535 parseElementClose(res); 6536 return res; 6537 } 6538 6539 protected ExplanationOfBenefit.ItemAdjudicationComponent parseExplanationOfBenefitItemAdjudicationComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 6540 ExplanationOfBenefit.ItemAdjudicationComponent res = new ExplanationOfBenefit.ItemAdjudicationComponent(); 6541 parseBackboneAttributes(xpp, res); 6542 next(xpp); 6543 int eventType = nextNoWhitespace(xpp); 6544 while (eventType != XmlPullParser.END_TAG) { 6545 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 6546 res.setCategory(parseCoding(xpp)); 6547 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 6548 res.setReason(parseCoding(xpp)); 6549 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 6550 res.setAmount(parseMoney(xpp)); 6551 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 6552 res.setValueElement(parseDecimal(xpp)); 6553 } else if (!parseBackboneContent(eventType, xpp, res)) 6554 unknownContent(xpp); 6555 eventType = nextNoWhitespace(xpp); 6556 } 6557 next(xpp); 6558 parseElementClose(res); 6559 return res; 6560 } 6561 6562 protected ExplanationOfBenefit.DetailComponent parseExplanationOfBenefitDetailComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 6563 ExplanationOfBenefit.DetailComponent res = new ExplanationOfBenefit.DetailComponent(); 6564 parseBackboneAttributes(xpp, res); 6565 next(xpp); 6566 int eventType = nextNoWhitespace(xpp); 6567 while (eventType != XmlPullParser.END_TAG) { 6568 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 6569 res.setSequenceElement(parsePositiveInt(xpp)); 6570 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6571 res.setType(parseCoding(xpp)); 6572 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 6573 res.setService(parseCoding(xpp)); 6574 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("programCode")) { 6575 res.getProgramCode().add(parseCoding(xpp)); 6576 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 6577 res.setQuantity(parseSimpleQuantity(xpp)); 6578 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 6579 res.setUnitPrice(parseMoney(xpp)); 6580 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 6581 res.setFactorElement(parseDecimal(xpp)); 6582 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("points")) { 6583 res.setPointsElement(parseDecimal(xpp)); 6584 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 6585 res.setNet(parseMoney(xpp)); 6586 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udi")) { 6587 res.getUdi().add(parseReference(xpp)); 6588 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 6589 res.getAdjudication().add(parseExplanationOfBenefitDetailAdjudicationComponent(xpp, owner)); 6590 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subDetail")) { 6591 res.getSubDetail().add(parseExplanationOfBenefitSubDetailComponent(xpp, owner)); 6592 } else if (!parseBackboneContent(eventType, xpp, res)) 6593 unknownContent(xpp); 6594 eventType = nextNoWhitespace(xpp); 6595 } 6596 next(xpp); 6597 parseElementClose(res); 6598 return res; 6599 } 6600 6601 protected ExplanationOfBenefit.DetailAdjudicationComponent parseExplanationOfBenefitDetailAdjudicationComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 6602 ExplanationOfBenefit.DetailAdjudicationComponent res = new ExplanationOfBenefit.DetailAdjudicationComponent(); 6603 parseBackboneAttributes(xpp, res); 6604 next(xpp); 6605 int eventType = nextNoWhitespace(xpp); 6606 while (eventType != XmlPullParser.END_TAG) { 6607 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 6608 res.setCategory(parseCoding(xpp)); 6609 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 6610 res.setReason(parseCoding(xpp)); 6611 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 6612 res.setAmount(parseMoney(xpp)); 6613 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 6614 res.setValueElement(parseDecimal(xpp)); 6615 } else if (!parseBackboneContent(eventType, xpp, res)) 6616 unknownContent(xpp); 6617 eventType = nextNoWhitespace(xpp); 6618 } 6619 next(xpp); 6620 parseElementClose(res); 6621 return res; 6622 } 6623 6624 protected ExplanationOfBenefit.SubDetailComponent parseExplanationOfBenefitSubDetailComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 6625 ExplanationOfBenefit.SubDetailComponent res = new ExplanationOfBenefit.SubDetailComponent(); 6626 parseBackboneAttributes(xpp, res); 6627 next(xpp); 6628 int eventType = nextNoWhitespace(xpp); 6629 while (eventType != XmlPullParser.END_TAG) { 6630 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 6631 res.setSequenceElement(parsePositiveInt(xpp)); 6632 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6633 res.setType(parseCoding(xpp)); 6634 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 6635 res.setService(parseCoding(xpp)); 6636 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("programCode")) { 6637 res.getProgramCode().add(parseCoding(xpp)); 6638 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 6639 res.setQuantity(parseSimpleQuantity(xpp)); 6640 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 6641 res.setUnitPrice(parseMoney(xpp)); 6642 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 6643 res.setFactorElement(parseDecimal(xpp)); 6644 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("points")) { 6645 res.setPointsElement(parseDecimal(xpp)); 6646 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 6647 res.setNet(parseMoney(xpp)); 6648 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udi")) { 6649 res.getUdi().add(parseReference(xpp)); 6650 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 6651 res.getAdjudication().add(parseExplanationOfBenefitSubDetailAdjudicationComponent(xpp, owner)); 6652 } else if (!parseBackboneContent(eventType, xpp, res)) 6653 unknownContent(xpp); 6654 eventType = nextNoWhitespace(xpp); 6655 } 6656 next(xpp); 6657 parseElementClose(res); 6658 return res; 6659 } 6660 6661 protected ExplanationOfBenefit.SubDetailAdjudicationComponent parseExplanationOfBenefitSubDetailAdjudicationComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 6662 ExplanationOfBenefit.SubDetailAdjudicationComponent res = new ExplanationOfBenefit.SubDetailAdjudicationComponent(); 6663 parseBackboneAttributes(xpp, res); 6664 next(xpp); 6665 int eventType = nextNoWhitespace(xpp); 6666 while (eventType != XmlPullParser.END_TAG) { 6667 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 6668 res.setCategory(parseCoding(xpp)); 6669 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 6670 res.setReason(parseCoding(xpp)); 6671 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 6672 res.setAmount(parseMoney(xpp)); 6673 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 6674 res.setValueElement(parseDecimal(xpp)); 6675 } else if (!parseBackboneContent(eventType, xpp, res)) 6676 unknownContent(xpp); 6677 eventType = nextNoWhitespace(xpp); 6678 } 6679 next(xpp); 6680 parseElementClose(res); 6681 return res; 6682 } 6683 6684 protected ExplanationOfBenefit.ProsthesisComponent parseExplanationOfBenefitProsthesisComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 6685 ExplanationOfBenefit.ProsthesisComponent res = new ExplanationOfBenefit.ProsthesisComponent(); 6686 parseBackboneAttributes(xpp, res); 6687 next(xpp); 6688 int eventType = nextNoWhitespace(xpp); 6689 while (eventType != XmlPullParser.END_TAG) { 6690 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("initial")) { 6691 res.setInitialElement(parseBoolean(xpp)); 6692 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priorDate")) { 6693 res.setPriorDateElement(parseDate(xpp)); 6694 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priorMaterial")) { 6695 res.setPriorMaterial(parseCoding(xpp)); 6696 } else if (!parseBackboneContent(eventType, xpp, res)) 6697 unknownContent(xpp); 6698 eventType = nextNoWhitespace(xpp); 6699 } 6700 next(xpp); 6701 parseElementClose(res); 6702 return res; 6703 } 6704 6705 protected ExplanationOfBenefit.AddedItemComponent parseExplanationOfBenefitAddedItemComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 6706 ExplanationOfBenefit.AddedItemComponent res = new ExplanationOfBenefit.AddedItemComponent(); 6707 parseBackboneAttributes(xpp, res); 6708 next(xpp); 6709 int eventType = nextNoWhitespace(xpp); 6710 while (eventType != XmlPullParser.END_TAG) { 6711 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequenceLinkId")) { 6712 res.getSequenceLinkId().add(parsePositiveInt(xpp)); 6713 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 6714 res.setService(parseCoding(xpp)); 6715 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fee")) { 6716 res.setFee(parseMoney(xpp)); 6717 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumberLinkId")) { 6718 res.getNoteNumberLinkId().add(parsePositiveInt(xpp)); 6719 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 6720 res.getAdjudication().add(parseExplanationOfBenefitAddedItemAdjudicationComponent(xpp, owner)); 6721 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 6722 res.getDetail().add(parseExplanationOfBenefitAddedItemsDetailComponent(xpp, owner)); 6723 } else if (!parseBackboneContent(eventType, xpp, res)) 6724 unknownContent(xpp); 6725 eventType = nextNoWhitespace(xpp); 6726 } 6727 next(xpp); 6728 parseElementClose(res); 6729 return res; 6730 } 6731 6732 protected ExplanationOfBenefit.AddedItemAdjudicationComponent parseExplanationOfBenefitAddedItemAdjudicationComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 6733 ExplanationOfBenefit.AddedItemAdjudicationComponent res = new ExplanationOfBenefit.AddedItemAdjudicationComponent(); 6734 parseBackboneAttributes(xpp, res); 6735 next(xpp); 6736 int eventType = nextNoWhitespace(xpp); 6737 while (eventType != XmlPullParser.END_TAG) { 6738 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 6739 res.setCategory(parseCoding(xpp)); 6740 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 6741 res.setReason(parseCoding(xpp)); 6742 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 6743 res.setAmount(parseMoney(xpp)); 6744 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 6745 res.setValueElement(parseDecimal(xpp)); 6746 } else if (!parseBackboneContent(eventType, xpp, res)) 6747 unknownContent(xpp); 6748 eventType = nextNoWhitespace(xpp); 6749 } 6750 next(xpp); 6751 parseElementClose(res); 6752 return res; 6753 } 6754 6755 protected ExplanationOfBenefit.AddedItemsDetailComponent parseExplanationOfBenefitAddedItemsDetailComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 6756 ExplanationOfBenefit.AddedItemsDetailComponent res = new ExplanationOfBenefit.AddedItemsDetailComponent(); 6757 parseBackboneAttributes(xpp, res); 6758 next(xpp); 6759 int eventType = nextNoWhitespace(xpp); 6760 while (eventType != XmlPullParser.END_TAG) { 6761 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 6762 res.setService(parseCoding(xpp)); 6763 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fee")) { 6764 res.setFee(parseMoney(xpp)); 6765 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 6766 res.getAdjudication().add(parseExplanationOfBenefitAddedItemDetailAdjudicationComponent(xpp, owner)); 6767 } else if (!parseBackboneContent(eventType, xpp, res)) 6768 unknownContent(xpp); 6769 eventType = nextNoWhitespace(xpp); 6770 } 6771 next(xpp); 6772 parseElementClose(res); 6773 return res; 6774 } 6775 6776 protected ExplanationOfBenefit.AddedItemDetailAdjudicationComponent parseExplanationOfBenefitAddedItemDetailAdjudicationComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 6777 ExplanationOfBenefit.AddedItemDetailAdjudicationComponent res = new ExplanationOfBenefit.AddedItemDetailAdjudicationComponent(); 6778 parseBackboneAttributes(xpp, res); 6779 next(xpp); 6780 int eventType = nextNoWhitespace(xpp); 6781 while (eventType != XmlPullParser.END_TAG) { 6782 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 6783 res.setCategory(parseCoding(xpp)); 6784 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 6785 res.setReason(parseCoding(xpp)); 6786 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 6787 res.setAmount(parseMoney(xpp)); 6788 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 6789 res.setValueElement(parseDecimal(xpp)); 6790 } else if (!parseBackboneContent(eventType, xpp, res)) 6791 unknownContent(xpp); 6792 eventType = nextNoWhitespace(xpp); 6793 } 6794 next(xpp); 6795 parseElementClose(res); 6796 return res; 6797 } 6798 6799 protected ExplanationOfBenefit.MissingTeethComponent parseExplanationOfBenefitMissingTeethComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 6800 ExplanationOfBenefit.MissingTeethComponent res = new ExplanationOfBenefit.MissingTeethComponent(); 6801 parseBackboneAttributes(xpp, res); 6802 next(xpp); 6803 int eventType = nextNoWhitespace(xpp); 6804 while (eventType != XmlPullParser.END_TAG) { 6805 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("tooth")) { 6806 res.setTooth(parseCoding(xpp)); 6807 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 6808 res.setReason(parseCoding(xpp)); 6809 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("extractionDate")) { 6810 res.setExtractionDateElement(parseDate(xpp)); 6811 } else if (!parseBackboneContent(eventType, xpp, res)) 6812 unknownContent(xpp); 6813 eventType = nextNoWhitespace(xpp); 6814 } 6815 next(xpp); 6816 parseElementClose(res); 6817 return res; 6818 } 6819 6820 protected ExplanationOfBenefit.NotesComponent parseExplanationOfBenefitNotesComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 6821 ExplanationOfBenefit.NotesComponent res = new ExplanationOfBenefit.NotesComponent(); 6822 parseBackboneAttributes(xpp, res); 6823 next(xpp); 6824 int eventType = nextNoWhitespace(xpp); 6825 while (eventType != XmlPullParser.END_TAG) { 6826 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("number")) { 6827 res.setNumberElement(parsePositiveInt(xpp)); 6828 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6829 res.setType(parseCoding(xpp)); 6830 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 6831 res.setTextElement(parseString(xpp)); 6832 } else if (!parseBackboneContent(eventType, xpp, res)) 6833 unknownContent(xpp); 6834 eventType = nextNoWhitespace(xpp); 6835 } 6836 next(xpp); 6837 parseElementClose(res); 6838 return res; 6839 } 6840 6841 protected ExplanationOfBenefit.BenefitBalanceComponent parseExplanationOfBenefitBenefitBalanceComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 6842 ExplanationOfBenefit.BenefitBalanceComponent res = new ExplanationOfBenefit.BenefitBalanceComponent(); 6843 parseBackboneAttributes(xpp, res); 6844 next(xpp); 6845 int eventType = nextNoWhitespace(xpp); 6846 while (eventType != XmlPullParser.END_TAG) { 6847 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 6848 res.setCategory(parseCoding(xpp)); 6849 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subCategory")) { 6850 res.setSubCategory(parseCoding(xpp)); 6851 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("network")) { 6852 res.setNetwork(parseCoding(xpp)); 6853 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unit")) { 6854 res.setUnit(parseCoding(xpp)); 6855 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("term")) { 6856 res.setTerm(parseCoding(xpp)); 6857 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("financial")) { 6858 res.getFinancial().add(parseExplanationOfBenefitBenefitComponent(xpp, owner)); 6859 } else if (!parseBackboneContent(eventType, xpp, res)) 6860 unknownContent(xpp); 6861 eventType = nextNoWhitespace(xpp); 6862 } 6863 next(xpp); 6864 parseElementClose(res); 6865 return res; 6866 } 6867 6868 protected ExplanationOfBenefit.BenefitComponent parseExplanationOfBenefitBenefitComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 6869 ExplanationOfBenefit.BenefitComponent res = new ExplanationOfBenefit.BenefitComponent(); 6870 parseBackboneAttributes(xpp, res); 6871 next(xpp); 6872 int eventType = nextNoWhitespace(xpp); 6873 while (eventType != XmlPullParser.END_TAG) { 6874 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6875 res.setType(parseCoding(xpp)); 6876 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "benefit")) { 6877 res.setBenefit(parseType("benefit", xpp)); 6878 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "benefitUsed")) { 6879 res.setBenefitUsed(parseType("benefitUsed", xpp)); 6880 } else if (!parseBackboneContent(eventType, xpp, res)) 6881 unknownContent(xpp); 6882 eventType = nextNoWhitespace(xpp); 6883 } 6884 next(xpp); 6885 parseElementClose(res); 6886 return res; 6887 } 6888 6889 protected FamilyMemberHistory parseFamilyMemberHistory(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6890 FamilyMemberHistory res = new FamilyMemberHistory(); 6891 parseDomainResourceAttributes(xpp, res); 6892 next(xpp); 6893 int eventType = nextNoWhitespace(xpp); 6894 while (eventType != XmlPullParser.END_TAG) { 6895 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6896 res.getIdentifier().add(parseIdentifier(xpp)); 6897 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 6898 res.setPatient(parseReference(xpp)); 6899 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 6900 res.setDateElement(parseDateTime(xpp)); 6901 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 6902 res.setStatusElement(parseEnumeration(xpp, FamilyMemberHistory.FamilyHistoryStatus.NULL, new FamilyMemberHistory.FamilyHistoryStatusEnumFactory())); 6903 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 6904 res.setNameElement(parseString(xpp)); 6905 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 6906 res.setRelationship(parseCodeableConcept(xpp)); 6907 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gender")) { 6908 res.setGenderElement(parseEnumeration(xpp, Enumerations.AdministrativeGender.NULL, new Enumerations.AdministrativeGenderEnumFactory())); 6909 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "born")) { 6910 res.setBorn(parseType("born", xpp)); 6911 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "age")) { 6912 res.setAge(parseType("age", xpp)); 6913 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "deceased")) { 6914 res.setDeceased(parseType("deceased", xpp)); 6915 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 6916 res.setNote(parseAnnotation(xpp)); 6917 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 6918 res.getCondition().add(parseFamilyMemberHistoryFamilyMemberHistoryConditionComponent(xpp, res)); 6919 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6920 unknownContent(xpp); 6921 eventType = nextNoWhitespace(xpp); 6922 } 6923 next(xpp); 6924 parseElementClose(res); 6925 return res; 6926 } 6927 6928 protected FamilyMemberHistory.FamilyMemberHistoryConditionComponent parseFamilyMemberHistoryFamilyMemberHistoryConditionComponent(XmlPullParser xpp, FamilyMemberHistory owner) throws XmlPullParserException, IOException, FHIRFormatError { 6929 FamilyMemberHistory.FamilyMemberHistoryConditionComponent res = new FamilyMemberHistory.FamilyMemberHistoryConditionComponent(); 6930 parseBackboneAttributes(xpp, res); 6931 next(xpp); 6932 int eventType = nextNoWhitespace(xpp); 6933 while (eventType != XmlPullParser.END_TAG) { 6934 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 6935 res.setCode(parseCodeableConcept(xpp)); 6936 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 6937 res.setOutcome(parseCodeableConcept(xpp)); 6938 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "onset")) { 6939 res.setOnset(parseType("onset", xpp)); 6940 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 6941 res.setNote(parseAnnotation(xpp)); 6942 } else if (!parseBackboneContent(eventType, xpp, res)) 6943 unknownContent(xpp); 6944 eventType = nextNoWhitespace(xpp); 6945 } 6946 next(xpp); 6947 parseElementClose(res); 6948 return res; 6949 } 6950 6951 protected Flag parseFlag(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6952 Flag res = new Flag(); 6953 parseDomainResourceAttributes(xpp, res); 6954 next(xpp); 6955 int eventType = nextNoWhitespace(xpp); 6956 while (eventType != XmlPullParser.END_TAG) { 6957 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6958 res.getIdentifier().add(parseIdentifier(xpp)); 6959 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 6960 res.setCategory(parseCodeableConcept(xpp)); 6961 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 6962 res.setStatusElement(parseEnumeration(xpp, Flag.FlagStatus.NULL, new Flag.FlagStatusEnumFactory())); 6963 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 6964 res.setPeriod(parsePeriod(xpp)); 6965 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 6966 res.setSubject(parseReference(xpp)); 6967 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 6968 res.setEncounter(parseReference(xpp)); 6969 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 6970 res.setAuthor(parseReference(xpp)); 6971 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 6972 res.setCode(parseCodeableConcept(xpp)); 6973 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6974 unknownContent(xpp); 6975 eventType = nextNoWhitespace(xpp); 6976 } 6977 next(xpp); 6978 parseElementClose(res); 6979 return res; 6980 } 6981 6982 protected Goal parseGoal(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6983 Goal res = new Goal(); 6984 parseDomainResourceAttributes(xpp, res); 6985 next(xpp); 6986 int eventType = nextNoWhitespace(xpp); 6987 while (eventType != XmlPullParser.END_TAG) { 6988 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6989 res.getIdentifier().add(parseIdentifier(xpp)); 6990 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 6991 res.setSubject(parseReference(xpp)); 6992 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "start")) { 6993 res.setStart(parseType("start", xpp)); 6994 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "target")) { 6995 res.setTarget(parseType("target", xpp)); 6996 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 6997 res.getCategory().add(parseCodeableConcept(xpp)); 6998 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 6999 res.setDescriptionElement(parseString(xpp)); 7000 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 7001 res.setStatusElement(parseEnumeration(xpp, Goal.GoalStatus.NULL, new Goal.GoalStatusEnumFactory())); 7002 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusDate")) { 7003 res.setStatusDateElement(parseDate(xpp)); 7004 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusReason")) { 7005 res.setStatusReason(parseCodeableConcept(xpp)); 7006 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 7007 res.setAuthor(parseReference(xpp)); 7008 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 7009 res.setPriority(parseCodeableConcept(xpp)); 7010 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("addresses")) { 7011 res.getAddresses().add(parseReference(xpp)); 7012 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 7013 res.getNote().add(parseAnnotation(xpp)); 7014 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 7015 res.getOutcome().add(parseGoalGoalOutcomeComponent(xpp, res)); 7016 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7017 unknownContent(xpp); 7018 eventType = nextNoWhitespace(xpp); 7019 } 7020 next(xpp); 7021 parseElementClose(res); 7022 return res; 7023 } 7024 7025 protected Goal.GoalOutcomeComponent parseGoalGoalOutcomeComponent(XmlPullParser xpp, Goal owner) throws XmlPullParserException, IOException, FHIRFormatError { 7026 Goal.GoalOutcomeComponent res = new Goal.GoalOutcomeComponent(); 7027 parseBackboneAttributes(xpp, res); 7028 next(xpp); 7029 int eventType = nextNoWhitespace(xpp); 7030 while (eventType != XmlPullParser.END_TAG) { 7031 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "result")) { 7032 res.setResult(parseType("result", xpp)); 7033 } else if (!parseBackboneContent(eventType, xpp, res)) 7034 unknownContent(xpp); 7035 eventType = nextNoWhitespace(xpp); 7036 } 7037 next(xpp); 7038 parseElementClose(res); 7039 return res; 7040 } 7041 7042 protected Group parseGroup(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7043 Group res = new Group(); 7044 parseDomainResourceAttributes(xpp, res); 7045 next(xpp); 7046 int eventType = nextNoWhitespace(xpp); 7047 while (eventType != XmlPullParser.END_TAG) { 7048 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7049 res.getIdentifier().add(parseIdentifier(xpp)); 7050 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 7051 res.setTypeElement(parseEnumeration(xpp, Group.GroupType.NULL, new Group.GroupTypeEnumFactory())); 7052 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actual")) { 7053 res.setActualElement(parseBoolean(xpp)); 7054 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 7055 res.setActiveElement(parseBoolean(xpp)); 7056 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 7057 res.setCode(parseCodeableConcept(xpp)); 7058 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 7059 res.setNameElement(parseString(xpp)); 7060 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 7061 res.setQuantityElement(parseUnsignedInt(xpp)); 7062 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("characteristic")) { 7063 res.getCharacteristic().add(parseGroupGroupCharacteristicComponent(xpp, res)); 7064 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("member")) { 7065 res.getMember().add(parseGroupGroupMemberComponent(xpp, res)); 7066 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7067 unknownContent(xpp); 7068 eventType = nextNoWhitespace(xpp); 7069 } 7070 next(xpp); 7071 parseElementClose(res); 7072 return res; 7073 } 7074 7075 protected Group.GroupCharacteristicComponent parseGroupGroupCharacteristicComponent(XmlPullParser xpp, Group owner) throws XmlPullParserException, IOException, FHIRFormatError { 7076 Group.GroupCharacteristicComponent res = new Group.GroupCharacteristicComponent(); 7077 parseBackboneAttributes(xpp, res); 7078 next(xpp); 7079 int eventType = nextNoWhitespace(xpp); 7080 while (eventType != XmlPullParser.END_TAG) { 7081 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 7082 res.setCode(parseCodeableConcept(xpp)); 7083 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 7084 res.setValue(parseType("value", xpp)); 7085 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exclude")) { 7086 res.setExcludeElement(parseBoolean(xpp)); 7087 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 7088 res.setPeriod(parsePeriod(xpp)); 7089 } else if (!parseBackboneContent(eventType, xpp, res)) 7090 unknownContent(xpp); 7091 eventType = nextNoWhitespace(xpp); 7092 } 7093 next(xpp); 7094 parseElementClose(res); 7095 return res; 7096 } 7097 7098 protected Group.GroupMemberComponent parseGroupGroupMemberComponent(XmlPullParser xpp, Group owner) throws XmlPullParserException, IOException, FHIRFormatError { 7099 Group.GroupMemberComponent res = new Group.GroupMemberComponent(); 7100 parseBackboneAttributes(xpp, res); 7101 next(xpp); 7102 int eventType = nextNoWhitespace(xpp); 7103 while (eventType != XmlPullParser.END_TAG) { 7104 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entity")) { 7105 res.setEntity(parseReference(xpp)); 7106 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 7107 res.setPeriod(parsePeriod(xpp)); 7108 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("inactive")) { 7109 res.setInactiveElement(parseBoolean(xpp)); 7110 } else if (!parseBackboneContent(eventType, xpp, res)) 7111 unknownContent(xpp); 7112 eventType = nextNoWhitespace(xpp); 7113 } 7114 next(xpp); 7115 parseElementClose(res); 7116 return res; 7117 } 7118 7119 protected GuidanceResponse parseGuidanceResponse(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7120 GuidanceResponse res = new GuidanceResponse(); 7121 parseDomainResourceAttributes(xpp, res); 7122 next(xpp); 7123 int eventType = nextNoWhitespace(xpp); 7124 while (eventType != XmlPullParser.END_TAG) { 7125 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestId")) { 7126 res.setRequestIdElement(parseString(xpp)); 7127 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("module")) { 7128 res.setModule(parseReference(xpp)); 7129 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 7130 res.setStatusElement(parseEnumeration(xpp, GuidanceResponse.GuidanceResponseStatus.NULL, new GuidanceResponse.GuidanceResponseStatusEnumFactory())); 7131 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("evaluationMessage")) { 7132 res.getEvaluationMessage().add(parseReference(xpp)); 7133 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outputParameters")) { 7134 res.setOutputParameters(parseReference(xpp)); 7135 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 7136 res.getAction().add(parseGuidanceResponseGuidanceResponseActionComponent(xpp, res)); 7137 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dataRequirement")) { 7138 res.getDataRequirement().add(parseDataRequirement(xpp)); 7139 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7140 unknownContent(xpp); 7141 eventType = nextNoWhitespace(xpp); 7142 } 7143 next(xpp); 7144 parseElementClose(res); 7145 return res; 7146 } 7147 7148 protected GuidanceResponse.GuidanceResponseActionComponent parseGuidanceResponseGuidanceResponseActionComponent(XmlPullParser xpp, GuidanceResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 7149 GuidanceResponse.GuidanceResponseActionComponent res = new GuidanceResponse.GuidanceResponseActionComponent(); 7150 parseBackboneAttributes(xpp, res); 7151 next(xpp); 7152 int eventType = nextNoWhitespace(xpp); 7153 while (eventType != XmlPullParser.END_TAG) { 7154 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actionIdentifier")) { 7155 res.setActionIdentifier(parseIdentifier(xpp)); 7156 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("label")) { 7157 res.setLabelElement(parseString(xpp)); 7158 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 7159 res.setTitleElement(parseString(xpp)); 7160 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 7161 res.setDescriptionElement(parseString(xpp)); 7162 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("textEquivalent")) { 7163 res.setTextEquivalentElement(parseString(xpp)); 7164 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("concept")) { 7165 res.getConcept().add(parseCodeableConcept(xpp)); 7166 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingEvidence")) { 7167 res.getSupportingEvidence().add(parseAttachment(xpp)); 7168 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedAction")) { 7169 res.setRelatedAction(parseGuidanceResponseGuidanceResponseActionRelatedActionComponent(xpp, owner)); 7170 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 7171 res.getDocumentation().add(parseAttachment(xpp)); 7172 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 7173 res.getParticipant().add(parseReference(xpp)); 7174 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 7175 res.setTypeElement(parseCode(xpp)); 7176 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("behavior")) { 7177 res.getBehavior().add(parseGuidanceResponseGuidanceResponseActionBehaviorComponent(xpp, owner)); 7178 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 7179 res.setResource(parseReference(xpp)); 7180 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 7181 res.getAction().add(parseGuidanceResponseGuidanceResponseActionComponent(xpp, owner)); 7182 } else if (!parseBackboneContent(eventType, xpp, res)) 7183 unknownContent(xpp); 7184 eventType = nextNoWhitespace(xpp); 7185 } 7186 next(xpp); 7187 parseElementClose(res); 7188 return res; 7189 } 7190 7191 protected GuidanceResponse.GuidanceResponseActionRelatedActionComponent parseGuidanceResponseGuidanceResponseActionRelatedActionComponent(XmlPullParser xpp, GuidanceResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 7192 GuidanceResponse.GuidanceResponseActionRelatedActionComponent res = new GuidanceResponse.GuidanceResponseActionRelatedActionComponent(); 7193 parseBackboneAttributes(xpp, res); 7194 next(xpp); 7195 int eventType = nextNoWhitespace(xpp); 7196 while (eventType != XmlPullParser.END_TAG) { 7197 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actionIdentifier")) { 7198 res.setActionIdentifier(parseIdentifier(xpp)); 7199 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 7200 res.setRelationshipElement(parseCode(xpp)); 7201 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "offset")) { 7202 res.setOffset(parseType("offset", xpp)); 7203 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("anchor")) { 7204 res.setAnchorElement(parseCode(xpp)); 7205 } else if (!parseBackboneContent(eventType, xpp, res)) 7206 unknownContent(xpp); 7207 eventType = nextNoWhitespace(xpp); 7208 } 7209 next(xpp); 7210 parseElementClose(res); 7211 return res; 7212 } 7213 7214 protected GuidanceResponse.GuidanceResponseActionBehaviorComponent parseGuidanceResponseGuidanceResponseActionBehaviorComponent(XmlPullParser xpp, GuidanceResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 7215 GuidanceResponse.GuidanceResponseActionBehaviorComponent res = new GuidanceResponse.GuidanceResponseActionBehaviorComponent(); 7216 parseBackboneAttributes(xpp, res); 7217 next(xpp); 7218 int eventType = nextNoWhitespace(xpp); 7219 while (eventType != XmlPullParser.END_TAG) { 7220 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 7221 res.setType(parseCoding(xpp)); 7222 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 7223 res.setValue(parseCoding(xpp)); 7224 } else if (!parseBackboneContent(eventType, xpp, res)) 7225 unknownContent(xpp); 7226 eventType = nextNoWhitespace(xpp); 7227 } 7228 next(xpp); 7229 parseElementClose(res); 7230 return res; 7231 } 7232 7233 protected HealthcareService parseHealthcareService(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7234 HealthcareService res = new HealthcareService(); 7235 parseDomainResourceAttributes(xpp, res); 7236 next(xpp); 7237 int eventType = nextNoWhitespace(xpp); 7238 while (eventType != XmlPullParser.END_TAG) { 7239 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7240 res.getIdentifier().add(parseIdentifier(xpp)); 7241 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("providedBy")) { 7242 res.setProvidedBy(parseReference(xpp)); 7243 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceCategory")) { 7244 res.setServiceCategory(parseCodeableConcept(xpp)); 7245 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceType")) { 7246 res.getServiceType().add(parseCodeableConcept(xpp)); 7247 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialty")) { 7248 res.getSpecialty().add(parseCodeableConcept(xpp)); 7249 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 7250 res.getLocation().add(parseReference(xpp)); 7251 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceName")) { 7252 res.setServiceNameElement(parseString(xpp)); 7253 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 7254 res.setCommentElement(parseString(xpp)); 7255 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("extraDetails")) { 7256 res.setExtraDetailsElement(parseString(xpp)); 7257 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("photo")) { 7258 res.setPhoto(parseAttachment(xpp)); 7259 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 7260 res.getTelecom().add(parseContactPoint(xpp)); 7261 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverageArea")) { 7262 res.getCoverageArea().add(parseReference(xpp)); 7263 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceProvisionCode")) { 7264 res.getServiceProvisionCode().add(parseCodeableConcept(xpp)); 7265 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eligibility")) { 7266 res.setEligibility(parseCodeableConcept(xpp)); 7267 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eligibilityNote")) { 7268 res.setEligibilityNoteElement(parseString(xpp)); 7269 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("programName")) { 7270 res.getProgramName().add(parseString(xpp)); 7271 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("characteristic")) { 7272 res.getCharacteristic().add(parseCodeableConcept(xpp)); 7273 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referralMethod")) { 7274 res.getReferralMethod().add(parseCodeableConcept(xpp)); 7275 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publicKey")) { 7276 res.setPublicKeyElement(parseString(xpp)); 7277 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("appointmentRequired")) { 7278 res.setAppointmentRequiredElement(parseBoolean(xpp)); 7279 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availableTime")) { 7280 res.getAvailableTime().add(parseHealthcareServiceHealthcareServiceAvailableTimeComponent(xpp, res)); 7281 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notAvailable")) { 7282 res.getNotAvailable().add(parseHealthcareServiceHealthcareServiceNotAvailableComponent(xpp, res)); 7283 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availabilityExceptions")) { 7284 res.setAvailabilityExceptionsElement(parseString(xpp)); 7285 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7286 unknownContent(xpp); 7287 eventType = nextNoWhitespace(xpp); 7288 } 7289 next(xpp); 7290 parseElementClose(res); 7291 return res; 7292 } 7293 7294 protected HealthcareService.HealthcareServiceAvailableTimeComponent parseHealthcareServiceHealthcareServiceAvailableTimeComponent(XmlPullParser xpp, HealthcareService owner) throws XmlPullParserException, IOException, FHIRFormatError { 7295 HealthcareService.HealthcareServiceAvailableTimeComponent res = new HealthcareService.HealthcareServiceAvailableTimeComponent(); 7296 parseBackboneAttributes(xpp, res); 7297 next(xpp); 7298 int eventType = nextNoWhitespace(xpp); 7299 while (eventType != XmlPullParser.END_TAG) { 7300 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("daysOfWeek")) { 7301 res.getDaysOfWeek().add(parseEnumeration(xpp, HealthcareService.DaysOfWeek.NULL, new HealthcareService.DaysOfWeekEnumFactory())); 7302 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("allDay")) { 7303 res.setAllDayElement(parseBoolean(xpp)); 7304 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availableStartTime")) { 7305 res.setAvailableStartTimeElement(parseTime(xpp)); 7306 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availableEndTime")) { 7307 res.setAvailableEndTimeElement(parseTime(xpp)); 7308 } else if (!parseBackboneContent(eventType, xpp, res)) 7309 unknownContent(xpp); 7310 eventType = nextNoWhitespace(xpp); 7311 } 7312 next(xpp); 7313 parseElementClose(res); 7314 return res; 7315 } 7316 7317 protected HealthcareService.HealthcareServiceNotAvailableComponent parseHealthcareServiceHealthcareServiceNotAvailableComponent(XmlPullParser xpp, HealthcareService owner) throws XmlPullParserException, IOException, FHIRFormatError { 7318 HealthcareService.HealthcareServiceNotAvailableComponent res = new HealthcareService.HealthcareServiceNotAvailableComponent(); 7319 parseBackboneAttributes(xpp, res); 7320 next(xpp); 7321 int eventType = nextNoWhitespace(xpp); 7322 while (eventType != XmlPullParser.END_TAG) { 7323 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 7324 res.setDescriptionElement(parseString(xpp)); 7325 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("during")) { 7326 res.setDuring(parsePeriod(xpp)); 7327 } else if (!parseBackboneContent(eventType, xpp, res)) 7328 unknownContent(xpp); 7329 eventType = nextNoWhitespace(xpp); 7330 } 7331 next(xpp); 7332 parseElementClose(res); 7333 return res; 7334 } 7335 7336 protected ImagingExcerpt parseImagingExcerpt(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7337 ImagingExcerpt res = new ImagingExcerpt(); 7338 parseDomainResourceAttributes(xpp, res); 7339 next(xpp); 7340 int eventType = nextNoWhitespace(xpp); 7341 while (eventType != XmlPullParser.END_TAG) { 7342 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uid")) { 7343 res.setUidElement(parseOid(xpp)); 7344 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 7345 res.setPatient(parseReference(xpp)); 7346 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authoringTime")) { 7347 res.setAuthoringTimeElement(parseDateTime(xpp)); 7348 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 7349 res.setAuthor(parseReference(xpp)); 7350 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 7351 res.setTitle(parseCodeableConcept(xpp)); 7352 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 7353 res.setDescriptionElement(parseString(xpp)); 7354 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("study")) { 7355 res.getStudy().add(parseImagingExcerptStudyComponent(xpp, res)); 7356 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7357 unknownContent(xpp); 7358 eventType = nextNoWhitespace(xpp); 7359 } 7360 next(xpp); 7361 parseElementClose(res); 7362 return res; 7363 } 7364 7365 protected ImagingExcerpt.StudyComponent parseImagingExcerptStudyComponent(XmlPullParser xpp, ImagingExcerpt owner) throws XmlPullParserException, IOException, FHIRFormatError { 7366 ImagingExcerpt.StudyComponent res = new ImagingExcerpt.StudyComponent(); 7367 parseBackboneAttributes(xpp, res); 7368 next(xpp); 7369 int eventType = nextNoWhitespace(xpp); 7370 while (eventType != XmlPullParser.END_TAG) { 7371 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uid")) { 7372 res.setUidElement(parseOid(xpp)); 7373 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("imagingStudy")) { 7374 res.setImagingStudy(parseReference(xpp)); 7375 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dicom")) { 7376 res.getDicom().add(parseImagingExcerptStudyDicomComponent(xpp, owner)); 7377 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("viewable")) { 7378 res.getViewable().add(parseImagingExcerptStudyViewableComponent(xpp, owner)); 7379 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("series")) { 7380 res.getSeries().add(parseImagingExcerptSeriesComponent(xpp, owner)); 7381 } else if (!parseBackboneContent(eventType, xpp, res)) 7382 unknownContent(xpp); 7383 eventType = nextNoWhitespace(xpp); 7384 } 7385 next(xpp); 7386 parseElementClose(res); 7387 return res; 7388 } 7389 7390 protected ImagingExcerpt.StudyDicomComponent parseImagingExcerptStudyDicomComponent(XmlPullParser xpp, ImagingExcerpt owner) throws XmlPullParserException, IOException, FHIRFormatError { 7391 ImagingExcerpt.StudyDicomComponent res = new ImagingExcerpt.StudyDicomComponent(); 7392 parseBackboneAttributes(xpp, res); 7393 next(xpp); 7394 int eventType = nextNoWhitespace(xpp); 7395 while (eventType != XmlPullParser.END_TAG) { 7396 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 7397 res.setTypeElement(parseEnumeration(xpp, ImagingExcerpt.DWebType.NULL, new ImagingExcerpt.DWebTypeEnumFactory())); 7398 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 7399 res.setUrlElement(parseUri(xpp)); 7400 } else if (!parseBackboneContent(eventType, xpp, res)) 7401 unknownContent(xpp); 7402 eventType = nextNoWhitespace(xpp); 7403 } 7404 next(xpp); 7405 parseElementClose(res); 7406 return res; 7407 } 7408 7409 protected ImagingExcerpt.StudyViewableComponent parseImagingExcerptStudyViewableComponent(XmlPullParser xpp, ImagingExcerpt owner) throws XmlPullParserException, IOException, FHIRFormatError { 7410 ImagingExcerpt.StudyViewableComponent res = new ImagingExcerpt.StudyViewableComponent(); 7411 parseBackboneAttributes(xpp, res); 7412 next(xpp); 7413 int eventType = nextNoWhitespace(xpp); 7414 while (eventType != XmlPullParser.END_TAG) { 7415 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentType")) { 7416 res.setContentTypeElement(parseCode(xpp)); 7417 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("height")) { 7418 res.setHeightElement(parsePositiveInt(xpp)); 7419 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("width")) { 7420 res.setWidthElement(parsePositiveInt(xpp)); 7421 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("frames")) { 7422 res.setFramesElement(parsePositiveInt(xpp)); 7423 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("duration")) { 7424 res.setDurationElement(parseUnsignedInt(xpp)); 7425 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("size")) { 7426 res.setSizeElement(parseUnsignedInt(xpp)); 7427 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 7428 res.setTitleElement(parseString(xpp)); 7429 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 7430 res.setUrlElement(parseUri(xpp)); 7431 } else if (!parseBackboneContent(eventType, xpp, res)) 7432 unknownContent(xpp); 7433 eventType = nextNoWhitespace(xpp); 7434 } 7435 next(xpp); 7436 parseElementClose(res); 7437 return res; 7438 } 7439 7440 protected ImagingExcerpt.SeriesComponent parseImagingExcerptSeriesComponent(XmlPullParser xpp, ImagingExcerpt owner) throws XmlPullParserException, IOException, FHIRFormatError { 7441 ImagingExcerpt.SeriesComponent res = new ImagingExcerpt.SeriesComponent(); 7442 parseBackboneAttributes(xpp, res); 7443 next(xpp); 7444 int eventType = nextNoWhitespace(xpp); 7445 while (eventType != XmlPullParser.END_TAG) { 7446 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uid")) { 7447 res.setUidElement(parseOid(xpp)); 7448 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dicom")) { 7449 res.getDicom().add(parseImagingExcerptSeriesDicomComponent(xpp, owner)); 7450 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instance")) { 7451 res.getInstance().add(parseImagingExcerptInstanceComponent(xpp, owner)); 7452 } else if (!parseBackboneContent(eventType, xpp, res)) 7453 unknownContent(xpp); 7454 eventType = nextNoWhitespace(xpp); 7455 } 7456 next(xpp); 7457 parseElementClose(res); 7458 return res; 7459 } 7460 7461 protected ImagingExcerpt.SeriesDicomComponent parseImagingExcerptSeriesDicomComponent(XmlPullParser xpp, ImagingExcerpt owner) throws XmlPullParserException, IOException, FHIRFormatError { 7462 ImagingExcerpt.SeriesDicomComponent res = new ImagingExcerpt.SeriesDicomComponent(); 7463 parseBackboneAttributes(xpp, res); 7464 next(xpp); 7465 int eventType = nextNoWhitespace(xpp); 7466 while (eventType != XmlPullParser.END_TAG) { 7467 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 7468 res.setTypeElement(parseEnumeration(xpp, ImagingExcerpt.DWebType.NULL, new ImagingExcerpt.DWebTypeEnumFactory())); 7469 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 7470 res.setUrlElement(parseUri(xpp)); 7471 } else if (!parseBackboneContent(eventType, xpp, res)) 7472 unknownContent(xpp); 7473 eventType = nextNoWhitespace(xpp); 7474 } 7475 next(xpp); 7476 parseElementClose(res); 7477 return res; 7478 } 7479 7480 protected ImagingExcerpt.InstanceComponent parseImagingExcerptInstanceComponent(XmlPullParser xpp, ImagingExcerpt owner) throws XmlPullParserException, IOException, FHIRFormatError { 7481 ImagingExcerpt.InstanceComponent res = new ImagingExcerpt.InstanceComponent(); 7482 parseBackboneAttributes(xpp, res); 7483 next(xpp); 7484 int eventType = nextNoWhitespace(xpp); 7485 while (eventType != XmlPullParser.END_TAG) { 7486 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sopClass")) { 7487 res.setSopClassElement(parseOid(xpp)); 7488 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uid")) { 7489 res.setUidElement(parseOid(xpp)); 7490 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dicom")) { 7491 res.getDicom().add(parseImagingExcerptInstanceDicomComponent(xpp, owner)); 7492 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("frameNumbers")) { 7493 res.getFrameNumbers().add(parseUnsignedInt(xpp)); 7494 } else if (!parseBackboneContent(eventType, xpp, res)) 7495 unknownContent(xpp); 7496 eventType = nextNoWhitespace(xpp); 7497 } 7498 next(xpp); 7499 parseElementClose(res); 7500 return res; 7501 } 7502 7503 protected ImagingExcerpt.InstanceDicomComponent parseImagingExcerptInstanceDicomComponent(XmlPullParser xpp, ImagingExcerpt owner) throws XmlPullParserException, IOException, FHIRFormatError { 7504 ImagingExcerpt.InstanceDicomComponent res = new ImagingExcerpt.InstanceDicomComponent(); 7505 parseBackboneAttributes(xpp, res); 7506 next(xpp); 7507 int eventType = nextNoWhitespace(xpp); 7508 while (eventType != XmlPullParser.END_TAG) { 7509 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 7510 res.setTypeElement(parseEnumeration(xpp, ImagingExcerpt.DWebType.NULL, new ImagingExcerpt.DWebTypeEnumFactory())); 7511 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 7512 res.setUrlElement(parseUri(xpp)); 7513 } else if (!parseBackboneContent(eventType, xpp, res)) 7514 unknownContent(xpp); 7515 eventType = nextNoWhitespace(xpp); 7516 } 7517 next(xpp); 7518 parseElementClose(res); 7519 return res; 7520 } 7521 7522 protected ImagingObjectSelection parseImagingObjectSelection(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7523 ImagingObjectSelection res = new ImagingObjectSelection(); 7524 parseDomainResourceAttributes(xpp, res); 7525 next(xpp); 7526 int eventType = nextNoWhitespace(xpp); 7527 while (eventType != XmlPullParser.END_TAG) { 7528 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uid")) { 7529 res.setUidElement(parseOid(xpp)); 7530 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 7531 res.setPatient(parseReference(xpp)); 7532 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authoringTime")) { 7533 res.setAuthoringTimeElement(parseDateTime(xpp)); 7534 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 7535 res.setAuthor(parseReference(xpp)); 7536 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 7537 res.setTitle(parseCodeableConcept(xpp)); 7538 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 7539 res.setDescriptionElement(parseString(xpp)); 7540 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("study")) { 7541 res.getStudy().add(parseImagingObjectSelectionStudyComponent(xpp, res)); 7542 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7543 unknownContent(xpp); 7544 eventType = nextNoWhitespace(xpp); 7545 } 7546 next(xpp); 7547 parseElementClose(res); 7548 return res; 7549 } 7550 7551 protected ImagingObjectSelection.StudyComponent parseImagingObjectSelectionStudyComponent(XmlPullParser xpp, ImagingObjectSelection owner) throws XmlPullParserException, IOException, FHIRFormatError { 7552 ImagingObjectSelection.StudyComponent res = new ImagingObjectSelection.StudyComponent(); 7553 parseBackboneAttributes(xpp, res); 7554 next(xpp); 7555 int eventType = nextNoWhitespace(xpp); 7556 while (eventType != XmlPullParser.END_TAG) { 7557 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uid")) { 7558 res.setUidElement(parseOid(xpp)); 7559 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 7560 res.setUrlElement(parseUri(xpp)); 7561 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("imagingStudy")) { 7562 res.setImagingStudy(parseReference(xpp)); 7563 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("series")) { 7564 res.getSeries().add(parseImagingObjectSelectionSeriesComponent(xpp, owner)); 7565 } else if (!parseBackboneContent(eventType, xpp, res)) 7566 unknownContent(xpp); 7567 eventType = nextNoWhitespace(xpp); 7568 } 7569 next(xpp); 7570 parseElementClose(res); 7571 return res; 7572 } 7573 7574 protected ImagingObjectSelection.SeriesComponent parseImagingObjectSelectionSeriesComponent(XmlPullParser xpp, ImagingObjectSelection owner) throws XmlPullParserException, IOException, FHIRFormatError { 7575 ImagingObjectSelection.SeriesComponent res = new ImagingObjectSelection.SeriesComponent(); 7576 parseBackboneAttributes(xpp, res); 7577 next(xpp); 7578 int eventType = nextNoWhitespace(xpp); 7579 while (eventType != XmlPullParser.END_TAG) { 7580 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uid")) { 7581 res.setUidElement(parseOid(xpp)); 7582 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 7583 res.setUrlElement(parseUri(xpp)); 7584 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instance")) { 7585 res.getInstance().add(parseImagingObjectSelectionInstanceComponent(xpp, owner)); 7586 } else if (!parseBackboneContent(eventType, xpp, res)) 7587 unknownContent(xpp); 7588 eventType = nextNoWhitespace(xpp); 7589 } 7590 next(xpp); 7591 parseElementClose(res); 7592 return res; 7593 } 7594 7595 protected ImagingObjectSelection.InstanceComponent parseImagingObjectSelectionInstanceComponent(XmlPullParser xpp, ImagingObjectSelection owner) throws XmlPullParserException, IOException, FHIRFormatError { 7596 ImagingObjectSelection.InstanceComponent res = new ImagingObjectSelection.InstanceComponent(); 7597 parseBackboneAttributes(xpp, res); 7598 next(xpp); 7599 int eventType = nextNoWhitespace(xpp); 7600 while (eventType != XmlPullParser.END_TAG) { 7601 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sopClass")) { 7602 res.setSopClassElement(parseOid(xpp)); 7603 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uid")) { 7604 res.setUidElement(parseOid(xpp)); 7605 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 7606 res.setUrlElement(parseUri(xpp)); 7607 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("frame")) { 7608 res.getFrame().add(parseImagingObjectSelectionFramesComponent(xpp, owner)); 7609 } else if (!parseBackboneContent(eventType, xpp, res)) 7610 unknownContent(xpp); 7611 eventType = nextNoWhitespace(xpp); 7612 } 7613 next(xpp); 7614 parseElementClose(res); 7615 return res; 7616 } 7617 7618 protected ImagingObjectSelection.FramesComponent parseImagingObjectSelectionFramesComponent(XmlPullParser xpp, ImagingObjectSelection owner) throws XmlPullParserException, IOException, FHIRFormatError { 7619 ImagingObjectSelection.FramesComponent res = new ImagingObjectSelection.FramesComponent(); 7620 parseBackboneAttributes(xpp, res); 7621 next(xpp); 7622 int eventType = nextNoWhitespace(xpp); 7623 while (eventType != XmlPullParser.END_TAG) { 7624 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("number")) { 7625 res.getNumber().add(parseUnsignedInt(xpp)); 7626 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 7627 res.setUrlElement(parseUri(xpp)); 7628 } else if (!parseBackboneContent(eventType, xpp, res)) 7629 unknownContent(xpp); 7630 eventType = nextNoWhitespace(xpp); 7631 } 7632 next(xpp); 7633 parseElementClose(res); 7634 return res; 7635 } 7636 7637 protected ImagingStudy parseImagingStudy(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7638 ImagingStudy res = new ImagingStudy(); 7639 parseDomainResourceAttributes(xpp, res); 7640 next(xpp); 7641 int eventType = nextNoWhitespace(xpp); 7642 while (eventType != XmlPullParser.END_TAG) { 7643 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uid")) { 7644 res.setUidElement(parseOid(xpp)); 7645 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("accession")) { 7646 res.setAccession(parseIdentifier(xpp)); 7647 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7648 res.getIdentifier().add(parseIdentifier(xpp)); 7649 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availability")) { 7650 res.setAvailabilityElement(parseEnumeration(xpp, ImagingStudy.InstanceAvailability.NULL, new ImagingStudy.InstanceAvailabilityEnumFactory())); 7651 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modalityList")) { 7652 res.getModalityList().add(parseCoding(xpp)); 7653 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 7654 res.setPatient(parseReference(xpp)); 7655 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("started")) { 7656 res.setStartedElement(parseDateTime(xpp)); 7657 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("order")) { 7658 res.getOrder().add(parseReference(xpp)); 7659 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referrer")) { 7660 res.setReferrer(parseReference(xpp)); 7661 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("interpreter")) { 7662 res.setInterpreter(parseReference(xpp)); 7663 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 7664 res.setUrlElement(parseUri(xpp)); 7665 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("numberOfSeries")) { 7666 res.setNumberOfSeriesElement(parseUnsignedInt(xpp)); 7667 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("numberOfInstances")) { 7668 res.setNumberOfInstancesElement(parseUnsignedInt(xpp)); 7669 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("procedure")) { 7670 res.getProcedure().add(parseReference(xpp)); 7671 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 7672 res.setDescriptionElement(parseString(xpp)); 7673 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("series")) { 7674 res.getSeries().add(parseImagingStudyImagingStudySeriesComponent(xpp, res)); 7675 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7676 unknownContent(xpp); 7677 eventType = nextNoWhitespace(xpp); 7678 } 7679 next(xpp); 7680 parseElementClose(res); 7681 return res; 7682 } 7683 7684 protected ImagingStudy.ImagingStudySeriesComponent parseImagingStudyImagingStudySeriesComponent(XmlPullParser xpp, ImagingStudy owner) throws XmlPullParserException, IOException, FHIRFormatError { 7685 ImagingStudy.ImagingStudySeriesComponent res = new ImagingStudy.ImagingStudySeriesComponent(); 7686 parseBackboneAttributes(xpp, res); 7687 next(xpp); 7688 int eventType = nextNoWhitespace(xpp); 7689 while (eventType != XmlPullParser.END_TAG) { 7690 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uid")) { 7691 res.setUidElement(parseOid(xpp)); 7692 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("number")) { 7693 res.setNumberElement(parseUnsignedInt(xpp)); 7694 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modality")) { 7695 res.setModality(parseCoding(xpp)); 7696 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 7697 res.setDescriptionElement(parseString(xpp)); 7698 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("numberOfInstances")) { 7699 res.setNumberOfInstancesElement(parseUnsignedInt(xpp)); 7700 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availability")) { 7701 res.setAvailabilityElement(parseEnumeration(xpp, ImagingStudy.InstanceAvailability.NULL, new ImagingStudy.InstanceAvailabilityEnumFactory())); 7702 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 7703 res.setUrlElement(parseUri(xpp)); 7704 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 7705 res.setBodySite(parseCoding(xpp)); 7706 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("laterality")) { 7707 res.setLaterality(parseCoding(xpp)); 7708 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("started")) { 7709 res.setStartedElement(parseDateTime(xpp)); 7710 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instance")) { 7711 res.getInstance().add(parseImagingStudyImagingStudySeriesInstanceComponent(xpp, owner)); 7712 } else if (!parseBackboneContent(eventType, xpp, res)) 7713 unknownContent(xpp); 7714 eventType = nextNoWhitespace(xpp); 7715 } 7716 next(xpp); 7717 parseElementClose(res); 7718 return res; 7719 } 7720 7721 protected ImagingStudy.ImagingStudySeriesInstanceComponent parseImagingStudyImagingStudySeriesInstanceComponent(XmlPullParser xpp, ImagingStudy owner) throws XmlPullParserException, IOException, FHIRFormatError { 7722 ImagingStudy.ImagingStudySeriesInstanceComponent res = new ImagingStudy.ImagingStudySeriesInstanceComponent(); 7723 parseBackboneAttributes(xpp, res); 7724 next(xpp); 7725 int eventType = nextNoWhitespace(xpp); 7726 while (eventType != XmlPullParser.END_TAG) { 7727 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uid")) { 7728 res.setUidElement(parseOid(xpp)); 7729 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("number")) { 7730 res.setNumberElement(parseUnsignedInt(xpp)); 7731 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sopClass")) { 7732 res.setSopClassElement(parseOid(xpp)); 7733 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 7734 res.setTypeElement(parseString(xpp)); 7735 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 7736 res.setTitleElement(parseString(xpp)); 7737 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 7738 res.getContent().add(parseAttachment(xpp)); 7739 } else if (!parseBackboneContent(eventType, xpp, res)) 7740 unknownContent(xpp); 7741 eventType = nextNoWhitespace(xpp); 7742 } 7743 next(xpp); 7744 parseElementClose(res); 7745 return res; 7746 } 7747 7748 protected Immunization parseImmunization(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7749 Immunization res = new Immunization(); 7750 parseDomainResourceAttributes(xpp, res); 7751 next(xpp); 7752 int eventType = nextNoWhitespace(xpp); 7753 while (eventType != XmlPullParser.END_TAG) { 7754 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7755 res.getIdentifier().add(parseIdentifier(xpp)); 7756 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 7757 res.setStatusElement(parseCode(xpp)); 7758 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 7759 res.setDateElement(parseDateTime(xpp)); 7760 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("vaccineCode")) { 7761 res.setVaccineCode(parseCodeableConcept(xpp)); 7762 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 7763 res.setPatient(parseReference(xpp)); 7764 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("wasNotGiven")) { 7765 res.setWasNotGivenElement(parseBoolean(xpp)); 7766 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reported")) { 7767 res.setReportedElement(parseBoolean(xpp)); 7768 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 7769 res.setPerformer(parseReference(xpp)); 7770 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requester")) { 7771 res.setRequester(parseReference(xpp)); 7772 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 7773 res.setEncounter(parseReference(xpp)); 7774 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manufacturer")) { 7775 res.setManufacturer(parseReference(xpp)); 7776 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 7777 res.setLocation(parseReference(xpp)); 7778 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lotNumber")) { 7779 res.setLotNumberElement(parseString(xpp)); 7780 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expirationDate")) { 7781 res.setExpirationDateElement(parseDate(xpp)); 7782 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("site")) { 7783 res.setSite(parseCodeableConcept(xpp)); 7784 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("route")) { 7785 res.setRoute(parseCodeableConcept(xpp)); 7786 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseQuantity")) { 7787 res.setDoseQuantity(parseSimpleQuantity(xpp)); 7788 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 7789 res.getNote().add(parseAnnotation(xpp)); 7790 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("explanation")) { 7791 res.setExplanation(parseImmunizationImmunizationExplanationComponent(xpp, res)); 7792 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reaction")) { 7793 res.getReaction().add(parseImmunizationImmunizationReactionComponent(xpp, res)); 7794 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("vaccinationProtocol")) { 7795 res.getVaccinationProtocol().add(parseImmunizationImmunizationVaccinationProtocolComponent(xpp, res)); 7796 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7797 unknownContent(xpp); 7798 eventType = nextNoWhitespace(xpp); 7799 } 7800 next(xpp); 7801 parseElementClose(res); 7802 return res; 7803 } 7804 7805 protected Immunization.ImmunizationExplanationComponent parseImmunizationImmunizationExplanationComponent(XmlPullParser xpp, Immunization owner) throws XmlPullParserException, IOException, FHIRFormatError { 7806 Immunization.ImmunizationExplanationComponent res = new Immunization.ImmunizationExplanationComponent(); 7807 parseBackboneAttributes(xpp, res); 7808 next(xpp); 7809 int eventType = nextNoWhitespace(xpp); 7810 while (eventType != XmlPullParser.END_TAG) { 7811 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 7812 res.getReason().add(parseCodeableConcept(xpp)); 7813 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonNotGiven")) { 7814 res.getReasonNotGiven().add(parseCodeableConcept(xpp)); 7815 } else if (!parseBackboneContent(eventType, xpp, res)) 7816 unknownContent(xpp); 7817 eventType = nextNoWhitespace(xpp); 7818 } 7819 next(xpp); 7820 parseElementClose(res); 7821 return res; 7822 } 7823 7824 protected Immunization.ImmunizationReactionComponent parseImmunizationImmunizationReactionComponent(XmlPullParser xpp, Immunization owner) throws XmlPullParserException, IOException, FHIRFormatError { 7825 Immunization.ImmunizationReactionComponent res = new Immunization.ImmunizationReactionComponent(); 7826 parseBackboneAttributes(xpp, res); 7827 next(xpp); 7828 int eventType = nextNoWhitespace(xpp); 7829 while (eventType != XmlPullParser.END_TAG) { 7830 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 7831 res.setDateElement(parseDateTime(xpp)); 7832 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 7833 res.setDetail(parseReference(xpp)); 7834 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reported")) { 7835 res.setReportedElement(parseBoolean(xpp)); 7836 } else if (!parseBackboneContent(eventType, xpp, res)) 7837 unknownContent(xpp); 7838 eventType = nextNoWhitespace(xpp); 7839 } 7840 next(xpp); 7841 parseElementClose(res); 7842 return res; 7843 } 7844 7845 protected Immunization.ImmunizationVaccinationProtocolComponent parseImmunizationImmunizationVaccinationProtocolComponent(XmlPullParser xpp, Immunization owner) throws XmlPullParserException, IOException, FHIRFormatError { 7846 Immunization.ImmunizationVaccinationProtocolComponent res = new Immunization.ImmunizationVaccinationProtocolComponent(); 7847 parseBackboneAttributes(xpp, res); 7848 next(xpp); 7849 int eventType = nextNoWhitespace(xpp); 7850 while (eventType != XmlPullParser.END_TAG) { 7851 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseSequence")) { 7852 res.setDoseSequenceElement(parsePositiveInt(xpp)); 7853 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 7854 res.setDescriptionElement(parseString(xpp)); 7855 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authority")) { 7856 res.setAuthority(parseReference(xpp)); 7857 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("series")) { 7858 res.setSeriesElement(parseString(xpp)); 7859 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("seriesDoses")) { 7860 res.setSeriesDosesElement(parsePositiveInt(xpp)); 7861 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("targetDisease")) { 7862 res.getTargetDisease().add(parseCodeableConcept(xpp)); 7863 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseStatus")) { 7864 res.setDoseStatus(parseCodeableConcept(xpp)); 7865 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseStatusReason")) { 7866 res.setDoseStatusReason(parseCodeableConcept(xpp)); 7867 } else if (!parseBackboneContent(eventType, xpp, res)) 7868 unknownContent(xpp); 7869 eventType = nextNoWhitespace(xpp); 7870 } 7871 next(xpp); 7872 parseElementClose(res); 7873 return res; 7874 } 7875 7876 protected ImmunizationRecommendation parseImmunizationRecommendation(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7877 ImmunizationRecommendation res = new ImmunizationRecommendation(); 7878 parseDomainResourceAttributes(xpp, res); 7879 next(xpp); 7880 int eventType = nextNoWhitespace(xpp); 7881 while (eventType != XmlPullParser.END_TAG) { 7882 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7883 res.getIdentifier().add(parseIdentifier(xpp)); 7884 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 7885 res.setPatient(parseReference(xpp)); 7886 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recommendation")) { 7887 res.getRecommendation().add(parseImmunizationRecommendationImmunizationRecommendationRecommendationComponent(xpp, res)); 7888 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7889 unknownContent(xpp); 7890 eventType = nextNoWhitespace(xpp); 7891 } 7892 next(xpp); 7893 parseElementClose(res); 7894 return res; 7895 } 7896 7897 protected ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent parseImmunizationRecommendationImmunizationRecommendationRecommendationComponent(XmlPullParser xpp, ImmunizationRecommendation owner) throws XmlPullParserException, IOException, FHIRFormatError { 7898 ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent res = new ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent(); 7899 parseBackboneAttributes(xpp, res); 7900 next(xpp); 7901 int eventType = nextNoWhitespace(xpp); 7902 while (eventType != XmlPullParser.END_TAG) { 7903 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 7904 res.setDateElement(parseDateTime(xpp)); 7905 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("vaccineCode")) { 7906 res.setVaccineCode(parseCodeableConcept(xpp)); 7907 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseNumber")) { 7908 res.setDoseNumberElement(parsePositiveInt(xpp)); 7909 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("forecastStatus")) { 7910 res.setForecastStatus(parseCodeableConcept(xpp)); 7911 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateCriterion")) { 7912 res.getDateCriterion().add(parseImmunizationRecommendationImmunizationRecommendationRecommendationDateCriterionComponent(xpp, owner)); 7913 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("protocol")) { 7914 res.setProtocol(parseImmunizationRecommendationImmunizationRecommendationRecommendationProtocolComponent(xpp, owner)); 7915 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingImmunization")) { 7916 res.getSupportingImmunization().add(parseReference(xpp)); 7917 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingPatientInformation")) { 7918 res.getSupportingPatientInformation().add(parseReference(xpp)); 7919 } else if (!parseBackboneContent(eventType, xpp, res)) 7920 unknownContent(xpp); 7921 eventType = nextNoWhitespace(xpp); 7922 } 7923 next(xpp); 7924 parseElementClose(res); 7925 return res; 7926 } 7927 7928 protected ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent parseImmunizationRecommendationImmunizationRecommendationRecommendationDateCriterionComponent(XmlPullParser xpp, ImmunizationRecommendation owner) throws XmlPullParserException, IOException, FHIRFormatError { 7929 ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent res = new ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent(); 7930 parseBackboneAttributes(xpp, res); 7931 next(xpp); 7932 int eventType = nextNoWhitespace(xpp); 7933 while (eventType != XmlPullParser.END_TAG) { 7934 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 7935 res.setCode(parseCodeableConcept(xpp)); 7936 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 7937 res.setValueElement(parseDateTime(xpp)); 7938 } else if (!parseBackboneContent(eventType, xpp, res)) 7939 unknownContent(xpp); 7940 eventType = nextNoWhitespace(xpp); 7941 } 7942 next(xpp); 7943 parseElementClose(res); 7944 return res; 7945 } 7946 7947 protected ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent parseImmunizationRecommendationImmunizationRecommendationRecommendationProtocolComponent(XmlPullParser xpp, ImmunizationRecommendation owner) throws XmlPullParserException, IOException, FHIRFormatError { 7948 ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent res = new ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent(); 7949 parseBackboneAttributes(xpp, res); 7950 next(xpp); 7951 int eventType = nextNoWhitespace(xpp); 7952 while (eventType != XmlPullParser.END_TAG) { 7953 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseSequence")) { 7954 res.setDoseSequenceElement(parseInteger(xpp)); 7955 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 7956 res.setDescriptionElement(parseString(xpp)); 7957 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authority")) { 7958 res.setAuthority(parseReference(xpp)); 7959 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("series")) { 7960 res.setSeriesElement(parseString(xpp)); 7961 } else if (!parseBackboneContent(eventType, xpp, res)) 7962 unknownContent(xpp); 7963 eventType = nextNoWhitespace(xpp); 7964 } 7965 next(xpp); 7966 parseElementClose(res); 7967 return res; 7968 } 7969 7970 protected ImplementationGuide parseImplementationGuide(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7971 ImplementationGuide res = new ImplementationGuide(); 7972 parseDomainResourceAttributes(xpp, res); 7973 next(xpp); 7974 int eventType = nextNoWhitespace(xpp); 7975 while (eventType != XmlPullParser.END_TAG) { 7976 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 7977 res.setUrlElement(parseUri(xpp)); 7978 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 7979 res.setVersionElement(parseString(xpp)); 7980 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 7981 res.setNameElement(parseString(xpp)); 7982 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 7983 res.setStatusElement(parseEnumeration(xpp, Enumerations.ConformanceResourceStatus.NULL, new Enumerations.ConformanceResourceStatusEnumFactory())); 7984 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 7985 res.setExperimentalElement(parseBoolean(xpp)); 7986 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 7987 res.setPublisherElement(parseString(xpp)); 7988 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 7989 res.getContact().add(parseImplementationGuideImplementationGuideContactComponent(xpp, res)); 7990 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 7991 res.setDateElement(parseDateTime(xpp)); 7992 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 7993 res.setDescriptionElement(parseString(xpp)); 7994 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 7995 res.getUseContext().add(parseCodeableConcept(xpp)); 7996 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 7997 res.setCopyrightElement(parseString(xpp)); 7998 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fhirVersion")) { 7999 res.setFhirVersionElement(parseId(xpp)); 8000 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dependency")) { 8001 res.getDependency().add(parseImplementationGuideImplementationGuideDependencyComponent(xpp, res)); 8002 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("package")) { 8003 res.getPackage().add(parseImplementationGuideImplementationGuidePackageComponent(xpp, res)); 8004 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("global")) { 8005 res.getGlobal().add(parseImplementationGuideImplementationGuideGlobalComponent(xpp, res)); 8006 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("binary")) { 8007 res.getBinary().add(parseUri(xpp)); 8008 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("page")) { 8009 res.setPage(parseImplementationGuideImplementationGuidePageComponent(xpp, res)); 8010 } else if (!parseDomainResourceContent(eventType, xpp, res)) 8011 unknownContent(xpp); 8012 eventType = nextNoWhitespace(xpp); 8013 } 8014 next(xpp); 8015 parseElementClose(res); 8016 return res; 8017 } 8018 8019 protected ImplementationGuide.ImplementationGuideContactComponent parseImplementationGuideImplementationGuideContactComponent(XmlPullParser xpp, ImplementationGuide owner) throws XmlPullParserException, IOException, FHIRFormatError { 8020 ImplementationGuide.ImplementationGuideContactComponent res = new ImplementationGuide.ImplementationGuideContactComponent(); 8021 parseBackboneAttributes(xpp, res); 8022 next(xpp); 8023 int eventType = nextNoWhitespace(xpp); 8024 while (eventType != XmlPullParser.END_TAG) { 8025 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 8026 res.setNameElement(parseString(xpp)); 8027 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 8028 res.getTelecom().add(parseContactPoint(xpp)); 8029 } else if (!parseBackboneContent(eventType, xpp, res)) 8030 unknownContent(xpp); 8031 eventType = nextNoWhitespace(xpp); 8032 } 8033 next(xpp); 8034 parseElementClose(res); 8035 return res; 8036 } 8037 8038 protected ImplementationGuide.ImplementationGuideDependencyComponent parseImplementationGuideImplementationGuideDependencyComponent(XmlPullParser xpp, ImplementationGuide owner) throws XmlPullParserException, IOException, FHIRFormatError { 8039 ImplementationGuide.ImplementationGuideDependencyComponent res = new ImplementationGuide.ImplementationGuideDependencyComponent(); 8040 parseBackboneAttributes(xpp, res); 8041 next(xpp); 8042 int eventType = nextNoWhitespace(xpp); 8043 while (eventType != XmlPullParser.END_TAG) { 8044 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8045 res.setTypeElement(parseEnumeration(xpp, ImplementationGuide.GuideDependencyType.NULL, new ImplementationGuide.GuideDependencyTypeEnumFactory())); 8046 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uri")) { 8047 res.setUriElement(parseUri(xpp)); 8048 } else if (!parseBackboneContent(eventType, xpp, res)) 8049 unknownContent(xpp); 8050 eventType = nextNoWhitespace(xpp); 8051 } 8052 next(xpp); 8053 parseElementClose(res); 8054 return res; 8055 } 8056 8057 protected ImplementationGuide.ImplementationGuidePackageComponent parseImplementationGuideImplementationGuidePackageComponent(XmlPullParser xpp, ImplementationGuide owner) throws XmlPullParserException, IOException, FHIRFormatError { 8058 ImplementationGuide.ImplementationGuidePackageComponent res = new ImplementationGuide.ImplementationGuidePackageComponent(); 8059 parseBackboneAttributes(xpp, res); 8060 next(xpp); 8061 int eventType = nextNoWhitespace(xpp); 8062 while (eventType != XmlPullParser.END_TAG) { 8063 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 8064 res.setNameElement(parseString(xpp)); 8065 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 8066 res.setDescriptionElement(parseString(xpp)); 8067 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 8068 res.getResource().add(parseImplementationGuideImplementationGuidePackageResourceComponent(xpp, owner)); 8069 } else if (!parseBackboneContent(eventType, xpp, res)) 8070 unknownContent(xpp); 8071 eventType = nextNoWhitespace(xpp); 8072 } 8073 next(xpp); 8074 parseElementClose(res); 8075 return res; 8076 } 8077 8078 protected ImplementationGuide.ImplementationGuidePackageResourceComponent parseImplementationGuideImplementationGuidePackageResourceComponent(XmlPullParser xpp, ImplementationGuide owner) throws XmlPullParserException, IOException, FHIRFormatError { 8079 ImplementationGuide.ImplementationGuidePackageResourceComponent res = new ImplementationGuide.ImplementationGuidePackageResourceComponent(); 8080 parseBackboneAttributes(xpp, res); 8081 next(xpp); 8082 int eventType = nextNoWhitespace(xpp); 8083 while (eventType != XmlPullParser.END_TAG) { 8084 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("example")) { 8085 res.setExampleElement(parseBoolean(xpp)); 8086 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 8087 res.setNameElement(parseString(xpp)); 8088 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 8089 res.setDescriptionElement(parseString(xpp)); 8090 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("acronym")) { 8091 res.setAcronymElement(parseString(xpp)); 8092 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "source")) { 8093 res.setSource(parseType("source", xpp)); 8094 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exampleFor")) { 8095 res.setExampleFor(parseReference(xpp)); 8096 } else if (!parseBackboneContent(eventType, xpp, res)) 8097 unknownContent(xpp); 8098 eventType = nextNoWhitespace(xpp); 8099 } 8100 next(xpp); 8101 parseElementClose(res); 8102 return res; 8103 } 8104 8105 protected ImplementationGuide.ImplementationGuideGlobalComponent parseImplementationGuideImplementationGuideGlobalComponent(XmlPullParser xpp, ImplementationGuide owner) throws XmlPullParserException, IOException, FHIRFormatError { 8106 ImplementationGuide.ImplementationGuideGlobalComponent res = new ImplementationGuide.ImplementationGuideGlobalComponent(); 8107 parseBackboneAttributes(xpp, res); 8108 next(xpp); 8109 int eventType = nextNoWhitespace(xpp); 8110 while (eventType != XmlPullParser.END_TAG) { 8111 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8112 res.setTypeElement(parseCode(xpp)); 8113 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 8114 res.setProfile(parseReference(xpp)); 8115 } else if (!parseBackboneContent(eventType, xpp, res)) 8116 unknownContent(xpp); 8117 eventType = nextNoWhitespace(xpp); 8118 } 8119 next(xpp); 8120 parseElementClose(res); 8121 return res; 8122 } 8123 8124 protected ImplementationGuide.ImplementationGuidePageComponent parseImplementationGuideImplementationGuidePageComponent(XmlPullParser xpp, ImplementationGuide owner) throws XmlPullParserException, IOException, FHIRFormatError { 8125 ImplementationGuide.ImplementationGuidePageComponent res = new ImplementationGuide.ImplementationGuidePageComponent(); 8126 parseBackboneAttributes(xpp, res); 8127 next(xpp); 8128 int eventType = nextNoWhitespace(xpp); 8129 while (eventType != XmlPullParser.END_TAG) { 8130 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 8131 res.setSourceElement(parseUri(xpp)); 8132 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 8133 res.setNameElement(parseString(xpp)); 8134 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 8135 res.setKindElement(parseEnumeration(xpp, ImplementationGuide.GuidePageKind.NULL, new ImplementationGuide.GuidePageKindEnumFactory())); 8136 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8137 res.getType().add(parseCode(xpp)); 8138 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("package")) { 8139 res.getPackage().add(parseString(xpp)); 8140 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("format")) { 8141 res.setFormatElement(parseCode(xpp)); 8142 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("page")) { 8143 res.getPage().add(parseImplementationGuideImplementationGuidePageComponent(xpp, owner)); 8144 } else if (!parseBackboneContent(eventType, xpp, res)) 8145 unknownContent(xpp); 8146 eventType = nextNoWhitespace(xpp); 8147 } 8148 next(xpp); 8149 parseElementClose(res); 8150 return res; 8151 } 8152 8153 protected Library parseLibrary(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8154 Library res = new Library(); 8155 parseDomainResourceAttributes(xpp, res); 8156 next(xpp); 8157 int eventType = nextNoWhitespace(xpp); 8158 while (eventType != XmlPullParser.END_TAG) { 8159 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("moduleMetadata")) { 8160 res.setModuleMetadata(parseModuleMetadata(xpp)); 8161 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("model")) { 8162 res.getModel().add(parseLibraryLibraryModelComponent(xpp, res)); 8163 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("library")) { 8164 res.getLibrary().add(parseLibraryLibraryLibraryComponent(xpp, res)); 8165 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("codeSystem")) { 8166 res.getCodeSystem().add(parseLibraryLibraryCodeSystemComponent(xpp, res)); 8167 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valueSet")) { 8168 res.getValueSet().add(parseLibraryLibraryValueSetComponent(xpp, res)); 8169 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameter")) { 8170 res.getParameter().add(parseParameterDefinition(xpp)); 8171 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dataRequirement")) { 8172 res.getDataRequirement().add(parseDataRequirement(xpp)); 8173 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("document")) { 8174 res.setDocument(parseAttachment(xpp)); 8175 } else if (!parseDomainResourceContent(eventType, xpp, res)) 8176 unknownContent(xpp); 8177 eventType = nextNoWhitespace(xpp); 8178 } 8179 next(xpp); 8180 parseElementClose(res); 8181 return res; 8182 } 8183 8184 protected Library.LibraryModelComponent parseLibraryLibraryModelComponent(XmlPullParser xpp, Library owner) throws XmlPullParserException, IOException, FHIRFormatError { 8185 Library.LibraryModelComponent res = new Library.LibraryModelComponent(); 8186 parseBackboneAttributes(xpp, res); 8187 next(xpp); 8188 int eventType = nextNoWhitespace(xpp); 8189 while (eventType != XmlPullParser.END_TAG) { 8190 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 8191 res.setNameElement(parseString(xpp)); 8192 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8193 res.setIdentifierElement(parseString(xpp)); 8194 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 8195 res.setVersionElement(parseString(xpp)); 8196 } else if (!parseBackboneContent(eventType, xpp, res)) 8197 unknownContent(xpp); 8198 eventType = nextNoWhitespace(xpp); 8199 } 8200 next(xpp); 8201 parseElementClose(res); 8202 return res; 8203 } 8204 8205 protected Library.LibraryLibraryComponent parseLibraryLibraryLibraryComponent(XmlPullParser xpp, Library owner) throws XmlPullParserException, IOException, FHIRFormatError { 8206 Library.LibraryLibraryComponent res = new Library.LibraryLibraryComponent(); 8207 parseBackboneAttributes(xpp, res); 8208 next(xpp); 8209 int eventType = nextNoWhitespace(xpp); 8210 while (eventType != XmlPullParser.END_TAG) { 8211 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 8212 res.setNameElement(parseString(xpp)); 8213 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8214 res.setIdentifierElement(parseString(xpp)); 8215 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 8216 res.setVersionElement(parseString(xpp)); 8217 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "document")) { 8218 res.setDocument(parseType("document", xpp)); 8219 } else if (!parseBackboneContent(eventType, xpp, res)) 8220 unknownContent(xpp); 8221 eventType = nextNoWhitespace(xpp); 8222 } 8223 next(xpp); 8224 parseElementClose(res); 8225 return res; 8226 } 8227 8228 protected Library.LibraryCodeSystemComponent parseLibraryLibraryCodeSystemComponent(XmlPullParser xpp, Library owner) throws XmlPullParserException, IOException, FHIRFormatError { 8229 Library.LibraryCodeSystemComponent res = new Library.LibraryCodeSystemComponent(); 8230 parseBackboneAttributes(xpp, res); 8231 next(xpp); 8232 int eventType = nextNoWhitespace(xpp); 8233 while (eventType != XmlPullParser.END_TAG) { 8234 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 8235 res.setNameElement(parseString(xpp)); 8236 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8237 res.setIdentifierElement(parseString(xpp)); 8238 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 8239 res.setVersionElement(parseString(xpp)); 8240 } else if (!parseBackboneContent(eventType, xpp, res)) 8241 unknownContent(xpp); 8242 eventType = nextNoWhitespace(xpp); 8243 } 8244 next(xpp); 8245 parseElementClose(res); 8246 return res; 8247 } 8248 8249 protected Library.LibraryValueSetComponent parseLibraryLibraryValueSetComponent(XmlPullParser xpp, Library owner) throws XmlPullParserException, IOException, FHIRFormatError { 8250 Library.LibraryValueSetComponent res = new Library.LibraryValueSetComponent(); 8251 parseBackboneAttributes(xpp, res); 8252 next(xpp); 8253 int eventType = nextNoWhitespace(xpp); 8254 while (eventType != XmlPullParser.END_TAG) { 8255 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 8256 res.setNameElement(parseString(xpp)); 8257 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8258 res.setIdentifierElement(parseString(xpp)); 8259 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 8260 res.setVersionElement(parseString(xpp)); 8261 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("codeSystem")) { 8262 res.getCodeSystem().add(parseString(xpp)); 8263 } else if (!parseBackboneContent(eventType, xpp, res)) 8264 unknownContent(xpp); 8265 eventType = nextNoWhitespace(xpp); 8266 } 8267 next(xpp); 8268 parseElementClose(res); 8269 return res; 8270 } 8271 8272 protected Linkage parseLinkage(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8273 Linkage res = new Linkage(); 8274 parseDomainResourceAttributes(xpp, res); 8275 next(xpp); 8276 int eventType = nextNoWhitespace(xpp); 8277 while (eventType != XmlPullParser.END_TAG) { 8278 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 8279 res.setAuthor(parseReference(xpp)); 8280 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 8281 res.getItem().add(parseLinkageLinkageItemComponent(xpp, res)); 8282 } else if (!parseDomainResourceContent(eventType, xpp, res)) 8283 unknownContent(xpp); 8284 eventType = nextNoWhitespace(xpp); 8285 } 8286 next(xpp); 8287 parseElementClose(res); 8288 return res; 8289 } 8290 8291 protected Linkage.LinkageItemComponent parseLinkageLinkageItemComponent(XmlPullParser xpp, Linkage owner) throws XmlPullParserException, IOException, FHIRFormatError { 8292 Linkage.LinkageItemComponent res = new Linkage.LinkageItemComponent(); 8293 parseBackboneAttributes(xpp, res); 8294 next(xpp); 8295 int eventType = nextNoWhitespace(xpp); 8296 while (eventType != XmlPullParser.END_TAG) { 8297 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8298 res.setTypeElement(parseEnumeration(xpp, Linkage.LinkageType.NULL, new Linkage.LinkageTypeEnumFactory())); 8299 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 8300 res.setResource(parseReference(xpp)); 8301 } else if (!parseBackboneContent(eventType, xpp, res)) 8302 unknownContent(xpp); 8303 eventType = nextNoWhitespace(xpp); 8304 } 8305 next(xpp); 8306 parseElementClose(res); 8307 return res; 8308 } 8309 8310 protected ListResource parseListResource(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8311 ListResource res = new ListResource(); 8312 parseDomainResourceAttributes(xpp, res); 8313 next(xpp); 8314 int eventType = nextNoWhitespace(xpp); 8315 while (eventType != XmlPullParser.END_TAG) { 8316 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8317 res.getIdentifier().add(parseIdentifier(xpp)); 8318 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 8319 res.setStatusElement(parseEnumeration(xpp, ListResource.ListStatus.NULL, new ListResource.ListStatusEnumFactory())); 8320 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 8321 res.setModeElement(parseEnumeration(xpp, ListResource.ListMode.NULL, new ListResource.ListModeEnumFactory())); 8322 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 8323 res.setTitleElement(parseString(xpp)); 8324 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 8325 res.setCode(parseCodeableConcept(xpp)); 8326 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 8327 res.setSubject(parseReference(xpp)); 8328 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 8329 res.setEncounter(parseReference(xpp)); 8330 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 8331 res.setDateElement(parseDateTime(xpp)); 8332 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 8333 res.setSource(parseReference(xpp)); 8334 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orderedBy")) { 8335 res.setOrderedBy(parseCodeableConcept(xpp)); 8336 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 8337 res.getNote().add(parseAnnotation(xpp)); 8338 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entry")) { 8339 res.getEntry().add(parseListResourceListEntryComponent(xpp, res)); 8340 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("emptyReason")) { 8341 res.setEmptyReason(parseCodeableConcept(xpp)); 8342 } else if (!parseDomainResourceContent(eventType, xpp, res)) 8343 unknownContent(xpp); 8344 eventType = nextNoWhitespace(xpp); 8345 } 8346 next(xpp); 8347 parseElementClose(res); 8348 return res; 8349 } 8350 8351 protected ListResource.ListEntryComponent parseListResourceListEntryComponent(XmlPullParser xpp, ListResource owner) throws XmlPullParserException, IOException, FHIRFormatError { 8352 ListResource.ListEntryComponent res = new ListResource.ListEntryComponent(); 8353 parseBackboneAttributes(xpp, res); 8354 next(xpp); 8355 int eventType = nextNoWhitespace(xpp); 8356 while (eventType != XmlPullParser.END_TAG) { 8357 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("flag")) { 8358 res.setFlag(parseCodeableConcept(xpp)); 8359 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("deleted")) { 8360 res.setDeletedElement(parseBoolean(xpp)); 8361 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 8362 res.setDateElement(parseDateTime(xpp)); 8363 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 8364 res.setItem(parseReference(xpp)); 8365 } else if (!parseBackboneContent(eventType, xpp, res)) 8366 unknownContent(xpp); 8367 eventType = nextNoWhitespace(xpp); 8368 } 8369 next(xpp); 8370 parseElementClose(res); 8371 return res; 8372 } 8373 8374 protected Location parseLocation(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8375 Location res = new Location(); 8376 parseDomainResourceAttributes(xpp, res); 8377 next(xpp); 8378 int eventType = nextNoWhitespace(xpp); 8379 while (eventType != XmlPullParser.END_TAG) { 8380 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8381 res.getIdentifier().add(parseIdentifier(xpp)); 8382 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 8383 res.setStatusElement(parseEnumeration(xpp, Location.LocationStatus.NULL, new Location.LocationStatusEnumFactory())); 8384 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 8385 res.setNameElement(parseString(xpp)); 8386 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 8387 res.setDescriptionElement(parseString(xpp)); 8388 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 8389 res.setModeElement(parseEnumeration(xpp, Location.LocationMode.NULL, new Location.LocationModeEnumFactory())); 8390 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8391 res.setType(parseCodeableConcept(xpp)); 8392 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 8393 res.getTelecom().add(parseContactPoint(xpp)); 8394 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 8395 res.setAddress(parseAddress(xpp)); 8396 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("physicalType")) { 8397 res.setPhysicalType(parseCodeableConcept(xpp)); 8398 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("position")) { 8399 res.setPosition(parseLocationLocationPositionComponent(xpp, res)); 8400 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("managingOrganization")) { 8401 res.setManagingOrganization(parseReference(xpp)); 8402 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 8403 res.setPartOf(parseReference(xpp)); 8404 } else if (!parseDomainResourceContent(eventType, xpp, res)) 8405 unknownContent(xpp); 8406 eventType = nextNoWhitespace(xpp); 8407 } 8408 next(xpp); 8409 parseElementClose(res); 8410 return res; 8411 } 8412 8413 protected Location.LocationPositionComponent parseLocationLocationPositionComponent(XmlPullParser xpp, Location owner) throws XmlPullParserException, IOException, FHIRFormatError { 8414 Location.LocationPositionComponent res = new Location.LocationPositionComponent(); 8415 parseBackboneAttributes(xpp, res); 8416 next(xpp); 8417 int eventType = nextNoWhitespace(xpp); 8418 while (eventType != XmlPullParser.END_TAG) { 8419 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("longitude")) { 8420 res.setLongitudeElement(parseDecimal(xpp)); 8421 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("latitude")) { 8422 res.setLatitudeElement(parseDecimal(xpp)); 8423 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("altitude")) { 8424 res.setAltitudeElement(parseDecimal(xpp)); 8425 } else if (!parseBackboneContent(eventType, xpp, res)) 8426 unknownContent(xpp); 8427 eventType = nextNoWhitespace(xpp); 8428 } 8429 next(xpp); 8430 parseElementClose(res); 8431 return res; 8432 } 8433 8434 protected Measure parseMeasure(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8435 Measure res = new Measure(); 8436 parseDomainResourceAttributes(xpp, res); 8437 next(xpp); 8438 int eventType = nextNoWhitespace(xpp); 8439 while (eventType != XmlPullParser.END_TAG) { 8440 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("moduleMetadata")) { 8441 res.setModuleMetadata(parseModuleMetadata(xpp)); 8442 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("library")) { 8443 res.getLibrary().add(parseReference(xpp)); 8444 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disclaimer")) { 8445 res.setDisclaimerElement(parseMarkdown(xpp)); 8446 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("scoring")) { 8447 res.setScoringElement(parseEnumeration(xpp, Measure.MeasureScoring.NULL, new Measure.MeasureScoringEnumFactory())); 8448 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8449 res.getType().add(parseEnumeration(xpp, Measure.MeasureType.NULL, new Measure.MeasureTypeEnumFactory())); 8450 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("riskAdjustment")) { 8451 res.setRiskAdjustmentElement(parseString(xpp)); 8452 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rateAggregation")) { 8453 res.setRateAggregationElement(parseString(xpp)); 8454 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rationale")) { 8455 res.setRationaleElement(parseMarkdown(xpp)); 8456 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("clinicalRecommendationStatement")) { 8457 res.setClinicalRecommendationStatementElement(parseMarkdown(xpp)); 8458 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("improvementNotation")) { 8459 res.setImprovementNotationElement(parseString(xpp)); 8460 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 8461 res.setDefinitionElement(parseMarkdown(xpp)); 8462 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("guidance")) { 8463 res.setGuidanceElement(parseMarkdown(xpp)); 8464 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("set")) { 8465 res.setSetElement(parseString(xpp)); 8466 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("group")) { 8467 res.getGroup().add(parseMeasureMeasureGroupComponent(xpp, res)); 8468 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supplementalData")) { 8469 res.getSupplementalData().add(parseMeasureMeasureSupplementalDataComponent(xpp, res)); 8470 } else if (!parseDomainResourceContent(eventType, xpp, res)) 8471 unknownContent(xpp); 8472 eventType = nextNoWhitespace(xpp); 8473 } 8474 next(xpp); 8475 parseElementClose(res); 8476 return res; 8477 } 8478 8479 protected Measure.MeasureGroupComponent parseMeasureMeasureGroupComponent(XmlPullParser xpp, Measure owner) throws XmlPullParserException, IOException, FHIRFormatError { 8480 Measure.MeasureGroupComponent res = new Measure.MeasureGroupComponent(); 8481 parseBackboneAttributes(xpp, res); 8482 next(xpp); 8483 int eventType = nextNoWhitespace(xpp); 8484 while (eventType != XmlPullParser.END_TAG) { 8485 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8486 res.setIdentifier(parseIdentifier(xpp)); 8487 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 8488 res.setNameElement(parseString(xpp)); 8489 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 8490 res.setDescriptionElement(parseString(xpp)); 8491 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("population")) { 8492 res.getPopulation().add(parseMeasureMeasureGroupPopulationComponent(xpp, owner)); 8493 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("stratifier")) { 8494 res.getStratifier().add(parseMeasureMeasureGroupStratifierComponent(xpp, owner)); 8495 } else if (!parseBackboneContent(eventType, xpp, res)) 8496 unknownContent(xpp); 8497 eventType = nextNoWhitespace(xpp); 8498 } 8499 next(xpp); 8500 parseElementClose(res); 8501 return res; 8502 } 8503 8504 protected Measure.MeasureGroupPopulationComponent parseMeasureMeasureGroupPopulationComponent(XmlPullParser xpp, Measure owner) throws XmlPullParserException, IOException, FHIRFormatError { 8505 Measure.MeasureGroupPopulationComponent res = new Measure.MeasureGroupPopulationComponent(); 8506 parseBackboneAttributes(xpp, res); 8507 next(xpp); 8508 int eventType = nextNoWhitespace(xpp); 8509 while (eventType != XmlPullParser.END_TAG) { 8510 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8511 res.setTypeElement(parseEnumeration(xpp, Measure.MeasurePopulationType.NULL, new Measure.MeasurePopulationTypeEnumFactory())); 8512 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8513 res.setIdentifier(parseIdentifier(xpp)); 8514 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 8515 res.setNameElement(parseString(xpp)); 8516 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 8517 res.setDescriptionElement(parseString(xpp)); 8518 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("criteria")) { 8519 res.setCriteriaElement(parseString(xpp)); 8520 } else if (!parseBackboneContent(eventType, xpp, res)) 8521 unknownContent(xpp); 8522 eventType = nextNoWhitespace(xpp); 8523 } 8524 next(xpp); 8525 parseElementClose(res); 8526 return res; 8527 } 8528 8529 protected Measure.MeasureGroupStratifierComponent parseMeasureMeasureGroupStratifierComponent(XmlPullParser xpp, Measure owner) throws XmlPullParserException, IOException, FHIRFormatError { 8530 Measure.MeasureGroupStratifierComponent res = new Measure.MeasureGroupStratifierComponent(); 8531 parseBackboneAttributes(xpp, res); 8532 next(xpp); 8533 int eventType = nextNoWhitespace(xpp); 8534 while (eventType != XmlPullParser.END_TAG) { 8535 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8536 res.setIdentifier(parseIdentifier(xpp)); 8537 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("criteria")) { 8538 res.setCriteriaElement(parseString(xpp)); 8539 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 8540 res.setPathElement(parseString(xpp)); 8541 } else if (!parseBackboneContent(eventType, xpp, res)) 8542 unknownContent(xpp); 8543 eventType = nextNoWhitespace(xpp); 8544 } 8545 next(xpp); 8546 parseElementClose(res); 8547 return res; 8548 } 8549 8550 protected Measure.MeasureSupplementalDataComponent parseMeasureMeasureSupplementalDataComponent(XmlPullParser xpp, Measure owner) throws XmlPullParserException, IOException, FHIRFormatError { 8551 Measure.MeasureSupplementalDataComponent res = new Measure.MeasureSupplementalDataComponent(); 8552 parseBackboneAttributes(xpp, res); 8553 next(xpp); 8554 int eventType = nextNoWhitespace(xpp); 8555 while (eventType != XmlPullParser.END_TAG) { 8556 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8557 res.setIdentifier(parseIdentifier(xpp)); 8558 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usage")) { 8559 res.getUsage().add(parseEnumeration(xpp, Measure.MeasureDataUsage.NULL, new Measure.MeasureDataUsageEnumFactory())); 8560 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("criteria")) { 8561 res.setCriteriaElement(parseString(xpp)); 8562 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 8563 res.setPathElement(parseString(xpp)); 8564 } else if (!parseBackboneContent(eventType, xpp, res)) 8565 unknownContent(xpp); 8566 eventType = nextNoWhitespace(xpp); 8567 } 8568 next(xpp); 8569 parseElementClose(res); 8570 return res; 8571 } 8572 8573 protected MeasureReport parseMeasureReport(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8574 MeasureReport res = new MeasureReport(); 8575 parseDomainResourceAttributes(xpp, res); 8576 next(xpp); 8577 int eventType = nextNoWhitespace(xpp); 8578 while (eventType != XmlPullParser.END_TAG) { 8579 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("measure")) { 8580 res.setMeasure(parseReference(xpp)); 8581 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8582 res.setTypeElement(parseEnumeration(xpp, MeasureReport.MeasureReportType.NULL, new MeasureReport.MeasureReportTypeEnumFactory())); 8583 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 8584 res.setPatient(parseReference(xpp)); 8585 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 8586 res.setPeriod(parsePeriod(xpp)); 8587 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 8588 res.setStatusElement(parseEnumeration(xpp, MeasureReport.MeasureReportStatus.NULL, new MeasureReport.MeasureReportStatusEnumFactory())); 8589 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 8590 res.setDateElement(parseDateTime(xpp)); 8591 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reportingOrganization")) { 8592 res.setReportingOrganization(parseReference(xpp)); 8593 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("group")) { 8594 res.getGroup().add(parseMeasureReportMeasureReportGroupComponent(xpp, res)); 8595 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("evaluatedResources")) { 8596 res.setEvaluatedResources(parseReference(xpp)); 8597 } else if (!parseDomainResourceContent(eventType, xpp, res)) 8598 unknownContent(xpp); 8599 eventType = nextNoWhitespace(xpp); 8600 } 8601 next(xpp); 8602 parseElementClose(res); 8603 return res; 8604 } 8605 8606 protected MeasureReport.MeasureReportGroupComponent parseMeasureReportMeasureReportGroupComponent(XmlPullParser xpp, MeasureReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 8607 MeasureReport.MeasureReportGroupComponent res = new MeasureReport.MeasureReportGroupComponent(); 8608 parseBackboneAttributes(xpp, res); 8609 next(xpp); 8610 int eventType = nextNoWhitespace(xpp); 8611 while (eventType != XmlPullParser.END_TAG) { 8612 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8613 res.setIdentifier(parseIdentifier(xpp)); 8614 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("population")) { 8615 res.getPopulation().add(parseMeasureReportMeasureReportGroupPopulationComponent(xpp, owner)); 8616 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("measureScore")) { 8617 res.setMeasureScoreElement(parseDecimal(xpp)); 8618 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("stratifier")) { 8619 res.getStratifier().add(parseMeasureReportMeasureReportGroupStratifierComponent(xpp, owner)); 8620 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supplementalData")) { 8621 res.getSupplementalData().add(parseMeasureReportMeasureReportGroupSupplementalDataComponent(xpp, owner)); 8622 } else if (!parseBackboneContent(eventType, xpp, res)) 8623 unknownContent(xpp); 8624 eventType = nextNoWhitespace(xpp); 8625 } 8626 next(xpp); 8627 parseElementClose(res); 8628 return res; 8629 } 8630 8631 protected MeasureReport.MeasureReportGroupPopulationComponent parseMeasureReportMeasureReportGroupPopulationComponent(XmlPullParser xpp, MeasureReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 8632 MeasureReport.MeasureReportGroupPopulationComponent res = new MeasureReport.MeasureReportGroupPopulationComponent(); 8633 parseBackboneAttributes(xpp, res); 8634 next(xpp); 8635 int eventType = nextNoWhitespace(xpp); 8636 while (eventType != XmlPullParser.END_TAG) { 8637 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8638 res.setTypeElement(parseCode(xpp)); 8639 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("count")) { 8640 res.setCountElement(parseInteger(xpp)); 8641 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patients")) { 8642 res.setPatients(parseReference(xpp)); 8643 } else if (!parseBackboneContent(eventType, xpp, res)) 8644 unknownContent(xpp); 8645 eventType = nextNoWhitespace(xpp); 8646 } 8647 next(xpp); 8648 parseElementClose(res); 8649 return res; 8650 } 8651 8652 protected MeasureReport.MeasureReportGroupStratifierComponent parseMeasureReportMeasureReportGroupStratifierComponent(XmlPullParser xpp, MeasureReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 8653 MeasureReport.MeasureReportGroupStratifierComponent res = new MeasureReport.MeasureReportGroupStratifierComponent(); 8654 parseBackboneAttributes(xpp, res); 8655 next(xpp); 8656 int eventType = nextNoWhitespace(xpp); 8657 while (eventType != XmlPullParser.END_TAG) { 8658 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8659 res.setIdentifier(parseIdentifier(xpp)); 8660 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("group")) { 8661 res.getGroup().add(parseMeasureReportMeasureReportGroupStratifierGroupComponent(xpp, owner)); 8662 } else if (!parseBackboneContent(eventType, xpp, res)) 8663 unknownContent(xpp); 8664 eventType = nextNoWhitespace(xpp); 8665 } 8666 next(xpp); 8667 parseElementClose(res); 8668 return res; 8669 } 8670 8671 protected MeasureReport.MeasureReportGroupStratifierGroupComponent parseMeasureReportMeasureReportGroupStratifierGroupComponent(XmlPullParser xpp, MeasureReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 8672 MeasureReport.MeasureReportGroupStratifierGroupComponent res = new MeasureReport.MeasureReportGroupStratifierGroupComponent(); 8673 parseBackboneAttributes(xpp, res); 8674 next(xpp); 8675 int eventType = nextNoWhitespace(xpp); 8676 while (eventType != XmlPullParser.END_TAG) { 8677 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 8678 res.setValueElement(parseString(xpp)); 8679 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("population")) { 8680 res.getPopulation().add(parseMeasureReportMeasureReportGroupStratifierGroupPopulationComponent(xpp, owner)); 8681 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("measureScore")) { 8682 res.setMeasureScoreElement(parseDecimal(xpp)); 8683 } else if (!parseBackboneContent(eventType, xpp, res)) 8684 unknownContent(xpp); 8685 eventType = nextNoWhitespace(xpp); 8686 } 8687 next(xpp); 8688 parseElementClose(res); 8689 return res; 8690 } 8691 8692 protected MeasureReport.MeasureReportGroupStratifierGroupPopulationComponent parseMeasureReportMeasureReportGroupStratifierGroupPopulationComponent(XmlPullParser xpp, MeasureReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 8693 MeasureReport.MeasureReportGroupStratifierGroupPopulationComponent res = new MeasureReport.MeasureReportGroupStratifierGroupPopulationComponent(); 8694 parseBackboneAttributes(xpp, res); 8695 next(xpp); 8696 int eventType = nextNoWhitespace(xpp); 8697 while (eventType != XmlPullParser.END_TAG) { 8698 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8699 res.setTypeElement(parseCode(xpp)); 8700 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("count")) { 8701 res.setCountElement(parseInteger(xpp)); 8702 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patients")) { 8703 res.setPatients(parseReference(xpp)); 8704 } else if (!parseBackboneContent(eventType, xpp, res)) 8705 unknownContent(xpp); 8706 eventType = nextNoWhitespace(xpp); 8707 } 8708 next(xpp); 8709 parseElementClose(res); 8710 return res; 8711 } 8712 8713 protected MeasureReport.MeasureReportGroupSupplementalDataComponent parseMeasureReportMeasureReportGroupSupplementalDataComponent(XmlPullParser xpp, MeasureReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 8714 MeasureReport.MeasureReportGroupSupplementalDataComponent res = new MeasureReport.MeasureReportGroupSupplementalDataComponent(); 8715 parseBackboneAttributes(xpp, res); 8716 next(xpp); 8717 int eventType = nextNoWhitespace(xpp); 8718 while (eventType != XmlPullParser.END_TAG) { 8719 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8720 res.setIdentifier(parseIdentifier(xpp)); 8721 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("group")) { 8722 res.getGroup().add(parseMeasureReportMeasureReportGroupSupplementalDataGroupComponent(xpp, owner)); 8723 } else if (!parseBackboneContent(eventType, xpp, res)) 8724 unknownContent(xpp); 8725 eventType = nextNoWhitespace(xpp); 8726 } 8727 next(xpp); 8728 parseElementClose(res); 8729 return res; 8730 } 8731 8732 protected MeasureReport.MeasureReportGroupSupplementalDataGroupComponent parseMeasureReportMeasureReportGroupSupplementalDataGroupComponent(XmlPullParser xpp, MeasureReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 8733 MeasureReport.MeasureReportGroupSupplementalDataGroupComponent res = new MeasureReport.MeasureReportGroupSupplementalDataGroupComponent(); 8734 parseBackboneAttributes(xpp, res); 8735 next(xpp); 8736 int eventType = nextNoWhitespace(xpp); 8737 while (eventType != XmlPullParser.END_TAG) { 8738 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 8739 res.setValueElement(parseString(xpp)); 8740 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("count")) { 8741 res.setCountElement(parseInteger(xpp)); 8742 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patients")) { 8743 res.setPatients(parseReference(xpp)); 8744 } else if (!parseBackboneContent(eventType, xpp, res)) 8745 unknownContent(xpp); 8746 eventType = nextNoWhitespace(xpp); 8747 } 8748 next(xpp); 8749 parseElementClose(res); 8750 return res; 8751 } 8752 8753 protected Media parseMedia(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8754 Media res = new Media(); 8755 parseDomainResourceAttributes(xpp, res); 8756 next(xpp); 8757 int eventType = nextNoWhitespace(xpp); 8758 while (eventType != XmlPullParser.END_TAG) { 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("type")) { 8762 res.setTypeElement(parseEnumeration(xpp, Media.DigitalMediaType.NULL, new Media.DigitalMediaTypeEnumFactory())); 8763 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subtype")) { 8764 res.setSubtype(parseCodeableConcept(xpp)); 8765 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("view")) { 8766 res.setView(parseCodeableConcept(xpp)); 8767 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 8768 res.setSubject(parseReference(xpp)); 8769 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operator")) { 8770 res.setOperator(parseReference(xpp)); 8771 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("deviceName")) { 8772 res.setDeviceNameElement(parseString(xpp)); 8773 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("height")) { 8774 res.setHeightElement(parsePositiveInt(xpp)); 8775 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("width")) { 8776 res.setWidthElement(parsePositiveInt(xpp)); 8777 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("frames")) { 8778 res.setFramesElement(parsePositiveInt(xpp)); 8779 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("duration")) { 8780 res.setDurationElement(parseUnsignedInt(xpp)); 8781 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 8782 res.setContent(parseAttachment(xpp)); 8783 } else if (!parseDomainResourceContent(eventType, xpp, res)) 8784 unknownContent(xpp); 8785 eventType = nextNoWhitespace(xpp); 8786 } 8787 next(xpp); 8788 parseElementClose(res); 8789 return res; 8790 } 8791 8792 protected Medication parseMedication(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8793 Medication res = new Medication(); 8794 parseDomainResourceAttributes(xpp, res); 8795 next(xpp); 8796 int eventType = nextNoWhitespace(xpp); 8797 while (eventType != XmlPullParser.END_TAG) { 8798 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 8799 res.setCode(parseCodeableConcept(xpp)); 8800 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("isBrand")) { 8801 res.setIsBrandElement(parseBoolean(xpp)); 8802 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manufacturer")) { 8803 res.setManufacturer(parseReference(xpp)); 8804 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("product")) { 8805 res.setProduct(parseMedicationMedicationProductComponent(xpp, res)); 8806 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("package")) { 8807 res.setPackage(parseMedicationMedicationPackageComponent(xpp, res)); 8808 } else if (!parseDomainResourceContent(eventType, xpp, res)) 8809 unknownContent(xpp); 8810 eventType = nextNoWhitespace(xpp); 8811 } 8812 next(xpp); 8813 parseElementClose(res); 8814 return res; 8815 } 8816 8817 protected Medication.MedicationProductComponent parseMedicationMedicationProductComponent(XmlPullParser xpp, Medication owner) throws XmlPullParserException, IOException, FHIRFormatError { 8818 Medication.MedicationProductComponent res = new Medication.MedicationProductComponent(); 8819 parseBackboneAttributes(xpp, res); 8820 next(xpp); 8821 int eventType = nextNoWhitespace(xpp); 8822 while (eventType != XmlPullParser.END_TAG) { 8823 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("form")) { 8824 res.setForm(parseCodeableConcept(xpp)); 8825 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ingredient")) { 8826 res.getIngredient().add(parseMedicationMedicationProductIngredientComponent(xpp, owner)); 8827 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("batch")) { 8828 res.getBatch().add(parseMedicationMedicationProductBatchComponent(xpp, owner)); 8829 } else if (!parseBackboneContent(eventType, xpp, res)) 8830 unknownContent(xpp); 8831 eventType = nextNoWhitespace(xpp); 8832 } 8833 next(xpp); 8834 parseElementClose(res); 8835 return res; 8836 } 8837 8838 protected Medication.MedicationProductIngredientComponent parseMedicationMedicationProductIngredientComponent(XmlPullParser xpp, Medication owner) throws XmlPullParserException, IOException, FHIRFormatError { 8839 Medication.MedicationProductIngredientComponent res = new Medication.MedicationProductIngredientComponent(); 8840 parseBackboneAttributes(xpp, res); 8841 next(xpp); 8842 int eventType = nextNoWhitespace(xpp); 8843 while (eventType != XmlPullParser.END_TAG) { 8844 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "item")) { 8845 res.setItem(parseType("item", xpp)); 8846 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 8847 res.setAmount(parseRatio(xpp)); 8848 } else if (!parseBackboneContent(eventType, xpp, res)) 8849 unknownContent(xpp); 8850 eventType = nextNoWhitespace(xpp); 8851 } 8852 next(xpp); 8853 parseElementClose(res); 8854 return res; 8855 } 8856 8857 protected Medication.MedicationProductBatchComponent parseMedicationMedicationProductBatchComponent(XmlPullParser xpp, Medication owner) throws XmlPullParserException, IOException, FHIRFormatError { 8858 Medication.MedicationProductBatchComponent res = new Medication.MedicationProductBatchComponent(); 8859 parseBackboneAttributes(xpp, res); 8860 next(xpp); 8861 int eventType = nextNoWhitespace(xpp); 8862 while (eventType != XmlPullParser.END_TAG) { 8863 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lotNumber")) { 8864 res.setLotNumberElement(parseString(xpp)); 8865 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expirationDate")) { 8866 res.setExpirationDateElement(parseDateTime(xpp)); 8867 } else if (!parseBackboneContent(eventType, xpp, res)) 8868 unknownContent(xpp); 8869 eventType = nextNoWhitespace(xpp); 8870 } 8871 next(xpp); 8872 parseElementClose(res); 8873 return res; 8874 } 8875 8876 protected Medication.MedicationPackageComponent parseMedicationMedicationPackageComponent(XmlPullParser xpp, Medication owner) throws XmlPullParserException, IOException, FHIRFormatError { 8877 Medication.MedicationPackageComponent res = new Medication.MedicationPackageComponent(); 8878 parseBackboneAttributes(xpp, res); 8879 next(xpp); 8880 int eventType = nextNoWhitespace(xpp); 8881 while (eventType != XmlPullParser.END_TAG) { 8882 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("container")) { 8883 res.setContainer(parseCodeableConcept(xpp)); 8884 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 8885 res.getContent().add(parseMedicationMedicationPackageContentComponent(xpp, owner)); 8886 } else if (!parseBackboneContent(eventType, xpp, res)) 8887 unknownContent(xpp); 8888 eventType = nextNoWhitespace(xpp); 8889 } 8890 next(xpp); 8891 parseElementClose(res); 8892 return res; 8893 } 8894 8895 protected Medication.MedicationPackageContentComponent parseMedicationMedicationPackageContentComponent(XmlPullParser xpp, Medication owner) throws XmlPullParserException, IOException, FHIRFormatError { 8896 Medication.MedicationPackageContentComponent res = new Medication.MedicationPackageContentComponent(); 8897 parseBackboneAttributes(xpp, res); 8898 next(xpp); 8899 int eventType = nextNoWhitespace(xpp); 8900 while (eventType != XmlPullParser.END_TAG) { 8901 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "item")) { 8902 res.setItem(parseType("item", xpp)); 8903 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 8904 res.setAmount(parseSimpleQuantity(xpp)); 8905 } else if (!parseBackboneContent(eventType, xpp, res)) 8906 unknownContent(xpp); 8907 eventType = nextNoWhitespace(xpp); 8908 } 8909 next(xpp); 8910 parseElementClose(res); 8911 return res; 8912 } 8913 8914 protected MedicationAdministration parseMedicationAdministration(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8915 MedicationAdministration res = new MedicationAdministration(); 8916 parseDomainResourceAttributes(xpp, res); 8917 next(xpp); 8918 int eventType = nextNoWhitespace(xpp); 8919 while (eventType != XmlPullParser.END_TAG) { 8920 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8921 res.getIdentifier().add(parseIdentifier(xpp)); 8922 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 8923 res.setStatusElement(parseEnumeration(xpp, MedicationAdministration.MedicationAdministrationStatus.NULL, new MedicationAdministration.MedicationAdministrationStatusEnumFactory())); 8924 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "medication")) { 8925 res.setMedication(parseType("medication", xpp)); 8926 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 8927 res.setPatient(parseReference(xpp)); 8928 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 8929 res.setEncounter(parseReference(xpp)); 8930 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "effectiveTime")) { 8931 res.setEffectiveTime(parseType("effectiveTime", xpp)); 8932 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("practitioner")) { 8933 res.setPractitioner(parseReference(xpp)); 8934 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prescription")) { 8935 res.setPrescription(parseReference(xpp)); 8936 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("wasNotGiven")) { 8937 res.setWasNotGivenElement(parseBoolean(xpp)); 8938 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonNotGiven")) { 8939 res.getReasonNotGiven().add(parseCodeableConcept(xpp)); 8940 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonGiven")) { 8941 res.getReasonGiven().add(parseCodeableConcept(xpp)); 8942 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 8943 res.getDevice().add(parseReference(xpp)); 8944 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 8945 res.getNote().add(parseAnnotation(xpp)); 8946 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dosage")) { 8947 res.setDosage(parseMedicationAdministrationMedicationAdministrationDosageComponent(xpp, res)); 8948 } else if (!parseDomainResourceContent(eventType, xpp, res)) 8949 unknownContent(xpp); 8950 eventType = nextNoWhitespace(xpp); 8951 } 8952 next(xpp); 8953 parseElementClose(res); 8954 return res; 8955 } 8956 8957 protected MedicationAdministration.MedicationAdministrationDosageComponent parseMedicationAdministrationMedicationAdministrationDosageComponent(XmlPullParser xpp, MedicationAdministration owner) throws XmlPullParserException, IOException, FHIRFormatError { 8958 MedicationAdministration.MedicationAdministrationDosageComponent res = new MedicationAdministration.MedicationAdministrationDosageComponent(); 8959 parseBackboneAttributes(xpp, res); 8960 next(xpp); 8961 int eventType = nextNoWhitespace(xpp); 8962 while (eventType != XmlPullParser.END_TAG) { 8963 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 8964 res.setTextElement(parseString(xpp)); 8965 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "site")) { 8966 res.setSite(parseType("site", xpp)); 8967 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("route")) { 8968 res.setRoute(parseCodeableConcept(xpp)); 8969 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 8970 res.setMethod(parseCodeableConcept(xpp)); 8971 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 8972 res.setQuantity(parseSimpleQuantity(xpp)); 8973 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "rate")) { 8974 res.setRate(parseType("rate", xpp)); 8975 } else if (!parseBackboneContent(eventType, xpp, res)) 8976 unknownContent(xpp); 8977 eventType = nextNoWhitespace(xpp); 8978 } 8979 next(xpp); 8980 parseElementClose(res); 8981 return res; 8982 } 8983 8984 protected MedicationDispense parseMedicationDispense(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8985 MedicationDispense res = new MedicationDispense(); 8986 parseDomainResourceAttributes(xpp, res); 8987 next(xpp); 8988 int eventType = nextNoWhitespace(xpp); 8989 while (eventType != XmlPullParser.END_TAG) { 8990 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8991 res.setIdentifier(parseIdentifier(xpp)); 8992 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 8993 res.setStatusElement(parseEnumeration(xpp, MedicationDispense.MedicationDispenseStatus.NULL, new MedicationDispense.MedicationDispenseStatusEnumFactory())); 8994 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "medication")) { 8995 res.setMedication(parseType("medication", xpp)); 8996 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 8997 res.setPatient(parseReference(xpp)); 8998 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dispenser")) { 8999 res.setDispenser(parseReference(xpp)); 9000 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authorizingPrescription")) { 9001 res.getAuthorizingPrescription().add(parseReference(xpp)); 9002 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 9003 res.setType(parseCodeableConcept(xpp)); 9004 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 9005 res.setQuantity(parseSimpleQuantity(xpp)); 9006 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("daysSupply")) { 9007 res.setDaysSupply(parseSimpleQuantity(xpp)); 9008 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("whenPrepared")) { 9009 res.setWhenPreparedElement(parseDateTime(xpp)); 9010 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("whenHandedOver")) { 9011 res.setWhenHandedOverElement(parseDateTime(xpp)); 9012 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 9013 res.setDestination(parseReference(xpp)); 9014 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("receiver")) { 9015 res.getReceiver().add(parseReference(xpp)); 9016 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 9017 res.getNote().add(parseAnnotation(xpp)); 9018 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dosageInstruction")) { 9019 res.getDosageInstruction().add(parseMedicationDispenseMedicationDispenseDosageInstructionComponent(xpp, res)); 9020 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("substitution")) { 9021 res.setSubstitution(parseMedicationDispenseMedicationDispenseSubstitutionComponent(xpp, res)); 9022 } else if (!parseDomainResourceContent(eventType, xpp, res)) 9023 unknownContent(xpp); 9024 eventType = nextNoWhitespace(xpp); 9025 } 9026 next(xpp); 9027 parseElementClose(res); 9028 return res; 9029 } 9030 9031 protected MedicationDispense.MedicationDispenseDosageInstructionComponent parseMedicationDispenseMedicationDispenseDosageInstructionComponent(XmlPullParser xpp, MedicationDispense owner) throws XmlPullParserException, IOException, FHIRFormatError { 9032 MedicationDispense.MedicationDispenseDosageInstructionComponent res = new MedicationDispense.MedicationDispenseDosageInstructionComponent(); 9033 parseBackboneAttributes(xpp, res); 9034 next(xpp); 9035 int eventType = nextNoWhitespace(xpp); 9036 while (eventType != XmlPullParser.END_TAG) { 9037 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 9038 res.setTextElement(parseString(xpp)); 9039 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("additionalInstructions")) { 9040 res.setAdditionalInstructions(parseCodeableConcept(xpp)); 9041 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("timing")) { 9042 res.setTiming(parseTiming(xpp)); 9043 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "asNeeded")) { 9044 res.setAsNeeded(parseType("asNeeded", xpp)); 9045 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "site")) { 9046 res.setSite(parseType("site", xpp)); 9047 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("route")) { 9048 res.setRoute(parseCodeableConcept(xpp)); 9049 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 9050 res.setMethod(parseCodeableConcept(xpp)); 9051 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "dose")) { 9052 res.setDose(parseType("dose", xpp)); 9053 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "rate")) { 9054 res.setRate(parseType("rate", xpp)); 9055 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxDosePerPeriod")) { 9056 res.setMaxDosePerPeriod(parseRatio(xpp)); 9057 } else if (!parseBackboneContent(eventType, xpp, res)) 9058 unknownContent(xpp); 9059 eventType = nextNoWhitespace(xpp); 9060 } 9061 next(xpp); 9062 parseElementClose(res); 9063 return res; 9064 } 9065 9066 protected MedicationDispense.MedicationDispenseSubstitutionComponent parseMedicationDispenseMedicationDispenseSubstitutionComponent(XmlPullParser xpp, MedicationDispense owner) throws XmlPullParserException, IOException, FHIRFormatError { 9067 MedicationDispense.MedicationDispenseSubstitutionComponent res = new MedicationDispense.MedicationDispenseSubstitutionComponent(); 9068 parseBackboneAttributes(xpp, res); 9069 next(xpp); 9070 int eventType = nextNoWhitespace(xpp); 9071 while (eventType != XmlPullParser.END_TAG) { 9072 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 9073 res.setType(parseCodeableConcept(xpp)); 9074 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 9075 res.getReason().add(parseCodeableConcept(xpp)); 9076 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responsibleParty")) { 9077 res.getResponsibleParty().add(parseReference(xpp)); 9078 } else if (!parseBackboneContent(eventType, xpp, res)) 9079 unknownContent(xpp); 9080 eventType = nextNoWhitespace(xpp); 9081 } 9082 next(xpp); 9083 parseElementClose(res); 9084 return res; 9085 } 9086 9087 protected MedicationOrder parseMedicationOrder(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9088 MedicationOrder res = new MedicationOrder(); 9089 parseDomainResourceAttributes(xpp, res); 9090 next(xpp); 9091 int eventType = nextNoWhitespace(xpp); 9092 while (eventType != XmlPullParser.END_TAG) { 9093 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9094 res.getIdentifier().add(parseIdentifier(xpp)); 9095 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 9096 res.setStatusElement(parseEnumeration(xpp, MedicationOrder.MedicationOrderStatus.NULL, new MedicationOrder.MedicationOrderStatusEnumFactory())); 9097 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "medication")) { 9098 res.setMedication(parseType("medication", xpp)); 9099 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 9100 res.setPatient(parseReference(xpp)); 9101 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 9102 res.setEncounter(parseReference(xpp)); 9103 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateWritten")) { 9104 res.setDateWrittenElement(parseDateTime(xpp)); 9105 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prescriber")) { 9106 res.setPrescriber(parseReference(xpp)); 9107 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonCode")) { 9108 res.getReasonCode().add(parseCodeableConcept(xpp)); 9109 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonReference")) { 9110 res.getReasonReference().add(parseReference(xpp)); 9111 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateEnded")) { 9112 res.setDateEndedElement(parseDateTime(xpp)); 9113 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonEnded")) { 9114 res.setReasonEnded(parseCodeableConcept(xpp)); 9115 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 9116 res.getNote().add(parseAnnotation(xpp)); 9117 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dosageInstruction")) { 9118 res.getDosageInstruction().add(parseMedicationOrderMedicationOrderDosageInstructionComponent(xpp, res)); 9119 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dispenseRequest")) { 9120 res.setDispenseRequest(parseMedicationOrderMedicationOrderDispenseRequestComponent(xpp, res)); 9121 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("substitution")) { 9122 res.setSubstitution(parseMedicationOrderMedicationOrderSubstitutionComponent(xpp, res)); 9123 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priorPrescription")) { 9124 res.setPriorPrescription(parseReference(xpp)); 9125 } else if (!parseDomainResourceContent(eventType, xpp, res)) 9126 unknownContent(xpp); 9127 eventType = nextNoWhitespace(xpp); 9128 } 9129 next(xpp); 9130 parseElementClose(res); 9131 return res; 9132 } 9133 9134 protected MedicationOrder.MedicationOrderDosageInstructionComponent parseMedicationOrderMedicationOrderDosageInstructionComponent(XmlPullParser xpp, MedicationOrder owner) throws XmlPullParserException, IOException, FHIRFormatError { 9135 MedicationOrder.MedicationOrderDosageInstructionComponent res = new MedicationOrder.MedicationOrderDosageInstructionComponent(); 9136 parseBackboneAttributes(xpp, res); 9137 next(xpp); 9138 int eventType = nextNoWhitespace(xpp); 9139 while (eventType != XmlPullParser.END_TAG) { 9140 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 9141 res.setTextElement(parseString(xpp)); 9142 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("additionalInstructions")) { 9143 res.setAdditionalInstructions(parseCodeableConcept(xpp)); 9144 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("timing")) { 9145 res.setTiming(parseTiming(xpp)); 9146 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "asNeeded")) { 9147 res.setAsNeeded(parseType("asNeeded", xpp)); 9148 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "site")) { 9149 res.setSite(parseType("site", xpp)); 9150 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("route")) { 9151 res.setRoute(parseCodeableConcept(xpp)); 9152 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 9153 res.setMethod(parseCodeableConcept(xpp)); 9154 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "dose")) { 9155 res.setDose(parseType("dose", xpp)); 9156 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "rate")) { 9157 res.setRate(parseType("rate", xpp)); 9158 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxDosePerPeriod")) { 9159 res.setMaxDosePerPeriod(parseRatio(xpp)); 9160 } else if (!parseBackboneContent(eventType, xpp, res)) 9161 unknownContent(xpp); 9162 eventType = nextNoWhitespace(xpp); 9163 } 9164 next(xpp); 9165 parseElementClose(res); 9166 return res; 9167 } 9168 9169 protected MedicationOrder.MedicationOrderDispenseRequestComponent parseMedicationOrderMedicationOrderDispenseRequestComponent(XmlPullParser xpp, MedicationOrder owner) throws XmlPullParserException, IOException, FHIRFormatError { 9170 MedicationOrder.MedicationOrderDispenseRequestComponent res = new MedicationOrder.MedicationOrderDispenseRequestComponent(); 9171 parseBackboneAttributes(xpp, res); 9172 next(xpp); 9173 int eventType = nextNoWhitespace(xpp); 9174 while (eventType != XmlPullParser.END_TAG) { 9175 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "medication")) { 9176 res.setMedication(parseType("medication", xpp)); 9177 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("validityPeriod")) { 9178 res.setValidityPeriod(parsePeriod(xpp)); 9179 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("numberOfRepeatsAllowed")) { 9180 res.setNumberOfRepeatsAllowedElement(parsePositiveInt(xpp)); 9181 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 9182 res.setQuantity(parseSimpleQuantity(xpp)); 9183 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expectedSupplyDuration")) { 9184 res.setExpectedSupplyDuration(parseDuration(xpp)); 9185 } else if (!parseBackboneContent(eventType, xpp, res)) 9186 unknownContent(xpp); 9187 eventType = nextNoWhitespace(xpp); 9188 } 9189 next(xpp); 9190 parseElementClose(res); 9191 return res; 9192 } 9193 9194 protected MedicationOrder.MedicationOrderSubstitutionComponent parseMedicationOrderMedicationOrderSubstitutionComponent(XmlPullParser xpp, MedicationOrder owner) throws XmlPullParserException, IOException, FHIRFormatError { 9195 MedicationOrder.MedicationOrderSubstitutionComponent res = new MedicationOrder.MedicationOrderSubstitutionComponent(); 9196 parseBackboneAttributes(xpp, res); 9197 next(xpp); 9198 int eventType = nextNoWhitespace(xpp); 9199 while (eventType != XmlPullParser.END_TAG) { 9200 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 9201 res.setType(parseCodeableConcept(xpp)); 9202 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 9203 res.setReason(parseCodeableConcept(xpp)); 9204 } else if (!parseBackboneContent(eventType, xpp, res)) 9205 unknownContent(xpp); 9206 eventType = nextNoWhitespace(xpp); 9207 } 9208 next(xpp); 9209 parseElementClose(res); 9210 return res; 9211 } 9212 9213 protected MedicationStatement parseMedicationStatement(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9214 MedicationStatement res = new MedicationStatement(); 9215 parseDomainResourceAttributes(xpp, res); 9216 next(xpp); 9217 int eventType = nextNoWhitespace(xpp); 9218 while (eventType != XmlPullParser.END_TAG) { 9219 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9220 res.getIdentifier().add(parseIdentifier(xpp)); 9221 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 9222 res.setStatusElement(parseEnumeration(xpp, MedicationStatement.MedicationStatementStatus.NULL, new MedicationStatement.MedicationStatementStatusEnumFactory())); 9223 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "medication")) { 9224 res.setMedication(parseType("medication", xpp)); 9225 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 9226 res.setPatient(parseReference(xpp)); 9227 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "effective")) { 9228 res.setEffective(parseType("effective", xpp)); 9229 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("informationSource")) { 9230 res.setInformationSource(parseReference(xpp)); 9231 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInformation")) { 9232 res.getSupportingInformation().add(parseReference(xpp)); 9233 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateAsserted")) { 9234 res.setDateAssertedElement(parseDateTime(xpp)); 9235 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("wasNotTaken")) { 9236 res.setWasNotTakenElement(parseBoolean(xpp)); 9237 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonNotTaken")) { 9238 res.getReasonNotTaken().add(parseCodeableConcept(xpp)); 9239 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "reasonForUse")) { 9240 res.setReasonForUse(parseType("reasonForUse", xpp)); 9241 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 9242 res.getNote().add(parseAnnotation(xpp)); 9243 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dosage")) { 9244 res.getDosage().add(parseMedicationStatementMedicationStatementDosageComponent(xpp, res)); 9245 } else if (!parseDomainResourceContent(eventType, xpp, res)) 9246 unknownContent(xpp); 9247 eventType = nextNoWhitespace(xpp); 9248 } 9249 next(xpp); 9250 parseElementClose(res); 9251 return res; 9252 } 9253 9254 protected MedicationStatement.MedicationStatementDosageComponent parseMedicationStatementMedicationStatementDosageComponent(XmlPullParser xpp, MedicationStatement owner) throws XmlPullParserException, IOException, FHIRFormatError { 9255 MedicationStatement.MedicationStatementDosageComponent res = new MedicationStatement.MedicationStatementDosageComponent(); 9256 parseBackboneAttributes(xpp, res); 9257 next(xpp); 9258 int eventType = nextNoWhitespace(xpp); 9259 while (eventType != XmlPullParser.END_TAG) { 9260 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 9261 res.setTextElement(parseString(xpp)); 9262 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("timing")) { 9263 res.setTiming(parseTiming(xpp)); 9264 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "asNeeded")) { 9265 res.setAsNeeded(parseType("asNeeded", xpp)); 9266 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "site")) { 9267 res.setSite(parseType("site", xpp)); 9268 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("route")) { 9269 res.setRoute(parseCodeableConcept(xpp)); 9270 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 9271 res.setMethod(parseCodeableConcept(xpp)); 9272 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "quantity")) { 9273 res.setQuantity(parseType("quantity", xpp)); 9274 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "rate")) { 9275 res.setRate(parseType("rate", xpp)); 9276 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxDosePerPeriod")) { 9277 res.setMaxDosePerPeriod(parseRatio(xpp)); 9278 } else if (!parseBackboneContent(eventType, xpp, res)) 9279 unknownContent(xpp); 9280 eventType = nextNoWhitespace(xpp); 9281 } 9282 next(xpp); 9283 parseElementClose(res); 9284 return res; 9285 } 9286 9287 protected MessageHeader parseMessageHeader(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9288 MessageHeader res = new MessageHeader(); 9289 parseDomainResourceAttributes(xpp, res); 9290 next(xpp); 9291 int eventType = nextNoWhitespace(xpp); 9292 while (eventType != XmlPullParser.END_TAG) { 9293 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("timestamp")) { 9294 res.setTimestampElement(parseInstant(xpp)); 9295 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 9296 res.setEvent(parseCoding(xpp)); 9297 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("response")) { 9298 res.setResponse(parseMessageHeaderMessageHeaderResponseComponent(xpp, res)); 9299 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 9300 res.setSource(parseMessageHeaderMessageSourceComponent(xpp, res)); 9301 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 9302 res.getDestination().add(parseMessageHeaderMessageDestinationComponent(xpp, res)); 9303 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("enterer")) { 9304 res.setEnterer(parseReference(xpp)); 9305 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 9306 res.setAuthor(parseReference(xpp)); 9307 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("receiver")) { 9308 res.setReceiver(parseReference(xpp)); 9309 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responsible")) { 9310 res.setResponsible(parseReference(xpp)); 9311 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 9312 res.setReason(parseCodeableConcept(xpp)); 9313 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("data")) { 9314 res.getData().add(parseReference(xpp)); 9315 } else if (!parseDomainResourceContent(eventType, xpp, res)) 9316 unknownContent(xpp); 9317 eventType = nextNoWhitespace(xpp); 9318 } 9319 next(xpp); 9320 parseElementClose(res); 9321 return res; 9322 } 9323 9324 protected MessageHeader.MessageHeaderResponseComponent parseMessageHeaderMessageHeaderResponseComponent(XmlPullParser xpp, MessageHeader owner) throws XmlPullParserException, IOException, FHIRFormatError { 9325 MessageHeader.MessageHeaderResponseComponent res = new MessageHeader.MessageHeaderResponseComponent(); 9326 parseBackboneAttributes(xpp, res); 9327 next(xpp); 9328 int eventType = nextNoWhitespace(xpp); 9329 while (eventType != XmlPullParser.END_TAG) { 9330 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9331 res.setIdentifierElement(parseId(xpp)); 9332 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 9333 res.setCodeElement(parseEnumeration(xpp, MessageHeader.ResponseType.NULL, new MessageHeader.ResponseTypeEnumFactory())); 9334 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("details")) { 9335 res.setDetails(parseReference(xpp)); 9336 } else if (!parseBackboneContent(eventType, xpp, res)) 9337 unknownContent(xpp); 9338 eventType = nextNoWhitespace(xpp); 9339 } 9340 next(xpp); 9341 parseElementClose(res); 9342 return res; 9343 } 9344 9345 protected MessageHeader.MessageSourceComponent parseMessageHeaderMessageSourceComponent(XmlPullParser xpp, MessageHeader owner) throws XmlPullParserException, IOException, FHIRFormatError { 9346 MessageHeader.MessageSourceComponent res = new MessageHeader.MessageSourceComponent(); 9347 parseBackboneAttributes(xpp, res); 9348 next(xpp); 9349 int eventType = nextNoWhitespace(xpp); 9350 while (eventType != XmlPullParser.END_TAG) { 9351 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 9352 res.setNameElement(parseString(xpp)); 9353 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("software")) { 9354 res.setSoftwareElement(parseString(xpp)); 9355 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 9356 res.setVersionElement(parseString(xpp)); 9357 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 9358 res.setContact(parseContactPoint(xpp)); 9359 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 9360 res.setEndpointElement(parseUri(xpp)); 9361 } else if (!parseBackboneContent(eventType, xpp, res)) 9362 unknownContent(xpp); 9363 eventType = nextNoWhitespace(xpp); 9364 } 9365 next(xpp); 9366 parseElementClose(res); 9367 return res; 9368 } 9369 9370 protected MessageHeader.MessageDestinationComponent parseMessageHeaderMessageDestinationComponent(XmlPullParser xpp, MessageHeader owner) throws XmlPullParserException, IOException, FHIRFormatError { 9371 MessageHeader.MessageDestinationComponent res = new MessageHeader.MessageDestinationComponent(); 9372 parseBackboneAttributes(xpp, res); 9373 next(xpp); 9374 int eventType = nextNoWhitespace(xpp); 9375 while (eventType != XmlPullParser.END_TAG) { 9376 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 9377 res.setNameElement(parseString(xpp)); 9378 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 9379 res.setTarget(parseReference(xpp)); 9380 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 9381 res.setEndpointElement(parseUri(xpp)); 9382 } else if (!parseBackboneContent(eventType, xpp, res)) 9383 unknownContent(xpp); 9384 eventType = nextNoWhitespace(xpp); 9385 } 9386 next(xpp); 9387 parseElementClose(res); 9388 return res; 9389 } 9390 9391 protected ModuleDefinition parseModuleDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9392 ModuleDefinition res = new ModuleDefinition(); 9393 parseDomainResourceAttributes(xpp, res); 9394 next(xpp); 9395 int eventType = nextNoWhitespace(xpp); 9396 while (eventType != XmlPullParser.END_TAG) { 9397 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9398 res.getIdentifier().add(parseIdentifier(xpp)); 9399 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 9400 res.setVersionElement(parseString(xpp)); 9401 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("model")) { 9402 res.getModel().add(parseModuleDefinitionModuleDefinitionModelComponent(xpp, res)); 9403 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("library")) { 9404 res.getLibrary().add(parseModuleDefinitionModuleDefinitionLibraryComponent(xpp, res)); 9405 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("codeSystem")) { 9406 res.getCodeSystem().add(parseModuleDefinitionModuleDefinitionCodeSystemComponent(xpp, res)); 9407 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valueSet")) { 9408 res.getValueSet().add(parseModuleDefinitionModuleDefinitionValueSetComponent(xpp, res)); 9409 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameter")) { 9410 res.getParameter().add(parseModuleDefinitionModuleDefinitionParameterComponent(xpp, res)); 9411 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("data")) { 9412 res.getData().add(parseModuleDefinitionModuleDefinitionDataComponent(xpp, res)); 9413 } else if (!parseDomainResourceContent(eventType, xpp, res)) 9414 unknownContent(xpp); 9415 eventType = nextNoWhitespace(xpp); 9416 } 9417 next(xpp); 9418 parseElementClose(res); 9419 return res; 9420 } 9421 9422 protected ModuleDefinition.ModuleDefinitionModelComponent parseModuleDefinitionModuleDefinitionModelComponent(XmlPullParser xpp, ModuleDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 9423 ModuleDefinition.ModuleDefinitionModelComponent res = new ModuleDefinition.ModuleDefinitionModelComponent(); 9424 parseBackboneAttributes(xpp, res); 9425 next(xpp); 9426 int eventType = nextNoWhitespace(xpp); 9427 while (eventType != XmlPullParser.END_TAG) { 9428 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 9429 res.setNameElement(parseString(xpp)); 9430 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9431 res.setIdentifierElement(parseString(xpp)); 9432 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 9433 res.setVersionElement(parseString(xpp)); 9434 } else if (!parseBackboneContent(eventType, xpp, res)) 9435 unknownContent(xpp); 9436 eventType = nextNoWhitespace(xpp); 9437 } 9438 next(xpp); 9439 parseElementClose(res); 9440 return res; 9441 } 9442 9443 protected ModuleDefinition.ModuleDefinitionLibraryComponent parseModuleDefinitionModuleDefinitionLibraryComponent(XmlPullParser xpp, ModuleDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 9444 ModuleDefinition.ModuleDefinitionLibraryComponent res = new ModuleDefinition.ModuleDefinitionLibraryComponent(); 9445 parseBackboneAttributes(xpp, res); 9446 next(xpp); 9447 int eventType = nextNoWhitespace(xpp); 9448 while (eventType != XmlPullParser.END_TAG) { 9449 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 9450 res.setNameElement(parseString(xpp)); 9451 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9452 res.setIdentifierElement(parseString(xpp)); 9453 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 9454 res.setVersionElement(parseString(xpp)); 9455 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "document")) { 9456 res.setDocument(parseType("document", xpp)); 9457 } else if (!parseBackboneContent(eventType, xpp, res)) 9458 unknownContent(xpp); 9459 eventType = nextNoWhitespace(xpp); 9460 } 9461 next(xpp); 9462 parseElementClose(res); 9463 return res; 9464 } 9465 9466 protected ModuleDefinition.ModuleDefinitionCodeSystemComponent parseModuleDefinitionModuleDefinitionCodeSystemComponent(XmlPullParser xpp, ModuleDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 9467 ModuleDefinition.ModuleDefinitionCodeSystemComponent res = new ModuleDefinition.ModuleDefinitionCodeSystemComponent(); 9468 parseBackboneAttributes(xpp, res); 9469 next(xpp); 9470 int eventType = nextNoWhitespace(xpp); 9471 while (eventType != XmlPullParser.END_TAG) { 9472 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 9473 res.setNameElement(parseString(xpp)); 9474 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9475 res.setIdentifierElement(parseString(xpp)); 9476 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 9477 res.setVersionElement(parseString(xpp)); 9478 } else if (!parseBackboneContent(eventType, xpp, res)) 9479 unknownContent(xpp); 9480 eventType = nextNoWhitespace(xpp); 9481 } 9482 next(xpp); 9483 parseElementClose(res); 9484 return res; 9485 } 9486 9487 protected ModuleDefinition.ModuleDefinitionValueSetComponent parseModuleDefinitionModuleDefinitionValueSetComponent(XmlPullParser xpp, ModuleDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 9488 ModuleDefinition.ModuleDefinitionValueSetComponent res = new ModuleDefinition.ModuleDefinitionValueSetComponent(); 9489 parseBackboneAttributes(xpp, res); 9490 next(xpp); 9491 int eventType = nextNoWhitespace(xpp); 9492 while (eventType != XmlPullParser.END_TAG) { 9493 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 9494 res.setNameElement(parseString(xpp)); 9495 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9496 res.setIdentifierElement(parseString(xpp)); 9497 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 9498 res.setVersionElement(parseString(xpp)); 9499 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("codeSystem")) { 9500 res.getCodeSystem().add(parseString(xpp)); 9501 } else if (!parseBackboneContent(eventType, xpp, res)) 9502 unknownContent(xpp); 9503 eventType = nextNoWhitespace(xpp); 9504 } 9505 next(xpp); 9506 parseElementClose(res); 9507 return res; 9508 } 9509 9510 protected ModuleDefinition.ModuleDefinitionParameterComponent parseModuleDefinitionModuleDefinitionParameterComponent(XmlPullParser xpp, ModuleDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 9511 ModuleDefinition.ModuleDefinitionParameterComponent res = new ModuleDefinition.ModuleDefinitionParameterComponent(); 9512 parseBackboneAttributes(xpp, res); 9513 next(xpp); 9514 int eventType = nextNoWhitespace(xpp); 9515 while (eventType != XmlPullParser.END_TAG) { 9516 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 9517 res.setNameElement(parseCode(xpp)); 9518 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 9519 res.setUseElement(parseCode(xpp)); 9520 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 9521 res.setDocumentationElement(parseString(xpp)); 9522 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 9523 res.setTypeElement(parseCode(xpp)); 9524 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 9525 res.setProfile(parseReference(xpp)); 9526 } else if (!parseBackboneContent(eventType, xpp, res)) 9527 unknownContent(xpp); 9528 eventType = nextNoWhitespace(xpp); 9529 } 9530 next(xpp); 9531 parseElementClose(res); 9532 return res; 9533 } 9534 9535 protected ModuleDefinition.ModuleDefinitionDataComponent parseModuleDefinitionModuleDefinitionDataComponent(XmlPullParser xpp, ModuleDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 9536 ModuleDefinition.ModuleDefinitionDataComponent res = new ModuleDefinition.ModuleDefinitionDataComponent(); 9537 parseBackboneAttributes(xpp, res); 9538 next(xpp); 9539 int eventType = nextNoWhitespace(xpp); 9540 while (eventType != XmlPullParser.END_TAG) { 9541 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 9542 res.setTypeElement(parseCode(xpp)); 9543 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 9544 res.setProfile(parseReference(xpp)); 9545 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mustSupport")) { 9546 res.getMustSupport().add(parseString(xpp)); 9547 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("codeFilter")) { 9548 res.getCodeFilter().add(parseModuleDefinitionModuleDefinitionDataCodeFilterComponent(xpp, owner)); 9549 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateFilter")) { 9550 res.getDateFilter().add(parseModuleDefinitionModuleDefinitionDataDateFilterComponent(xpp, owner)); 9551 } else if (!parseBackboneContent(eventType, xpp, res)) 9552 unknownContent(xpp); 9553 eventType = nextNoWhitespace(xpp); 9554 } 9555 next(xpp); 9556 parseElementClose(res); 9557 return res; 9558 } 9559 9560 protected ModuleDefinition.ModuleDefinitionDataCodeFilterComponent parseModuleDefinitionModuleDefinitionDataCodeFilterComponent(XmlPullParser xpp, ModuleDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 9561 ModuleDefinition.ModuleDefinitionDataCodeFilterComponent res = new ModuleDefinition.ModuleDefinitionDataCodeFilterComponent(); 9562 parseBackboneAttributes(xpp, res); 9563 next(xpp); 9564 int eventType = nextNoWhitespace(xpp); 9565 while (eventType != XmlPullParser.END_TAG) { 9566 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 9567 res.setPathElement(parseString(xpp)); 9568 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "valueSet")) { 9569 res.setValueSet(parseType("valueSet", xpp)); 9570 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("codeableConcept")) { 9571 res.getCodeableConcept().add(parseCodeableConcept(xpp)); 9572 } else if (!parseBackboneContent(eventType, xpp, res)) 9573 unknownContent(xpp); 9574 eventType = nextNoWhitespace(xpp); 9575 } 9576 next(xpp); 9577 parseElementClose(res); 9578 return res; 9579 } 9580 9581 protected ModuleDefinition.ModuleDefinitionDataDateFilterComponent parseModuleDefinitionModuleDefinitionDataDateFilterComponent(XmlPullParser xpp, ModuleDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 9582 ModuleDefinition.ModuleDefinitionDataDateFilterComponent res = new ModuleDefinition.ModuleDefinitionDataDateFilterComponent(); 9583 parseBackboneAttributes(xpp, res); 9584 next(xpp); 9585 int eventType = nextNoWhitespace(xpp); 9586 while (eventType != XmlPullParser.END_TAG) { 9587 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 9588 res.setPathElement(parseString(xpp)); 9589 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 9590 res.setValue(parseType("value", xpp)); 9591 } else if (!parseBackboneContent(eventType, xpp, res)) 9592 unknownContent(xpp); 9593 eventType = nextNoWhitespace(xpp); 9594 } 9595 next(xpp); 9596 parseElementClose(res); 9597 return res; 9598 } 9599 9600 protected NamingSystem parseNamingSystem(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9601 NamingSystem res = new NamingSystem(); 9602 parseDomainResourceAttributes(xpp, res); 9603 next(xpp); 9604 int eventType = nextNoWhitespace(xpp); 9605 while (eventType != XmlPullParser.END_TAG) { 9606 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 9607 res.setNameElement(parseString(xpp)); 9608 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 9609 res.setStatusElement(parseEnumeration(xpp, Enumerations.ConformanceResourceStatus.NULL, new Enumerations.ConformanceResourceStatusEnumFactory())); 9610 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 9611 res.setKindElement(parseEnumeration(xpp, NamingSystem.NamingSystemType.NULL, new NamingSystem.NamingSystemTypeEnumFactory())); 9612 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 9613 res.setDateElement(parseDateTime(xpp)); 9614 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 9615 res.setPublisherElement(parseString(xpp)); 9616 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 9617 res.getContact().add(parseNamingSystemNamingSystemContactComponent(xpp, res)); 9618 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responsible")) { 9619 res.setResponsibleElement(parseString(xpp)); 9620 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 9621 res.setType(parseCodeableConcept(xpp)); 9622 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 9623 res.setDescriptionElement(parseString(xpp)); 9624 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 9625 res.getUseContext().add(parseCodeableConcept(xpp)); 9626 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usage")) { 9627 res.setUsageElement(parseString(xpp)); 9628 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uniqueId")) { 9629 res.getUniqueId().add(parseNamingSystemNamingSystemUniqueIdComponent(xpp, res)); 9630 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("replacedBy")) { 9631 res.setReplacedBy(parseReference(xpp)); 9632 } else if (!parseDomainResourceContent(eventType, xpp, res)) 9633 unknownContent(xpp); 9634 eventType = nextNoWhitespace(xpp); 9635 } 9636 next(xpp); 9637 parseElementClose(res); 9638 return res; 9639 } 9640 9641 protected NamingSystem.NamingSystemContactComponent parseNamingSystemNamingSystemContactComponent(XmlPullParser xpp, NamingSystem owner) throws XmlPullParserException, IOException, FHIRFormatError { 9642 NamingSystem.NamingSystemContactComponent res = new NamingSystem.NamingSystemContactComponent(); 9643 parseBackboneAttributes(xpp, res); 9644 next(xpp); 9645 int eventType = nextNoWhitespace(xpp); 9646 while (eventType != XmlPullParser.END_TAG) { 9647 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 9648 res.setNameElement(parseString(xpp)); 9649 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 9650 res.getTelecom().add(parseContactPoint(xpp)); 9651 } else if (!parseBackboneContent(eventType, xpp, res)) 9652 unknownContent(xpp); 9653 eventType = nextNoWhitespace(xpp); 9654 } 9655 next(xpp); 9656 parseElementClose(res); 9657 return res; 9658 } 9659 9660 protected NamingSystem.NamingSystemUniqueIdComponent parseNamingSystemNamingSystemUniqueIdComponent(XmlPullParser xpp, NamingSystem owner) throws XmlPullParserException, IOException, FHIRFormatError { 9661 NamingSystem.NamingSystemUniqueIdComponent res = new NamingSystem.NamingSystemUniqueIdComponent(); 9662 parseBackboneAttributes(xpp, res); 9663 next(xpp); 9664 int eventType = nextNoWhitespace(xpp); 9665 while (eventType != XmlPullParser.END_TAG) { 9666 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 9667 res.setTypeElement(parseEnumeration(xpp, NamingSystem.NamingSystemIdentifierType.NULL, new NamingSystem.NamingSystemIdentifierTypeEnumFactory())); 9668 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 9669 res.setValueElement(parseString(xpp)); 9670 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preferred")) { 9671 res.setPreferredElement(parseBoolean(xpp)); 9672 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 9673 res.setPeriod(parsePeriod(xpp)); 9674 } else if (!parseBackboneContent(eventType, xpp, res)) 9675 unknownContent(xpp); 9676 eventType = nextNoWhitespace(xpp); 9677 } 9678 next(xpp); 9679 parseElementClose(res); 9680 return res; 9681 } 9682 9683 protected NutritionOrder parseNutritionOrder(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9684 NutritionOrder res = new NutritionOrder(); 9685 parseDomainResourceAttributes(xpp, res); 9686 next(xpp); 9687 int eventType = nextNoWhitespace(xpp); 9688 while (eventType != XmlPullParser.END_TAG) { 9689 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9690 res.getIdentifier().add(parseIdentifier(xpp)); 9691 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 9692 res.setStatusElement(parseEnumeration(xpp, NutritionOrder.NutritionOrderStatus.NULL, new NutritionOrder.NutritionOrderStatusEnumFactory())); 9693 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 9694 res.setPatient(parseReference(xpp)); 9695 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 9696 res.setEncounter(parseReference(xpp)); 9697 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateTime")) { 9698 res.setDateTimeElement(parseDateTime(xpp)); 9699 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orderer")) { 9700 res.setOrderer(parseReference(xpp)); 9701 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("allergyIntolerance")) { 9702 res.getAllergyIntolerance().add(parseReference(xpp)); 9703 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("foodPreferenceModifier")) { 9704 res.getFoodPreferenceModifier().add(parseCodeableConcept(xpp)); 9705 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("excludeFoodModifier")) { 9706 res.getExcludeFoodModifier().add(parseCodeableConcept(xpp)); 9707 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("oralDiet")) { 9708 res.setOralDiet(parseNutritionOrderNutritionOrderOralDietComponent(xpp, res)); 9709 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supplement")) { 9710 res.getSupplement().add(parseNutritionOrderNutritionOrderSupplementComponent(xpp, res)); 9711 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("enteralFormula")) { 9712 res.setEnteralFormula(parseNutritionOrderNutritionOrderEnteralFormulaComponent(xpp, res)); 9713 } else if (!parseDomainResourceContent(eventType, xpp, res)) 9714 unknownContent(xpp); 9715 eventType = nextNoWhitespace(xpp); 9716 } 9717 next(xpp); 9718 parseElementClose(res); 9719 return res; 9720 } 9721 9722 protected NutritionOrder.NutritionOrderOralDietComponent parseNutritionOrderNutritionOrderOralDietComponent(XmlPullParser xpp, NutritionOrder owner) throws XmlPullParserException, IOException, FHIRFormatError { 9723 NutritionOrder.NutritionOrderOralDietComponent res = new NutritionOrder.NutritionOrderOralDietComponent(); 9724 parseBackboneAttributes(xpp, res); 9725 next(xpp); 9726 int eventType = nextNoWhitespace(xpp); 9727 while (eventType != XmlPullParser.END_TAG) { 9728 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 9729 res.getType().add(parseCodeableConcept(xpp)); 9730 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("schedule")) { 9731 res.getSchedule().add(parseTiming(xpp)); 9732 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("nutrient")) { 9733 res.getNutrient().add(parseNutritionOrderNutritionOrderOralDietNutrientComponent(xpp, owner)); 9734 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("texture")) { 9735 res.getTexture().add(parseNutritionOrderNutritionOrderOralDietTextureComponent(xpp, owner)); 9736 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fluidConsistencyType")) { 9737 res.getFluidConsistencyType().add(parseCodeableConcept(xpp)); 9738 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instruction")) { 9739 res.setInstructionElement(parseString(xpp)); 9740 } else if (!parseBackboneContent(eventType, xpp, res)) 9741 unknownContent(xpp); 9742 eventType = nextNoWhitespace(xpp); 9743 } 9744 next(xpp); 9745 parseElementClose(res); 9746 return res; 9747 } 9748 9749 protected NutritionOrder.NutritionOrderOralDietNutrientComponent parseNutritionOrderNutritionOrderOralDietNutrientComponent(XmlPullParser xpp, NutritionOrder owner) throws XmlPullParserException, IOException, FHIRFormatError { 9750 NutritionOrder.NutritionOrderOralDietNutrientComponent res = new NutritionOrder.NutritionOrderOralDietNutrientComponent(); 9751 parseBackboneAttributes(xpp, res); 9752 next(xpp); 9753 int eventType = nextNoWhitespace(xpp); 9754 while (eventType != XmlPullParser.END_TAG) { 9755 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 9756 res.setModifier(parseCodeableConcept(xpp)); 9757 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 9758 res.setAmount(parseSimpleQuantity(xpp)); 9759 } else if (!parseBackboneContent(eventType, xpp, res)) 9760 unknownContent(xpp); 9761 eventType = nextNoWhitespace(xpp); 9762 } 9763 next(xpp); 9764 parseElementClose(res); 9765 return res; 9766 } 9767 9768 protected NutritionOrder.NutritionOrderOralDietTextureComponent parseNutritionOrderNutritionOrderOralDietTextureComponent(XmlPullParser xpp, NutritionOrder owner) throws XmlPullParserException, IOException, FHIRFormatError { 9769 NutritionOrder.NutritionOrderOralDietTextureComponent res = new NutritionOrder.NutritionOrderOralDietTextureComponent(); 9770 parseBackboneAttributes(xpp, res); 9771 next(xpp); 9772 int eventType = nextNoWhitespace(xpp); 9773 while (eventType != XmlPullParser.END_TAG) { 9774 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 9775 res.setModifier(parseCodeableConcept(xpp)); 9776 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("foodType")) { 9777 res.setFoodType(parseCodeableConcept(xpp)); 9778 } else if (!parseBackboneContent(eventType, xpp, res)) 9779 unknownContent(xpp); 9780 eventType = nextNoWhitespace(xpp); 9781 } 9782 next(xpp); 9783 parseElementClose(res); 9784 return res; 9785 } 9786 9787 protected NutritionOrder.NutritionOrderSupplementComponent parseNutritionOrderNutritionOrderSupplementComponent(XmlPullParser xpp, NutritionOrder owner) throws XmlPullParserException, IOException, FHIRFormatError { 9788 NutritionOrder.NutritionOrderSupplementComponent res = new NutritionOrder.NutritionOrderSupplementComponent(); 9789 parseBackboneAttributes(xpp, res); 9790 next(xpp); 9791 int eventType = nextNoWhitespace(xpp); 9792 while (eventType != XmlPullParser.END_TAG) { 9793 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 9794 res.setType(parseCodeableConcept(xpp)); 9795 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productName")) { 9796 res.setProductNameElement(parseString(xpp)); 9797 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("schedule")) { 9798 res.getSchedule().add(parseTiming(xpp)); 9799 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 9800 res.setQuantity(parseSimpleQuantity(xpp)); 9801 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instruction")) { 9802 res.setInstructionElement(parseString(xpp)); 9803 } else if (!parseBackboneContent(eventType, xpp, res)) 9804 unknownContent(xpp); 9805 eventType = nextNoWhitespace(xpp); 9806 } 9807 next(xpp); 9808 parseElementClose(res); 9809 return res; 9810 } 9811 9812 protected NutritionOrder.NutritionOrderEnteralFormulaComponent parseNutritionOrderNutritionOrderEnteralFormulaComponent(XmlPullParser xpp, NutritionOrder owner) throws XmlPullParserException, IOException, FHIRFormatError { 9813 NutritionOrder.NutritionOrderEnteralFormulaComponent res = new NutritionOrder.NutritionOrderEnteralFormulaComponent(); 9814 parseBackboneAttributes(xpp, res); 9815 next(xpp); 9816 int eventType = nextNoWhitespace(xpp); 9817 while (eventType != XmlPullParser.END_TAG) { 9818 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("baseFormulaType")) { 9819 res.setBaseFormulaType(parseCodeableConcept(xpp)); 9820 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("baseFormulaProductName")) { 9821 res.setBaseFormulaProductNameElement(parseString(xpp)); 9822 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("additiveType")) { 9823 res.setAdditiveType(parseCodeableConcept(xpp)); 9824 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("additiveProductName")) { 9825 res.setAdditiveProductNameElement(parseString(xpp)); 9826 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("caloricDensity")) { 9827 res.setCaloricDensity(parseSimpleQuantity(xpp)); 9828 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("routeofAdministration")) { 9829 res.setRouteofAdministration(parseCodeableConcept(xpp)); 9830 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("administration")) { 9831 res.getAdministration().add(parseNutritionOrderNutritionOrderEnteralFormulaAdministrationComponent(xpp, owner)); 9832 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxVolumeToDeliver")) { 9833 res.setMaxVolumeToDeliver(parseSimpleQuantity(xpp)); 9834 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("administrationInstruction")) { 9835 res.setAdministrationInstructionElement(parseString(xpp)); 9836 } else if (!parseBackboneContent(eventType, xpp, res)) 9837 unknownContent(xpp); 9838 eventType = nextNoWhitespace(xpp); 9839 } 9840 next(xpp); 9841 parseElementClose(res); 9842 return res; 9843 } 9844 9845 protected NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent parseNutritionOrderNutritionOrderEnteralFormulaAdministrationComponent(XmlPullParser xpp, NutritionOrder owner) throws XmlPullParserException, IOException, FHIRFormatError { 9846 NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent res = new NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent(); 9847 parseBackboneAttributes(xpp, res); 9848 next(xpp); 9849 int eventType = nextNoWhitespace(xpp); 9850 while (eventType != XmlPullParser.END_TAG) { 9851 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("schedule")) { 9852 res.setSchedule(parseTiming(xpp)); 9853 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 9854 res.setQuantity(parseSimpleQuantity(xpp)); 9855 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "rate")) { 9856 res.setRate(parseType("rate", xpp)); 9857 } else if (!parseBackboneContent(eventType, xpp, res)) 9858 unknownContent(xpp); 9859 eventType = nextNoWhitespace(xpp); 9860 } 9861 next(xpp); 9862 parseElementClose(res); 9863 return res; 9864 } 9865 9866 protected Observation parseObservation(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9867 Observation res = new Observation(); 9868 parseDomainResourceAttributes(xpp, res); 9869 next(xpp); 9870 int eventType = nextNoWhitespace(xpp); 9871 while (eventType != XmlPullParser.END_TAG) { 9872 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9873 res.getIdentifier().add(parseIdentifier(xpp)); 9874 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 9875 res.setStatusElement(parseEnumeration(xpp, Observation.ObservationStatus.NULL, new Observation.ObservationStatusEnumFactory())); 9876 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 9877 res.setCategory(parseCodeableConcept(xpp)); 9878 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 9879 res.setCode(parseCodeableConcept(xpp)); 9880 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 9881 res.setSubject(parseReference(xpp)); 9882 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 9883 res.setEncounter(parseReference(xpp)); 9884 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "effective")) { 9885 res.setEffective(parseType("effective", xpp)); 9886 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issued")) { 9887 res.setIssuedElement(parseInstant(xpp)); 9888 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 9889 res.getPerformer().add(parseReference(xpp)); 9890 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 9891 res.setValue(parseType("value", xpp)); 9892 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dataAbsentReason")) { 9893 res.setDataAbsentReason(parseCodeableConcept(xpp)); 9894 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("interpretation")) { 9895 res.setInterpretation(parseCodeableConcept(xpp)); 9896 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 9897 res.setCommentElement(parseString(xpp)); 9898 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 9899 res.setBodySite(parseCodeableConcept(xpp)); 9900 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 9901 res.setMethod(parseCodeableConcept(xpp)); 9902 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specimen")) { 9903 res.setSpecimen(parseReference(xpp)); 9904 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 9905 res.setDevice(parseReference(xpp)); 9906 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referenceRange")) { 9907 res.getReferenceRange().add(parseObservationObservationReferenceRangeComponent(xpp, res)); 9908 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("related")) { 9909 res.getRelated().add(parseObservationObservationRelatedComponent(xpp, res)); 9910 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("component")) { 9911 res.getComponent().add(parseObservationObservationComponentComponent(xpp, res)); 9912 } else if (!parseDomainResourceContent(eventType, xpp, res)) 9913 unknownContent(xpp); 9914 eventType = nextNoWhitespace(xpp); 9915 } 9916 next(xpp); 9917 parseElementClose(res); 9918 return res; 9919 } 9920 9921 protected Observation.ObservationReferenceRangeComponent parseObservationObservationReferenceRangeComponent(XmlPullParser xpp, Observation owner) throws XmlPullParserException, IOException, FHIRFormatError { 9922 Observation.ObservationReferenceRangeComponent res = new Observation.ObservationReferenceRangeComponent(); 9923 parseBackboneAttributes(xpp, res); 9924 next(xpp); 9925 int eventType = nextNoWhitespace(xpp); 9926 while (eventType != XmlPullParser.END_TAG) { 9927 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("low")) { 9928 res.setLow(parseSimpleQuantity(xpp)); 9929 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("high")) { 9930 res.setHigh(parseSimpleQuantity(xpp)); 9931 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("meaning")) { 9932 res.setMeaning(parseCodeableConcept(xpp)); 9933 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("age")) { 9934 res.setAge(parseRange(xpp)); 9935 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 9936 res.setTextElement(parseString(xpp)); 9937 } else if (!parseBackboneContent(eventType, xpp, res)) 9938 unknownContent(xpp); 9939 eventType = nextNoWhitespace(xpp); 9940 } 9941 next(xpp); 9942 parseElementClose(res); 9943 return res; 9944 } 9945 9946 protected Observation.ObservationRelatedComponent parseObservationObservationRelatedComponent(XmlPullParser xpp, Observation owner) throws XmlPullParserException, IOException, FHIRFormatError { 9947 Observation.ObservationRelatedComponent res = new Observation.ObservationRelatedComponent(); 9948 parseBackboneAttributes(xpp, res); 9949 next(xpp); 9950 int eventType = nextNoWhitespace(xpp); 9951 while (eventType != XmlPullParser.END_TAG) { 9952 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 9953 res.setTypeElement(parseEnumeration(xpp, Observation.ObservationRelationshipType.NULL, new Observation.ObservationRelationshipTypeEnumFactory())); 9954 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 9955 res.setTarget(parseReference(xpp)); 9956 } else if (!parseBackboneContent(eventType, xpp, res)) 9957 unknownContent(xpp); 9958 eventType = nextNoWhitespace(xpp); 9959 } 9960 next(xpp); 9961 parseElementClose(res); 9962 return res; 9963 } 9964 9965 protected Observation.ObservationComponentComponent parseObservationObservationComponentComponent(XmlPullParser xpp, Observation owner) throws XmlPullParserException, IOException, FHIRFormatError { 9966 Observation.ObservationComponentComponent res = new Observation.ObservationComponentComponent(); 9967 parseBackboneAttributes(xpp, res); 9968 next(xpp); 9969 int eventType = nextNoWhitespace(xpp); 9970 while (eventType != XmlPullParser.END_TAG) { 9971 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 9972 res.setCode(parseCodeableConcept(xpp)); 9973 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 9974 res.setValue(parseType("value", xpp)); 9975 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dataAbsentReason")) { 9976 res.setDataAbsentReason(parseCodeableConcept(xpp)); 9977 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referenceRange")) { 9978 res.getReferenceRange().add(parseObservationObservationReferenceRangeComponent(xpp, owner)); 9979 } else if (!parseBackboneContent(eventType, xpp, res)) 9980 unknownContent(xpp); 9981 eventType = nextNoWhitespace(xpp); 9982 } 9983 next(xpp); 9984 parseElementClose(res); 9985 return res; 9986 } 9987 9988 protected OperationDefinition parseOperationDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9989 OperationDefinition res = new OperationDefinition(); 9990 parseDomainResourceAttributes(xpp, res); 9991 next(xpp); 9992 int eventType = nextNoWhitespace(xpp); 9993 while (eventType != XmlPullParser.END_TAG) { 9994 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 9995 res.setUrlElement(parseUri(xpp)); 9996 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 9997 res.setVersionElement(parseString(xpp)); 9998 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 9999 res.setNameElement(parseString(xpp)); 10000 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 10001 res.setStatusElement(parseEnumeration(xpp, Enumerations.ConformanceResourceStatus.NULL, new Enumerations.ConformanceResourceStatusEnumFactory())); 10002 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 10003 res.setKindElement(parseEnumeration(xpp, OperationDefinition.OperationKind.NULL, new OperationDefinition.OperationKindEnumFactory())); 10004 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 10005 res.setExperimentalElement(parseBoolean(xpp)); 10006 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 10007 res.setDateElement(parseDateTime(xpp)); 10008 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 10009 res.setPublisherElement(parseString(xpp)); 10010 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 10011 res.getContact().add(parseOperationDefinitionOperationDefinitionContactComponent(xpp, res)); 10012 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 10013 res.setDescriptionElement(parseString(xpp)); 10014 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 10015 res.getUseContext().add(parseCodeableConcept(xpp)); 10016 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirements")) { 10017 res.setRequirementsElement(parseString(xpp)); 10018 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("idempotent")) { 10019 res.setIdempotentElement(parseBoolean(xpp)); 10020 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 10021 res.setCodeElement(parseCode(xpp)); 10022 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 10023 res.setCommentElement(parseString(xpp)); 10024 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("base")) { 10025 res.setBase(parseReference(xpp)); 10026 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 10027 res.setSystemElement(parseBoolean(xpp)); 10028 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 10029 res.getType().add(parseCode(xpp)); 10030 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instance")) { 10031 res.setInstanceElement(parseBoolean(xpp)); 10032 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameter")) { 10033 res.getParameter().add(parseOperationDefinitionOperationDefinitionParameterComponent(xpp, res)); 10034 } else if (!parseDomainResourceContent(eventType, xpp, res)) 10035 unknownContent(xpp); 10036 eventType = nextNoWhitespace(xpp); 10037 } 10038 next(xpp); 10039 parseElementClose(res); 10040 return res; 10041 } 10042 10043 protected OperationDefinition.OperationDefinitionContactComponent parseOperationDefinitionOperationDefinitionContactComponent(XmlPullParser xpp, OperationDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 10044 OperationDefinition.OperationDefinitionContactComponent res = new OperationDefinition.OperationDefinitionContactComponent(); 10045 parseBackboneAttributes(xpp, res); 10046 next(xpp); 10047 int eventType = nextNoWhitespace(xpp); 10048 while (eventType != XmlPullParser.END_TAG) { 10049 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 10050 res.setNameElement(parseString(xpp)); 10051 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 10052 res.getTelecom().add(parseContactPoint(xpp)); 10053 } else if (!parseBackboneContent(eventType, xpp, res)) 10054 unknownContent(xpp); 10055 eventType = nextNoWhitespace(xpp); 10056 } 10057 next(xpp); 10058 parseElementClose(res); 10059 return res; 10060 } 10061 10062 protected OperationDefinition.OperationDefinitionParameterComponent parseOperationDefinitionOperationDefinitionParameterComponent(XmlPullParser xpp, OperationDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 10063 OperationDefinition.OperationDefinitionParameterComponent res = new OperationDefinition.OperationDefinitionParameterComponent(); 10064 parseBackboneAttributes(xpp, res); 10065 next(xpp); 10066 int eventType = nextNoWhitespace(xpp); 10067 while (eventType != XmlPullParser.END_TAG) { 10068 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 10069 res.setNameElement(parseCode(xpp)); 10070 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 10071 res.setUseElement(parseEnumeration(xpp, OperationDefinition.OperationParameterUse.NULL, new OperationDefinition.OperationParameterUseEnumFactory())); 10072 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("min")) { 10073 res.setMinElement(parseInteger(xpp)); 10074 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("max")) { 10075 res.setMaxElement(parseString(xpp)); 10076 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 10077 res.setDocumentationElement(parseString(xpp)); 10078 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 10079 res.setTypeElement(parseCode(xpp)); 10080 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("searchType")) { 10081 res.setSearchTypeElement(parseEnumeration(xpp, Enumerations.SearchParamType.NULL, new Enumerations.SearchParamTypeEnumFactory())); 10082 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 10083 res.setProfile(parseReference(xpp)); 10084 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("binding")) { 10085 res.setBinding(parseOperationDefinitionOperationDefinitionParameterBindingComponent(xpp, owner)); 10086 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("part")) { 10087 res.getPart().add(parseOperationDefinitionOperationDefinitionParameterComponent(xpp, owner)); 10088 } else if (!parseBackboneContent(eventType, xpp, res)) 10089 unknownContent(xpp); 10090 eventType = nextNoWhitespace(xpp); 10091 } 10092 next(xpp); 10093 parseElementClose(res); 10094 return res; 10095 } 10096 10097 protected OperationDefinition.OperationDefinitionParameterBindingComponent parseOperationDefinitionOperationDefinitionParameterBindingComponent(XmlPullParser xpp, OperationDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 10098 OperationDefinition.OperationDefinitionParameterBindingComponent res = new OperationDefinition.OperationDefinitionParameterBindingComponent(); 10099 parseBackboneAttributes(xpp, res); 10100 next(xpp); 10101 int eventType = nextNoWhitespace(xpp); 10102 while (eventType != XmlPullParser.END_TAG) { 10103 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("strength")) { 10104 res.setStrengthElement(parseEnumeration(xpp, Enumerations.BindingStrength.NULL, new Enumerations.BindingStrengthEnumFactory())); 10105 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "valueSet")) { 10106 res.setValueSet(parseType("valueSet", xpp)); 10107 } else if (!parseBackboneContent(eventType, xpp, res)) 10108 unknownContent(xpp); 10109 eventType = nextNoWhitespace(xpp); 10110 } 10111 next(xpp); 10112 parseElementClose(res); 10113 return res; 10114 } 10115 10116 protected OperationOutcome parseOperationOutcome(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10117 OperationOutcome res = new OperationOutcome(); 10118 parseDomainResourceAttributes(xpp, res); 10119 next(xpp); 10120 int eventType = nextNoWhitespace(xpp); 10121 while (eventType != XmlPullParser.END_TAG) { 10122 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issue")) { 10123 res.getIssue().add(parseOperationOutcomeOperationOutcomeIssueComponent(xpp, res)); 10124 } else if (!parseDomainResourceContent(eventType, xpp, res)) 10125 unknownContent(xpp); 10126 eventType = nextNoWhitespace(xpp); 10127 } 10128 next(xpp); 10129 parseElementClose(res); 10130 return res; 10131 } 10132 10133 protected OperationOutcome.OperationOutcomeIssueComponent parseOperationOutcomeOperationOutcomeIssueComponent(XmlPullParser xpp, OperationOutcome owner) throws XmlPullParserException, IOException, FHIRFormatError { 10134 OperationOutcome.OperationOutcomeIssueComponent res = new OperationOutcome.OperationOutcomeIssueComponent(); 10135 parseBackboneAttributes(xpp, res); 10136 next(xpp); 10137 int eventType = nextNoWhitespace(xpp); 10138 while (eventType != XmlPullParser.END_TAG) { 10139 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("severity")) { 10140 res.setSeverityElement(parseEnumeration(xpp, OperationOutcome.IssueSeverity.NULL, new OperationOutcome.IssueSeverityEnumFactory())); 10141 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 10142 res.setCodeElement(parseEnumeration(xpp, OperationOutcome.IssueType.NULL, new OperationOutcome.IssueTypeEnumFactory())); 10143 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("details")) { 10144 res.setDetails(parseCodeableConcept(xpp)); 10145 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnostics")) { 10146 res.setDiagnosticsElement(parseString(xpp)); 10147 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 10148 res.getLocation().add(parseString(xpp)); 10149 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 10150 res.getExpression().add(parseString(xpp)); 10151 } else if (!parseBackboneContent(eventType, xpp, res)) 10152 unknownContent(xpp); 10153 eventType = nextNoWhitespace(xpp); 10154 } 10155 next(xpp); 10156 parseElementClose(res); 10157 return res; 10158 } 10159 10160 protected Order parseOrder(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10161 Order res = new Order(); 10162 parseDomainResourceAttributes(xpp, res); 10163 next(xpp); 10164 int eventType = nextNoWhitespace(xpp); 10165 while (eventType != XmlPullParser.END_TAG) { 10166 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10167 res.getIdentifier().add(parseIdentifier(xpp)); 10168 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 10169 res.setDateElement(parseDateTime(xpp)); 10170 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 10171 res.setSubject(parseReference(xpp)); 10172 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 10173 res.setSource(parseReference(xpp)); 10174 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 10175 res.setTarget(parseReference(xpp)); 10176 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "reason")) { 10177 res.setReason(parseType("reason", xpp)); 10178 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("when")) { 10179 res.setWhen(parseOrderOrderWhenComponent(xpp, res)); 10180 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 10181 res.getDetail().add(parseReference(xpp)); 10182 } else if (!parseDomainResourceContent(eventType, xpp, res)) 10183 unknownContent(xpp); 10184 eventType = nextNoWhitespace(xpp); 10185 } 10186 next(xpp); 10187 parseElementClose(res); 10188 return res; 10189 } 10190 10191 protected Order.OrderWhenComponent parseOrderOrderWhenComponent(XmlPullParser xpp, Order owner) throws XmlPullParserException, IOException, FHIRFormatError { 10192 Order.OrderWhenComponent res = new Order.OrderWhenComponent(); 10193 parseBackboneAttributes(xpp, res); 10194 next(xpp); 10195 int eventType = nextNoWhitespace(xpp); 10196 while (eventType != XmlPullParser.END_TAG) { 10197 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 10198 res.setCode(parseCodeableConcept(xpp)); 10199 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("schedule")) { 10200 res.setSchedule(parseTiming(xpp)); 10201 } else if (!parseBackboneContent(eventType, xpp, res)) 10202 unknownContent(xpp); 10203 eventType = nextNoWhitespace(xpp); 10204 } 10205 next(xpp); 10206 parseElementClose(res); 10207 return res; 10208 } 10209 10210 protected OrderResponse parseOrderResponse(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10211 OrderResponse res = new OrderResponse(); 10212 parseDomainResourceAttributes(xpp, res); 10213 next(xpp); 10214 int eventType = nextNoWhitespace(xpp); 10215 while (eventType != XmlPullParser.END_TAG) { 10216 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10217 res.getIdentifier().add(parseIdentifier(xpp)); 10218 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 10219 res.setRequest(parseReference(xpp)); 10220 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 10221 res.setDateElement(parseDateTime(xpp)); 10222 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("who")) { 10223 res.setWho(parseReference(xpp)); 10224 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orderStatus")) { 10225 res.setOrderStatusElement(parseEnumeration(xpp, OrderResponse.OrderStatus.NULL, new OrderResponse.OrderStatusEnumFactory())); 10226 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 10227 res.setDescriptionElement(parseString(xpp)); 10228 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fulfillment")) { 10229 res.getFulfillment().add(parseReference(xpp)); 10230 } else if (!parseDomainResourceContent(eventType, xpp, res)) 10231 unknownContent(xpp); 10232 eventType = nextNoWhitespace(xpp); 10233 } 10234 next(xpp); 10235 parseElementClose(res); 10236 return res; 10237 } 10238 10239 protected OrderSet parseOrderSet(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10240 OrderSet res = new OrderSet(); 10241 parseDomainResourceAttributes(xpp, res); 10242 next(xpp); 10243 int eventType = nextNoWhitespace(xpp); 10244 while (eventType != XmlPullParser.END_TAG) { 10245 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("moduleMetadata")) { 10246 res.setModuleMetadata(parseModuleMetadata(xpp)); 10247 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("library")) { 10248 res.getLibrary().add(parseReference(xpp)); 10249 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 10250 res.getAction().add(parseActionDefinition(xpp)); 10251 } else if (!parseDomainResourceContent(eventType, xpp, res)) 10252 unknownContent(xpp); 10253 eventType = nextNoWhitespace(xpp); 10254 } 10255 next(xpp); 10256 parseElementClose(res); 10257 return res; 10258 } 10259 10260 protected Organization parseOrganization(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10261 Organization res = new Organization(); 10262 parseDomainResourceAttributes(xpp, res); 10263 next(xpp); 10264 int eventType = nextNoWhitespace(xpp); 10265 while (eventType != XmlPullParser.END_TAG) { 10266 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10267 res.getIdentifier().add(parseIdentifier(xpp)); 10268 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 10269 res.setActiveElement(parseBoolean(xpp)); 10270 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 10271 res.setType(parseCodeableConcept(xpp)); 10272 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 10273 res.setNameElement(parseString(xpp)); 10274 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 10275 res.getTelecom().add(parseContactPoint(xpp)); 10276 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 10277 res.getAddress().add(parseAddress(xpp)); 10278 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 10279 res.setPartOf(parseReference(xpp)); 10280 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 10281 res.getContact().add(parseOrganizationOrganizationContactComponent(xpp, res)); 10282 } else if (!parseDomainResourceContent(eventType, xpp, res)) 10283 unknownContent(xpp); 10284 eventType = nextNoWhitespace(xpp); 10285 } 10286 next(xpp); 10287 parseElementClose(res); 10288 return res; 10289 } 10290 10291 protected Organization.OrganizationContactComponent parseOrganizationOrganizationContactComponent(XmlPullParser xpp, Organization owner) throws XmlPullParserException, IOException, FHIRFormatError { 10292 Organization.OrganizationContactComponent res = new Organization.OrganizationContactComponent(); 10293 parseBackboneAttributes(xpp, res); 10294 next(xpp); 10295 int eventType = nextNoWhitespace(xpp); 10296 while (eventType != XmlPullParser.END_TAG) { 10297 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 10298 res.setPurpose(parseCodeableConcept(xpp)); 10299 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 10300 res.setName(parseHumanName(xpp)); 10301 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 10302 res.getTelecom().add(parseContactPoint(xpp)); 10303 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 10304 res.setAddress(parseAddress(xpp)); 10305 } else if (!parseBackboneContent(eventType, xpp, res)) 10306 unknownContent(xpp); 10307 eventType = nextNoWhitespace(xpp); 10308 } 10309 next(xpp); 10310 parseElementClose(res); 10311 return res; 10312 } 10313 10314 protected Patient parsePatient(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10315 Patient res = new Patient(); 10316 parseDomainResourceAttributes(xpp, res); 10317 next(xpp); 10318 int eventType = nextNoWhitespace(xpp); 10319 while (eventType != XmlPullParser.END_TAG) { 10320 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10321 res.getIdentifier().add(parseIdentifier(xpp)); 10322 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 10323 res.setActiveElement(parseBoolean(xpp)); 10324 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 10325 res.getName().add(parseHumanName(xpp)); 10326 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 10327 res.getTelecom().add(parseContactPoint(xpp)); 10328 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gender")) { 10329 res.setGenderElement(parseEnumeration(xpp, Enumerations.AdministrativeGender.NULL, new Enumerations.AdministrativeGenderEnumFactory())); 10330 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("birthDate")) { 10331 res.setBirthDateElement(parseDate(xpp)); 10332 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "deceased")) { 10333 res.setDeceased(parseType("deceased", xpp)); 10334 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 10335 res.getAddress().add(parseAddress(xpp)); 10336 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maritalStatus")) { 10337 res.setMaritalStatus(parseCodeableConcept(xpp)); 10338 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "multipleBirth")) { 10339 res.setMultipleBirth(parseType("multipleBirth", xpp)); 10340 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("photo")) { 10341 res.getPhoto().add(parseAttachment(xpp)); 10342 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 10343 res.getContact().add(parsePatientContactComponent(xpp, res)); 10344 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("animal")) { 10345 res.setAnimal(parsePatientAnimalComponent(xpp, res)); 10346 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("communication")) { 10347 res.getCommunication().add(parsePatientPatientCommunicationComponent(xpp, res)); 10348 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("careProvider")) { 10349 res.getCareProvider().add(parseReference(xpp)); 10350 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("managingOrganization")) { 10351 res.setManagingOrganization(parseReference(xpp)); 10352 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 10353 res.getLink().add(parsePatientPatientLinkComponent(xpp, res)); 10354 } else if (!parseDomainResourceContent(eventType, xpp, res)) 10355 unknownContent(xpp); 10356 eventType = nextNoWhitespace(xpp); 10357 } 10358 next(xpp); 10359 parseElementClose(res); 10360 return res; 10361 } 10362 10363 protected Patient.ContactComponent parsePatientContactComponent(XmlPullParser xpp, Patient owner) throws XmlPullParserException, IOException, FHIRFormatError { 10364 Patient.ContactComponent res = new Patient.ContactComponent(); 10365 parseBackboneAttributes(xpp, res); 10366 next(xpp); 10367 int eventType = nextNoWhitespace(xpp); 10368 while (eventType != XmlPullParser.END_TAG) { 10369 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 10370 res.getRelationship().add(parseCodeableConcept(xpp)); 10371 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 10372 res.setName(parseHumanName(xpp)); 10373 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 10374 res.getTelecom().add(parseContactPoint(xpp)); 10375 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 10376 res.setAddress(parseAddress(xpp)); 10377 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gender")) { 10378 res.setGenderElement(parseEnumeration(xpp, Enumerations.AdministrativeGender.NULL, new Enumerations.AdministrativeGenderEnumFactory())); 10379 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 10380 res.setOrganization(parseReference(xpp)); 10381 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 10382 res.setPeriod(parsePeriod(xpp)); 10383 } else if (!parseBackboneContent(eventType, xpp, res)) 10384 unknownContent(xpp); 10385 eventType = nextNoWhitespace(xpp); 10386 } 10387 next(xpp); 10388 parseElementClose(res); 10389 return res; 10390 } 10391 10392 protected Patient.AnimalComponent parsePatientAnimalComponent(XmlPullParser xpp, Patient owner) throws XmlPullParserException, IOException, FHIRFormatError { 10393 Patient.AnimalComponent res = new Patient.AnimalComponent(); 10394 parseBackboneAttributes(xpp, res); 10395 next(xpp); 10396 int eventType = nextNoWhitespace(xpp); 10397 while (eventType != XmlPullParser.END_TAG) { 10398 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("species")) { 10399 res.setSpecies(parseCodeableConcept(xpp)); 10400 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("breed")) { 10401 res.setBreed(parseCodeableConcept(xpp)); 10402 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("genderStatus")) { 10403 res.setGenderStatus(parseCodeableConcept(xpp)); 10404 } else if (!parseBackboneContent(eventType, xpp, res)) 10405 unknownContent(xpp); 10406 eventType = nextNoWhitespace(xpp); 10407 } 10408 next(xpp); 10409 parseElementClose(res); 10410 return res; 10411 } 10412 10413 protected Patient.PatientCommunicationComponent parsePatientPatientCommunicationComponent(XmlPullParser xpp, Patient owner) throws XmlPullParserException, IOException, FHIRFormatError { 10414 Patient.PatientCommunicationComponent res = new Patient.PatientCommunicationComponent(); 10415 parseBackboneAttributes(xpp, res); 10416 next(xpp); 10417 int eventType = nextNoWhitespace(xpp); 10418 while (eventType != XmlPullParser.END_TAG) { 10419 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 10420 res.setLanguage(parseCodeableConcept(xpp)); 10421 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preferred")) { 10422 res.setPreferredElement(parseBoolean(xpp)); 10423 } else if (!parseBackboneContent(eventType, xpp, res)) 10424 unknownContent(xpp); 10425 eventType = nextNoWhitespace(xpp); 10426 } 10427 next(xpp); 10428 parseElementClose(res); 10429 return res; 10430 } 10431 10432 protected Patient.PatientLinkComponent parsePatientPatientLinkComponent(XmlPullParser xpp, Patient owner) throws XmlPullParserException, IOException, FHIRFormatError { 10433 Patient.PatientLinkComponent res = new Patient.PatientLinkComponent(); 10434 parseBackboneAttributes(xpp, res); 10435 next(xpp); 10436 int eventType = nextNoWhitespace(xpp); 10437 while (eventType != XmlPullParser.END_TAG) { 10438 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("other")) { 10439 res.setOther(parseReference(xpp)); 10440 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 10441 res.setTypeElement(parseEnumeration(xpp, Patient.LinkType.NULL, new Patient.LinkTypeEnumFactory())); 10442 } else if (!parseBackboneContent(eventType, xpp, res)) 10443 unknownContent(xpp); 10444 eventType = nextNoWhitespace(xpp); 10445 } 10446 next(xpp); 10447 parseElementClose(res); 10448 return res; 10449 } 10450 10451 protected PaymentNotice parsePaymentNotice(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10452 PaymentNotice res = new PaymentNotice(); 10453 parseDomainResourceAttributes(xpp, res); 10454 next(xpp); 10455 int eventType = nextNoWhitespace(xpp); 10456 while (eventType != XmlPullParser.END_TAG) { 10457 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10458 res.getIdentifier().add(parseIdentifier(xpp)); 10459 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleset")) { 10460 res.setRuleset(parseCoding(xpp)); 10461 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("originalRuleset")) { 10462 res.setOriginalRuleset(parseCoding(xpp)); 10463 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 10464 res.setCreatedElement(parseDateTime(xpp)); 10465 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "target")) { 10466 res.setTarget(parseType("target", xpp)); 10467 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "provider")) { 10468 res.setProvider(parseType("provider", xpp)); 10469 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "organization")) { 10470 res.setOrganization(parseType("organization", xpp)); 10471 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "request")) { 10472 res.setRequest(parseType("request", xpp)); 10473 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "response")) { 10474 res.setResponse(parseType("response", xpp)); 10475 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("paymentStatus")) { 10476 res.setPaymentStatus(parseCoding(xpp)); 10477 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusDate")) { 10478 res.setStatusDateElement(parseDate(xpp)); 10479 } else if (!parseDomainResourceContent(eventType, xpp, res)) 10480 unknownContent(xpp); 10481 eventType = nextNoWhitespace(xpp); 10482 } 10483 next(xpp); 10484 parseElementClose(res); 10485 return res; 10486 } 10487 10488 protected PaymentReconciliation parsePaymentReconciliation(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10489 PaymentReconciliation res = new PaymentReconciliation(); 10490 parseDomainResourceAttributes(xpp, res); 10491 next(xpp); 10492 int eventType = nextNoWhitespace(xpp); 10493 while (eventType != XmlPullParser.END_TAG) { 10494 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10495 res.getIdentifier().add(parseIdentifier(xpp)); 10496 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "request")) { 10497 res.setRequest(parseType("request", xpp)); 10498 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 10499 res.setOutcomeElement(parseEnumeration(xpp, Enumerations.RemittanceOutcome.NULL, new Enumerations.RemittanceOutcomeEnumFactory())); 10500 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disposition")) { 10501 res.setDispositionElement(parseString(xpp)); 10502 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleset")) { 10503 res.setRuleset(parseCoding(xpp)); 10504 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("originalRuleset")) { 10505 res.setOriginalRuleset(parseCoding(xpp)); 10506 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 10507 res.setCreatedElement(parseDateTime(xpp)); 10508 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 10509 res.setPeriod(parsePeriod(xpp)); 10510 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "organization")) { 10511 res.setOrganization(parseType("organization", xpp)); 10512 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "requestProvider")) { 10513 res.setRequestProvider(parseType("requestProvider", xpp)); 10514 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "requestOrganization")) { 10515 res.setRequestOrganization(parseType("requestOrganization", xpp)); 10516 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 10517 res.getDetail().add(parsePaymentReconciliationDetailsComponent(xpp, res)); 10518 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("form")) { 10519 res.setForm(parseCoding(xpp)); 10520 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("total")) { 10521 res.setTotal(parseMoney(xpp)); 10522 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 10523 res.getNote().add(parsePaymentReconciliationNotesComponent(xpp, res)); 10524 } else if (!parseDomainResourceContent(eventType, xpp, res)) 10525 unknownContent(xpp); 10526 eventType = nextNoWhitespace(xpp); 10527 } 10528 next(xpp); 10529 parseElementClose(res); 10530 return res; 10531 } 10532 10533 protected PaymentReconciliation.DetailsComponent parsePaymentReconciliationDetailsComponent(XmlPullParser xpp, PaymentReconciliation owner) throws XmlPullParserException, IOException, FHIRFormatError { 10534 PaymentReconciliation.DetailsComponent res = new PaymentReconciliation.DetailsComponent(); 10535 parseBackboneAttributes(xpp, res); 10536 next(xpp); 10537 int eventType = nextNoWhitespace(xpp); 10538 while (eventType != XmlPullParser.END_TAG) { 10539 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 10540 res.setType(parseCoding(xpp)); 10541 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "request")) { 10542 res.setRequest(parseType("request", xpp)); 10543 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "responce")) { 10544 res.setResponce(parseType("responce", xpp)); 10545 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "submitter")) { 10546 res.setSubmitter(parseType("submitter", xpp)); 10547 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "payee")) { 10548 res.setPayee(parseType("payee", xpp)); 10549 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 10550 res.setDateElement(parseDate(xpp)); 10551 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 10552 res.setAmount(parseMoney(xpp)); 10553 } else if (!parseBackboneContent(eventType, xpp, res)) 10554 unknownContent(xpp); 10555 eventType = nextNoWhitespace(xpp); 10556 } 10557 next(xpp); 10558 parseElementClose(res); 10559 return res; 10560 } 10561 10562 protected PaymentReconciliation.NotesComponent parsePaymentReconciliationNotesComponent(XmlPullParser xpp, PaymentReconciliation owner) throws XmlPullParserException, IOException, FHIRFormatError { 10563 PaymentReconciliation.NotesComponent res = new PaymentReconciliation.NotesComponent(); 10564 parseBackboneAttributes(xpp, res); 10565 next(xpp); 10566 int eventType = nextNoWhitespace(xpp); 10567 while (eventType != XmlPullParser.END_TAG) { 10568 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 10569 res.setType(parseCoding(xpp)); 10570 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 10571 res.setTextElement(parseString(xpp)); 10572 } else if (!parseBackboneContent(eventType, xpp, res)) 10573 unknownContent(xpp); 10574 eventType = nextNoWhitespace(xpp); 10575 } 10576 next(xpp); 10577 parseElementClose(res); 10578 return res; 10579 } 10580 10581 protected Person parsePerson(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10582 Person res = new Person(); 10583 parseDomainResourceAttributes(xpp, res); 10584 next(xpp); 10585 int eventType = nextNoWhitespace(xpp); 10586 while (eventType != XmlPullParser.END_TAG) { 10587 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10588 res.getIdentifier().add(parseIdentifier(xpp)); 10589 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 10590 res.getName().add(parseHumanName(xpp)); 10591 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 10592 res.getTelecom().add(parseContactPoint(xpp)); 10593 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gender")) { 10594 res.setGenderElement(parseEnumeration(xpp, Enumerations.AdministrativeGender.NULL, new Enumerations.AdministrativeGenderEnumFactory())); 10595 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("birthDate")) { 10596 res.setBirthDateElement(parseDate(xpp)); 10597 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 10598 res.getAddress().add(parseAddress(xpp)); 10599 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("photo")) { 10600 res.setPhoto(parseAttachment(xpp)); 10601 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("managingOrganization")) { 10602 res.setManagingOrganization(parseReference(xpp)); 10603 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 10604 res.setActiveElement(parseBoolean(xpp)); 10605 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 10606 res.getLink().add(parsePersonPersonLinkComponent(xpp, res)); 10607 } else if (!parseDomainResourceContent(eventType, xpp, res)) 10608 unknownContent(xpp); 10609 eventType = nextNoWhitespace(xpp); 10610 } 10611 next(xpp); 10612 parseElementClose(res); 10613 return res; 10614 } 10615 10616 protected Person.PersonLinkComponent parsePersonPersonLinkComponent(XmlPullParser xpp, Person owner) throws XmlPullParserException, IOException, FHIRFormatError { 10617 Person.PersonLinkComponent res = new Person.PersonLinkComponent(); 10618 parseBackboneAttributes(xpp, res); 10619 next(xpp); 10620 int eventType = nextNoWhitespace(xpp); 10621 while (eventType != XmlPullParser.END_TAG) { 10622 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 10623 res.setTarget(parseReference(xpp)); 10624 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assurance")) { 10625 res.setAssuranceElement(parseEnumeration(xpp, Person.IdentityAssuranceLevel.NULL, new Person.IdentityAssuranceLevelEnumFactory())); 10626 } else if (!parseBackboneContent(eventType, xpp, res)) 10627 unknownContent(xpp); 10628 eventType = nextNoWhitespace(xpp); 10629 } 10630 next(xpp); 10631 parseElementClose(res); 10632 return res; 10633 } 10634 10635 protected Practitioner parsePractitioner(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10636 Practitioner res = new Practitioner(); 10637 parseDomainResourceAttributes(xpp, res); 10638 next(xpp); 10639 int eventType = nextNoWhitespace(xpp); 10640 while (eventType != XmlPullParser.END_TAG) { 10641 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10642 res.getIdentifier().add(parseIdentifier(xpp)); 10643 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 10644 res.setActiveElement(parseBoolean(xpp)); 10645 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 10646 res.getName().add(parseHumanName(xpp)); 10647 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 10648 res.getTelecom().add(parseContactPoint(xpp)); 10649 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 10650 res.getAddress().add(parseAddress(xpp)); 10651 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gender")) { 10652 res.setGenderElement(parseEnumeration(xpp, Enumerations.AdministrativeGender.NULL, new Enumerations.AdministrativeGenderEnumFactory())); 10653 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("birthDate")) { 10654 res.setBirthDateElement(parseDate(xpp)); 10655 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("photo")) { 10656 res.getPhoto().add(parseAttachment(xpp)); 10657 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("practitionerRole")) { 10658 res.getPractitionerRole().add(parsePractitionerPractitionerPractitionerRoleComponent(xpp, res)); 10659 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("qualification")) { 10660 res.getQualification().add(parsePractitionerPractitionerQualificationComponent(xpp, res)); 10661 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("communication")) { 10662 res.getCommunication().add(parseCodeableConcept(xpp)); 10663 } else if (!parseDomainResourceContent(eventType, xpp, res)) 10664 unknownContent(xpp); 10665 eventType = nextNoWhitespace(xpp); 10666 } 10667 next(xpp); 10668 parseElementClose(res); 10669 return res; 10670 } 10671 10672 protected Practitioner.PractitionerPractitionerRoleComponent parsePractitionerPractitionerPractitionerRoleComponent(XmlPullParser xpp, Practitioner owner) throws XmlPullParserException, IOException, FHIRFormatError { 10673 Practitioner.PractitionerPractitionerRoleComponent res = new Practitioner.PractitionerPractitionerRoleComponent(); 10674 parseBackboneAttributes(xpp, res); 10675 next(xpp); 10676 int eventType = nextNoWhitespace(xpp); 10677 while (eventType != XmlPullParser.END_TAG) { 10678 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 10679 res.setOrganization(parseReference(xpp)); 10680 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 10681 res.setRole(parseCodeableConcept(xpp)); 10682 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialty")) { 10683 res.getSpecialty().add(parseCodeableConcept(xpp)); 10684 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10685 res.getIdentifier().add(parseIdentifier(xpp)); 10686 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 10687 res.getTelecom().add(parseContactPoint(xpp)); 10688 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 10689 res.setPeriod(parsePeriod(xpp)); 10690 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 10691 res.getLocation().add(parseReference(xpp)); 10692 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("healthcareService")) { 10693 res.getHealthcareService().add(parseReference(xpp)); 10694 } else if (!parseBackboneContent(eventType, xpp, res)) 10695 unknownContent(xpp); 10696 eventType = nextNoWhitespace(xpp); 10697 } 10698 next(xpp); 10699 parseElementClose(res); 10700 return res; 10701 } 10702 10703 protected Practitioner.PractitionerQualificationComponent parsePractitionerPractitionerQualificationComponent(XmlPullParser xpp, Practitioner owner) throws XmlPullParserException, IOException, FHIRFormatError { 10704 Practitioner.PractitionerQualificationComponent res = new Practitioner.PractitionerQualificationComponent(); 10705 parseBackboneAttributes(xpp, res); 10706 next(xpp); 10707 int eventType = nextNoWhitespace(xpp); 10708 while (eventType != XmlPullParser.END_TAG) { 10709 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10710 res.getIdentifier().add(parseIdentifier(xpp)); 10711 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 10712 res.setCode(parseCodeableConcept(xpp)); 10713 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 10714 res.setPeriod(parsePeriod(xpp)); 10715 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issuer")) { 10716 res.setIssuer(parseReference(xpp)); 10717 } else if (!parseBackboneContent(eventType, xpp, res)) 10718 unknownContent(xpp); 10719 eventType = nextNoWhitespace(xpp); 10720 } 10721 next(xpp); 10722 parseElementClose(res); 10723 return res; 10724 } 10725 10726 protected PractitionerRole parsePractitionerRole(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10727 PractitionerRole res = new PractitionerRole(); 10728 parseDomainResourceAttributes(xpp, res); 10729 next(xpp); 10730 int eventType = nextNoWhitespace(xpp); 10731 while (eventType != XmlPullParser.END_TAG) { 10732 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10733 res.getIdentifier().add(parseIdentifier(xpp)); 10734 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 10735 res.setActiveElement(parseBoolean(xpp)); 10736 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("practitioner")) { 10737 res.setPractitioner(parseReference(xpp)); 10738 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 10739 res.setOrganization(parseReference(xpp)); 10740 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 10741 res.getRole().add(parseCodeableConcept(xpp)); 10742 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialty")) { 10743 res.getSpecialty().add(parseCodeableConcept(xpp)); 10744 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 10745 res.getLocation().add(parseReference(xpp)); 10746 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("healthcareService")) { 10747 res.getHealthcareService().add(parseReference(xpp)); 10748 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 10749 res.getTelecom().add(parseContactPoint(xpp)); 10750 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 10751 res.setPeriod(parsePeriod(xpp)); 10752 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availableTime")) { 10753 res.getAvailableTime().add(parsePractitionerRolePractitionerRoleAvailableTimeComponent(xpp, res)); 10754 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notAvailable")) { 10755 res.getNotAvailable().add(parsePractitionerRolePractitionerRoleNotAvailableComponent(xpp, res)); 10756 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availabilityExceptions")) { 10757 res.setAvailabilityExceptionsElement(parseString(xpp)); 10758 } else if (!parseDomainResourceContent(eventType, xpp, res)) 10759 unknownContent(xpp); 10760 eventType = nextNoWhitespace(xpp); 10761 } 10762 next(xpp); 10763 parseElementClose(res); 10764 return res; 10765 } 10766 10767 protected PractitionerRole.PractitionerRoleAvailableTimeComponent parsePractitionerRolePractitionerRoleAvailableTimeComponent(XmlPullParser xpp, PractitionerRole owner) throws XmlPullParserException, IOException, FHIRFormatError { 10768 PractitionerRole.PractitionerRoleAvailableTimeComponent res = new PractitionerRole.PractitionerRoleAvailableTimeComponent(); 10769 parseBackboneAttributes(xpp, res); 10770 next(xpp); 10771 int eventType = nextNoWhitespace(xpp); 10772 while (eventType != XmlPullParser.END_TAG) { 10773 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("daysOfWeek")) { 10774 res.getDaysOfWeek().add(parseCode(xpp)); 10775 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("allDay")) { 10776 res.setAllDayElement(parseBoolean(xpp)); 10777 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availableStartTime")) { 10778 res.setAvailableStartTimeElement(parseTime(xpp)); 10779 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availableEndTime")) { 10780 res.setAvailableEndTimeElement(parseTime(xpp)); 10781 } else if (!parseBackboneContent(eventType, xpp, res)) 10782 unknownContent(xpp); 10783 eventType = nextNoWhitespace(xpp); 10784 } 10785 next(xpp); 10786 parseElementClose(res); 10787 return res; 10788 } 10789 10790 protected PractitionerRole.PractitionerRoleNotAvailableComponent parsePractitionerRolePractitionerRoleNotAvailableComponent(XmlPullParser xpp, PractitionerRole owner) throws XmlPullParserException, IOException, FHIRFormatError { 10791 PractitionerRole.PractitionerRoleNotAvailableComponent res = new PractitionerRole.PractitionerRoleNotAvailableComponent(); 10792 parseBackboneAttributes(xpp, res); 10793 next(xpp); 10794 int eventType = nextNoWhitespace(xpp); 10795 while (eventType != XmlPullParser.END_TAG) { 10796 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 10797 res.setDescriptionElement(parseString(xpp)); 10798 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("during")) { 10799 res.setDuring(parsePeriod(xpp)); 10800 } else if (!parseBackboneContent(eventType, xpp, res)) 10801 unknownContent(xpp); 10802 eventType = nextNoWhitespace(xpp); 10803 } 10804 next(xpp); 10805 parseElementClose(res); 10806 return res; 10807 } 10808 10809 protected Procedure parseProcedure(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10810 Procedure res = new Procedure(); 10811 parseDomainResourceAttributes(xpp, res); 10812 next(xpp); 10813 int eventType = nextNoWhitespace(xpp); 10814 while (eventType != XmlPullParser.END_TAG) { 10815 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10816 res.getIdentifier().add(parseIdentifier(xpp)); 10817 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 10818 res.setSubject(parseReference(xpp)); 10819 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 10820 res.setStatusElement(parseEnumeration(xpp, Procedure.ProcedureStatus.NULL, new Procedure.ProcedureStatusEnumFactory())); 10821 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 10822 res.setCategory(parseCodeableConcept(xpp)); 10823 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 10824 res.setCode(parseCodeableConcept(xpp)); 10825 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notPerformed")) { 10826 res.setNotPerformedElement(parseBoolean(xpp)); 10827 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonNotPerformed")) { 10828 res.getReasonNotPerformed().add(parseCodeableConcept(xpp)); 10829 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 10830 res.getBodySite().add(parseCodeableConcept(xpp)); 10831 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "reason")) { 10832 res.setReason(parseType("reason", xpp)); 10833 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 10834 res.getPerformer().add(parseProcedureProcedurePerformerComponent(xpp, res)); 10835 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "performed")) { 10836 res.setPerformed(parseType("performed", xpp)); 10837 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 10838 res.setEncounter(parseReference(xpp)); 10839 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 10840 res.setLocation(parseReference(xpp)); 10841 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 10842 res.setOutcome(parseCodeableConcept(xpp)); 10843 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("report")) { 10844 res.getReport().add(parseReference(xpp)); 10845 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("complication")) { 10846 res.getComplication().add(parseCodeableConcept(xpp)); 10847 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("followUp")) { 10848 res.getFollowUp().add(parseCodeableConcept(xpp)); 10849 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 10850 res.setRequest(parseReference(xpp)); 10851 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notes")) { 10852 res.getNotes().add(parseAnnotation(xpp)); 10853 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focalDevice")) { 10854 res.getFocalDevice().add(parseProcedureProcedureFocalDeviceComponent(xpp, res)); 10855 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("used")) { 10856 res.getUsed().add(parseReference(xpp)); 10857 } else if (!parseDomainResourceContent(eventType, xpp, res)) 10858 unknownContent(xpp); 10859 eventType = nextNoWhitespace(xpp); 10860 } 10861 next(xpp); 10862 parseElementClose(res); 10863 return res; 10864 } 10865 10866 protected Procedure.ProcedurePerformerComponent parseProcedureProcedurePerformerComponent(XmlPullParser xpp, Procedure owner) throws XmlPullParserException, IOException, FHIRFormatError { 10867 Procedure.ProcedurePerformerComponent res = new Procedure.ProcedurePerformerComponent(); 10868 parseBackboneAttributes(xpp, res); 10869 next(xpp); 10870 int eventType = nextNoWhitespace(xpp); 10871 while (eventType != XmlPullParser.END_TAG) { 10872 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 10873 res.setActor(parseReference(xpp)); 10874 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 10875 res.setRole(parseCodeableConcept(xpp)); 10876 } else if (!parseBackboneContent(eventType, xpp, res)) 10877 unknownContent(xpp); 10878 eventType = nextNoWhitespace(xpp); 10879 } 10880 next(xpp); 10881 parseElementClose(res); 10882 return res; 10883 } 10884 10885 protected Procedure.ProcedureFocalDeviceComponent parseProcedureProcedureFocalDeviceComponent(XmlPullParser xpp, Procedure owner) throws XmlPullParserException, IOException, FHIRFormatError { 10886 Procedure.ProcedureFocalDeviceComponent res = new Procedure.ProcedureFocalDeviceComponent(); 10887 parseBackboneAttributes(xpp, res); 10888 next(xpp); 10889 int eventType = nextNoWhitespace(xpp); 10890 while (eventType != XmlPullParser.END_TAG) { 10891 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 10892 res.setAction(parseCodeableConcept(xpp)); 10893 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manipulated")) { 10894 res.setManipulated(parseReference(xpp)); 10895 } else if (!parseBackboneContent(eventType, xpp, res)) 10896 unknownContent(xpp); 10897 eventType = nextNoWhitespace(xpp); 10898 } 10899 next(xpp); 10900 parseElementClose(res); 10901 return res; 10902 } 10903 10904 protected ProcedureRequest parseProcedureRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10905 ProcedureRequest res = new ProcedureRequest(); 10906 parseDomainResourceAttributes(xpp, res); 10907 next(xpp); 10908 int eventType = nextNoWhitespace(xpp); 10909 while (eventType != XmlPullParser.END_TAG) { 10910 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10911 res.getIdentifier().add(parseIdentifier(xpp)); 10912 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 10913 res.setSubject(parseReference(xpp)); 10914 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 10915 res.setCode(parseCodeableConcept(xpp)); 10916 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 10917 res.getBodySite().add(parseCodeableConcept(xpp)); 10918 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "reason")) { 10919 res.setReason(parseType("reason", xpp)); 10920 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "scheduled")) { 10921 res.setScheduled(parseType("scheduled", xpp)); 10922 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 10923 res.setEncounter(parseReference(xpp)); 10924 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 10925 res.setPerformer(parseReference(xpp)); 10926 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 10927 res.setStatusElement(parseEnumeration(xpp, ProcedureRequest.ProcedureRequestStatus.NULL, new ProcedureRequest.ProcedureRequestStatusEnumFactory())); 10928 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notes")) { 10929 res.getNotes().add(parseAnnotation(xpp)); 10930 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "asNeeded")) { 10931 res.setAsNeeded(parseType("asNeeded", xpp)); 10932 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orderedOn")) { 10933 res.setOrderedOnElement(parseDateTime(xpp)); 10934 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orderer")) { 10935 res.setOrderer(parseReference(xpp)); 10936 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 10937 res.setPriorityElement(parseEnumeration(xpp, ProcedureRequest.ProcedureRequestPriority.NULL, new ProcedureRequest.ProcedureRequestPriorityEnumFactory())); 10938 } else if (!parseDomainResourceContent(eventType, xpp, res)) 10939 unknownContent(xpp); 10940 eventType = nextNoWhitespace(xpp); 10941 } 10942 next(xpp); 10943 parseElementClose(res); 10944 return res; 10945 } 10946 10947 protected ProcessRequest parseProcessRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10948 ProcessRequest res = new ProcessRequest(); 10949 parseDomainResourceAttributes(xpp, res); 10950 next(xpp); 10951 int eventType = nextNoWhitespace(xpp); 10952 while (eventType != XmlPullParser.END_TAG) { 10953 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 10954 res.setActionElement(parseEnumeration(xpp, ProcessRequest.ActionList.NULL, new ProcessRequest.ActionListEnumFactory())); 10955 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10956 res.getIdentifier().add(parseIdentifier(xpp)); 10957 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleset")) { 10958 res.setRuleset(parseCoding(xpp)); 10959 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("originalRuleset")) { 10960 res.setOriginalRuleset(parseCoding(xpp)); 10961 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 10962 res.setCreatedElement(parseDateTime(xpp)); 10963 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "target")) { 10964 res.setTarget(parseType("target", xpp)); 10965 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "provider")) { 10966 res.setProvider(parseType("provider", xpp)); 10967 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "organization")) { 10968 res.setOrganization(parseType("organization", xpp)); 10969 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "request")) { 10970 res.setRequest(parseType("request", xpp)); 10971 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "response")) { 10972 res.setResponse(parseType("response", xpp)); 10973 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("nullify")) { 10974 res.setNullifyElement(parseBoolean(xpp)); 10975 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 10976 res.setReferenceElement(parseString(xpp)); 10977 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 10978 res.getItem().add(parseProcessRequestItemsComponent(xpp, res)); 10979 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("include")) { 10980 res.getInclude().add(parseString(xpp)); 10981 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exclude")) { 10982 res.getExclude().add(parseString(xpp)); 10983 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 10984 res.setPeriod(parsePeriod(xpp)); 10985 } else if (!parseDomainResourceContent(eventType, xpp, res)) 10986 unknownContent(xpp); 10987 eventType = nextNoWhitespace(xpp); 10988 } 10989 next(xpp); 10990 parseElementClose(res); 10991 return res; 10992 } 10993 10994 protected ProcessRequest.ItemsComponent parseProcessRequestItemsComponent(XmlPullParser xpp, ProcessRequest owner) throws XmlPullParserException, IOException, FHIRFormatError { 10995 ProcessRequest.ItemsComponent res = new ProcessRequest.ItemsComponent(); 10996 parseBackboneAttributes(xpp, res); 10997 next(xpp); 10998 int eventType = nextNoWhitespace(xpp); 10999 while (eventType != XmlPullParser.END_TAG) { 11000 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequenceLinkId")) { 11001 res.setSequenceLinkIdElement(parseInteger(xpp)); 11002 } else if (!parseBackboneContent(eventType, xpp, res)) 11003 unknownContent(xpp); 11004 eventType = nextNoWhitespace(xpp); 11005 } 11006 next(xpp); 11007 parseElementClose(res); 11008 return res; 11009 } 11010 11011 protected ProcessResponse parseProcessResponse(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11012 ProcessResponse res = new ProcessResponse(); 11013 parseDomainResourceAttributes(xpp, res); 11014 next(xpp); 11015 int eventType = nextNoWhitespace(xpp); 11016 while (eventType != XmlPullParser.END_TAG) { 11017 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 11018 res.getIdentifier().add(parseIdentifier(xpp)); 11019 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "request")) { 11020 res.setRequest(parseType("request", xpp)); 11021 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 11022 res.setOutcome(parseCoding(xpp)); 11023 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disposition")) { 11024 res.setDispositionElement(parseString(xpp)); 11025 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleset")) { 11026 res.setRuleset(parseCoding(xpp)); 11027 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("originalRuleset")) { 11028 res.setOriginalRuleset(parseCoding(xpp)); 11029 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 11030 res.setCreatedElement(parseDateTime(xpp)); 11031 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "organization")) { 11032 res.setOrganization(parseType("organization", xpp)); 11033 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "requestProvider")) { 11034 res.setRequestProvider(parseType("requestProvider", xpp)); 11035 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "requestOrganization")) { 11036 res.setRequestOrganization(parseType("requestOrganization", xpp)); 11037 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("form")) { 11038 res.setForm(parseCoding(xpp)); 11039 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notes")) { 11040 res.getNotes().add(parseProcessResponseProcessResponseNotesComponent(xpp, res)); 11041 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("error")) { 11042 res.getError().add(parseCoding(xpp)); 11043 } else if (!parseDomainResourceContent(eventType, xpp, res)) 11044 unknownContent(xpp); 11045 eventType = nextNoWhitespace(xpp); 11046 } 11047 next(xpp); 11048 parseElementClose(res); 11049 return res; 11050 } 11051 11052 protected ProcessResponse.ProcessResponseNotesComponent parseProcessResponseProcessResponseNotesComponent(XmlPullParser xpp, ProcessResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 11053 ProcessResponse.ProcessResponseNotesComponent res = new ProcessResponse.ProcessResponseNotesComponent(); 11054 parseBackboneAttributes(xpp, res); 11055 next(xpp); 11056 int eventType = nextNoWhitespace(xpp); 11057 while (eventType != XmlPullParser.END_TAG) { 11058 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 11059 res.setType(parseCoding(xpp)); 11060 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 11061 res.setTextElement(parseString(xpp)); 11062 } else if (!parseBackboneContent(eventType, xpp, res)) 11063 unknownContent(xpp); 11064 eventType = nextNoWhitespace(xpp); 11065 } 11066 next(xpp); 11067 parseElementClose(res); 11068 return res; 11069 } 11070 11071 protected Protocol parseProtocol(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11072 Protocol res = new Protocol(); 11073 parseDomainResourceAttributes(xpp, res); 11074 next(xpp); 11075 int eventType = nextNoWhitespace(xpp); 11076 while (eventType != XmlPullParser.END_TAG) { 11077 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 11078 res.getIdentifier().add(parseIdentifier(xpp)); 11079 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 11080 res.setTitleElement(parseString(xpp)); 11081 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 11082 res.setStatusElement(parseEnumeration(xpp, Protocol.ProtocolStatus.NULL, new Protocol.ProtocolStatusEnumFactory())); 11083 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 11084 res.setTypeElement(parseEnumeration(xpp, Protocol.ProtocolType.NULL, new Protocol.ProtocolTypeEnumFactory())); 11085 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 11086 res.setSubject(parseReference(xpp)); 11087 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("group")) { 11088 res.setGroup(parseReference(xpp)); 11089 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 11090 res.setPurposeElement(parseString(xpp)); 11091 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 11092 res.setAuthor(parseReference(xpp)); 11093 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("step")) { 11094 res.getStep().add(parseProtocolProtocolStepComponent(xpp, res)); 11095 } else if (!parseDomainResourceContent(eventType, xpp, res)) 11096 unknownContent(xpp); 11097 eventType = nextNoWhitespace(xpp); 11098 } 11099 next(xpp); 11100 parseElementClose(res); 11101 return res; 11102 } 11103 11104 protected Protocol.ProtocolStepComponent parseProtocolProtocolStepComponent(XmlPullParser xpp, Protocol owner) throws XmlPullParserException, IOException, FHIRFormatError { 11105 Protocol.ProtocolStepComponent res = new Protocol.ProtocolStepComponent(); 11106 parseBackboneAttributes(xpp, res); 11107 next(xpp); 11108 int eventType = nextNoWhitespace(xpp); 11109 while (eventType != XmlPullParser.END_TAG) { 11110 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 11111 res.setNameElement(parseString(xpp)); 11112 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 11113 res.setDescriptionElement(parseString(xpp)); 11114 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("duration")) { 11115 res.setDuration(parseDuration(xpp)); 11116 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("precondition")) { 11117 res.setPrecondition(parseProtocolProtocolStepPreconditionComponent(xpp, owner)); 11118 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exit")) { 11119 res.setExit(parseProtocolProtocolStepPreconditionComponent(xpp, owner)); 11120 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("firstActivity")) { 11121 res.setFirstActivityElement(parseUri(xpp)); 11122 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("activity")) { 11123 res.getActivity().add(parseProtocolProtocolStepActivityComponent(xpp, owner)); 11124 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("next")) { 11125 res.getNext().add(parseProtocolProtocolStepNextComponent(xpp, owner)); 11126 } else if (!parseBackboneContent(eventType, xpp, res)) 11127 unknownContent(xpp); 11128 eventType = nextNoWhitespace(xpp); 11129 } 11130 next(xpp); 11131 parseElementClose(res); 11132 return res; 11133 } 11134 11135 protected Protocol.ProtocolStepPreconditionComponent parseProtocolProtocolStepPreconditionComponent(XmlPullParser xpp, Protocol owner) throws XmlPullParserException, IOException, FHIRFormatError { 11136 Protocol.ProtocolStepPreconditionComponent res = new Protocol.ProtocolStepPreconditionComponent(); 11137 parseBackboneAttributes(xpp, res); 11138 next(xpp); 11139 int eventType = nextNoWhitespace(xpp); 11140 while (eventType != XmlPullParser.END_TAG) { 11141 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 11142 res.setDescriptionElement(parseString(xpp)); 11143 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 11144 res.setCondition(parseProtocolProtocolStepPreconditionConditionComponent(xpp, owner)); 11145 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intersection")) { 11146 res.getIntersection().add(parseProtocolProtocolStepPreconditionComponent(xpp, owner)); 11147 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("union")) { 11148 res.getUnion().add(parseProtocolProtocolStepPreconditionComponent(xpp, owner)); 11149 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exclude")) { 11150 res.getExclude().add(parseProtocolProtocolStepPreconditionComponent(xpp, owner)); 11151 } else if (!parseBackboneContent(eventType, xpp, res)) 11152 unknownContent(xpp); 11153 eventType = nextNoWhitespace(xpp); 11154 } 11155 next(xpp); 11156 parseElementClose(res); 11157 return res; 11158 } 11159 11160 protected Protocol.ProtocolStepPreconditionConditionComponent parseProtocolProtocolStepPreconditionConditionComponent(XmlPullParser xpp, Protocol owner) throws XmlPullParserException, IOException, FHIRFormatError { 11161 Protocol.ProtocolStepPreconditionConditionComponent res = new Protocol.ProtocolStepPreconditionConditionComponent(); 11162 parseBackboneAttributes(xpp, res); 11163 next(xpp); 11164 int eventType = nextNoWhitespace(xpp); 11165 while (eventType != XmlPullParser.END_TAG) { 11166 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 11167 res.setType(parseCodeableConcept(xpp)); 11168 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 11169 res.setValue(parseType("value", xpp)); 11170 } else if (!parseBackboneContent(eventType, xpp, res)) 11171 unknownContent(xpp); 11172 eventType = nextNoWhitespace(xpp); 11173 } 11174 next(xpp); 11175 parseElementClose(res); 11176 return res; 11177 } 11178 11179 protected Protocol.ProtocolStepActivityComponent parseProtocolProtocolStepActivityComponent(XmlPullParser xpp, Protocol owner) throws XmlPullParserException, IOException, FHIRFormatError { 11180 Protocol.ProtocolStepActivityComponent res = new Protocol.ProtocolStepActivityComponent(); 11181 parseBackboneAttributes(xpp, res); 11182 next(xpp); 11183 int eventType = nextNoWhitespace(xpp); 11184 while (eventType != XmlPullParser.END_TAG) { 11185 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("alternative")) { 11186 res.getAlternative().add(parseUri(xpp)); 11187 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("component")) { 11188 res.getComponent().add(parseProtocolProtocolStepActivityComponentComponent(xpp, owner)); 11189 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("following")) { 11190 res.getFollowing().add(parseUri(xpp)); 11191 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("wait")) { 11192 res.setWait(parseDuration(xpp)); 11193 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 11194 res.setDetail(parseProtocolProtocolStepActivityDetailComponent(xpp, owner)); 11195 } else if (!parseBackboneContent(eventType, xpp, res)) 11196 unknownContent(xpp); 11197 eventType = nextNoWhitespace(xpp); 11198 } 11199 next(xpp); 11200 parseElementClose(res); 11201 return res; 11202 } 11203 11204 protected Protocol.ProtocolStepActivityComponentComponent parseProtocolProtocolStepActivityComponentComponent(XmlPullParser xpp, Protocol owner) throws XmlPullParserException, IOException, FHIRFormatError { 11205 Protocol.ProtocolStepActivityComponentComponent res = new Protocol.ProtocolStepActivityComponentComponent(); 11206 parseBackboneAttributes(xpp, res); 11207 next(xpp); 11208 int eventType = nextNoWhitespace(xpp); 11209 while (eventType != XmlPullParser.END_TAG) { 11210 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 11211 res.setSequenceElement(parseInteger(xpp)); 11212 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("activity")) { 11213 res.setActivityElement(parseUri(xpp)); 11214 } else if (!parseBackboneContent(eventType, xpp, res)) 11215 unknownContent(xpp); 11216 eventType = nextNoWhitespace(xpp); 11217 } 11218 next(xpp); 11219 parseElementClose(res); 11220 return res; 11221 } 11222 11223 protected Protocol.ProtocolStepActivityDetailComponent parseProtocolProtocolStepActivityDetailComponent(XmlPullParser xpp, Protocol owner) throws XmlPullParserException, IOException, FHIRFormatError { 11224 Protocol.ProtocolStepActivityDetailComponent res = new Protocol.ProtocolStepActivityDetailComponent(); 11225 parseBackboneAttributes(xpp, res); 11226 next(xpp); 11227 int eventType = nextNoWhitespace(xpp); 11228 while (eventType != XmlPullParser.END_TAG) { 11229 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 11230 res.setCategoryElement(parseEnumeration(xpp, Protocol.ActivityDefinitionCategory.NULL, new Protocol.ActivityDefinitionCategoryEnumFactory())); 11231 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 11232 res.setCode(parseCodeableConcept(xpp)); 11233 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "timing")) { 11234 res.setTiming(parseType("timing", xpp)); 11235 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 11236 res.setLocation(parseReference(xpp)); 11237 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 11238 res.getPerformer().add(parseReference(xpp)); 11239 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("product")) { 11240 res.setProduct(parseReference(xpp)); 11241 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 11242 res.setQuantity(parseSimpleQuantity(xpp)); 11243 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 11244 res.setDescriptionElement(parseString(xpp)); 11245 } else if (!parseBackboneContent(eventType, xpp, res)) 11246 unknownContent(xpp); 11247 eventType = nextNoWhitespace(xpp); 11248 } 11249 next(xpp); 11250 parseElementClose(res); 11251 return res; 11252 } 11253 11254 protected Protocol.ProtocolStepNextComponent parseProtocolProtocolStepNextComponent(XmlPullParser xpp, Protocol owner) throws XmlPullParserException, IOException, FHIRFormatError { 11255 Protocol.ProtocolStepNextComponent res = new Protocol.ProtocolStepNextComponent(); 11256 parseBackboneAttributes(xpp, res); 11257 next(xpp); 11258 int eventType = nextNoWhitespace(xpp); 11259 while (eventType != XmlPullParser.END_TAG) { 11260 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 11261 res.setDescriptionElement(parseString(xpp)); 11262 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 11263 res.setReferenceElement(parseUri(xpp)); 11264 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 11265 res.setCondition(parseProtocolProtocolStepPreconditionComponent(xpp, owner)); 11266 } else if (!parseBackboneContent(eventType, xpp, res)) 11267 unknownContent(xpp); 11268 eventType = nextNoWhitespace(xpp); 11269 } 11270 next(xpp); 11271 parseElementClose(res); 11272 return res; 11273 } 11274 11275 protected Provenance parseProvenance(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11276 Provenance res = new Provenance(); 11277 parseDomainResourceAttributes(xpp, res); 11278 next(xpp); 11279 int eventType = nextNoWhitespace(xpp); 11280 while (eventType != XmlPullParser.END_TAG) { 11281 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 11282 res.getTarget().add(parseReference(xpp)); 11283 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 11284 res.setPeriod(parsePeriod(xpp)); 11285 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recorded")) { 11286 res.setRecordedElement(parseInstant(xpp)); 11287 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 11288 res.getReason().add(parseCoding(xpp)); 11289 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("activity")) { 11290 res.setActivity(parseCoding(xpp)); 11291 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 11292 res.setLocation(parseReference(xpp)); 11293 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("policy")) { 11294 res.getPolicy().add(parseUri(xpp)); 11295 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { 11296 res.getAgent().add(parseProvenanceProvenanceAgentComponent(xpp, res)); 11297 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entity")) { 11298 res.getEntity().add(parseProvenanceProvenanceEntityComponent(xpp, res)); 11299 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("signature")) { 11300 res.getSignature().add(parseSignature(xpp)); 11301 } else if (!parseDomainResourceContent(eventType, xpp, res)) 11302 unknownContent(xpp); 11303 eventType = nextNoWhitespace(xpp); 11304 } 11305 next(xpp); 11306 parseElementClose(res); 11307 return res; 11308 } 11309 11310 protected Provenance.ProvenanceAgentComponent parseProvenanceProvenanceAgentComponent(XmlPullParser xpp, Provenance owner) throws XmlPullParserException, IOException, FHIRFormatError { 11311 Provenance.ProvenanceAgentComponent res = new Provenance.ProvenanceAgentComponent(); 11312 parseBackboneAttributes(xpp, res); 11313 next(xpp); 11314 int eventType = nextNoWhitespace(xpp); 11315 while (eventType != XmlPullParser.END_TAG) { 11316 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 11317 res.setRole(parseCoding(xpp)); 11318 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 11319 res.setActor(parseReference(xpp)); 11320 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("userId")) { 11321 res.setUserId(parseIdentifier(xpp)); 11322 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedAgent")) { 11323 res.getRelatedAgent().add(parseProvenanceProvenanceAgentRelatedAgentComponent(xpp, owner)); 11324 } else if (!parseBackboneContent(eventType, xpp, res)) 11325 unknownContent(xpp); 11326 eventType = nextNoWhitespace(xpp); 11327 } 11328 next(xpp); 11329 parseElementClose(res); 11330 return res; 11331 } 11332 11333 protected Provenance.ProvenanceAgentRelatedAgentComponent parseProvenanceProvenanceAgentRelatedAgentComponent(XmlPullParser xpp, Provenance owner) throws XmlPullParserException, IOException, FHIRFormatError { 11334 Provenance.ProvenanceAgentRelatedAgentComponent res = new Provenance.ProvenanceAgentRelatedAgentComponent(); 11335 parseBackboneAttributes(xpp, res); 11336 next(xpp); 11337 int eventType = nextNoWhitespace(xpp); 11338 while (eventType != XmlPullParser.END_TAG) { 11339 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 11340 res.setType(parseCodeableConcept(xpp)); 11341 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 11342 res.setTargetElement(parseUri(xpp)); 11343 } else if (!parseBackboneContent(eventType, xpp, res)) 11344 unknownContent(xpp); 11345 eventType = nextNoWhitespace(xpp); 11346 } 11347 next(xpp); 11348 parseElementClose(res); 11349 return res; 11350 } 11351 11352 protected Provenance.ProvenanceEntityComponent parseProvenanceProvenanceEntityComponent(XmlPullParser xpp, Provenance owner) throws XmlPullParserException, IOException, FHIRFormatError { 11353 Provenance.ProvenanceEntityComponent res = new Provenance.ProvenanceEntityComponent(); 11354 parseBackboneAttributes(xpp, res); 11355 next(xpp); 11356 int eventType = nextNoWhitespace(xpp); 11357 while (eventType != XmlPullParser.END_TAG) { 11358 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 11359 res.setRoleElement(parseEnumeration(xpp, Provenance.ProvenanceEntityRole.NULL, new Provenance.ProvenanceEntityRoleEnumFactory())); 11360 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 11361 res.setType(parseCoding(xpp)); 11362 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 11363 res.setReferenceElement(parseUri(xpp)); 11364 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 11365 res.setDisplayElement(parseString(xpp)); 11366 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { 11367 res.setAgent(parseProvenanceProvenanceAgentComponent(xpp, owner)); 11368 } else if (!parseBackboneContent(eventType, xpp, res)) 11369 unknownContent(xpp); 11370 eventType = nextNoWhitespace(xpp); 11371 } 11372 next(xpp); 11373 parseElementClose(res); 11374 return res; 11375 } 11376 11377 protected Questionnaire parseQuestionnaire(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11378 Questionnaire res = new Questionnaire(); 11379 parseDomainResourceAttributes(xpp, res); 11380 next(xpp); 11381 int eventType = nextNoWhitespace(xpp); 11382 while (eventType != XmlPullParser.END_TAG) { 11383 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 11384 res.setUrlElement(parseUri(xpp)); 11385 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 11386 res.getIdentifier().add(parseIdentifier(xpp)); 11387 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 11388 res.setVersionElement(parseString(xpp)); 11389 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 11390 res.setStatusElement(parseEnumeration(xpp, Questionnaire.QuestionnaireStatus.NULL, new Questionnaire.QuestionnaireStatusEnumFactory())); 11391 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 11392 res.setDateElement(parseDateTime(xpp)); 11393 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 11394 res.setPublisherElement(parseString(xpp)); 11395 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 11396 res.getTelecom().add(parseContactPoint(xpp)); 11397 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 11398 res.getUseContext().add(parseCodeableConcept(xpp)); 11399 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 11400 res.setTitleElement(parseString(xpp)); 11401 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("concept")) { 11402 res.getConcept().add(parseCoding(xpp)); 11403 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subjectType")) { 11404 res.getSubjectType().add(parseCode(xpp)); 11405 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 11406 res.getItem().add(parseQuestionnaireQuestionnaireItemComponent(xpp, res)); 11407 } else if (!parseDomainResourceContent(eventType, xpp, res)) 11408 unknownContent(xpp); 11409 eventType = nextNoWhitespace(xpp); 11410 } 11411 next(xpp); 11412 parseElementClose(res); 11413 return res; 11414 } 11415 11416 protected Questionnaire.QuestionnaireItemComponent parseQuestionnaireQuestionnaireItemComponent(XmlPullParser xpp, Questionnaire owner) throws XmlPullParserException, IOException, FHIRFormatError { 11417 Questionnaire.QuestionnaireItemComponent res = new Questionnaire.QuestionnaireItemComponent(); 11418 parseBackboneAttributes(xpp, res); 11419 next(xpp); 11420 int eventType = nextNoWhitespace(xpp); 11421 while (eventType != XmlPullParser.END_TAG) { 11422 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("linkId")) { 11423 res.setLinkIdElement(parseString(xpp)); 11424 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("concept")) { 11425 res.getConcept().add(parseCoding(xpp)); 11426 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prefix")) { 11427 res.setPrefixElement(parseString(xpp)); 11428 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 11429 res.setTextElement(parseString(xpp)); 11430 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 11431 res.setTypeElement(parseEnumeration(xpp, Questionnaire.QuestionnaireItemType.NULL, new Questionnaire.QuestionnaireItemTypeEnumFactory())); 11432 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("enableWhen")) { 11433 res.getEnableWhen().add(parseQuestionnaireQuestionnaireItemEnableWhenComponent(xpp, owner)); 11434 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("required")) { 11435 res.setRequiredElement(parseBoolean(xpp)); 11436 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("repeats")) { 11437 res.setRepeatsElement(parseBoolean(xpp)); 11438 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("readOnly")) { 11439 res.setReadOnlyElement(parseBoolean(xpp)); 11440 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxLength")) { 11441 res.setMaxLengthElement(parseInteger(xpp)); 11442 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("options")) { 11443 res.setOptions(parseReference(xpp)); 11444 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("option")) { 11445 res.getOption().add(parseQuestionnaireQuestionnaireItemOptionComponent(xpp, owner)); 11446 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "initial")) { 11447 res.setInitial(parseType("initial", xpp)); 11448 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 11449 res.getItem().add(parseQuestionnaireQuestionnaireItemComponent(xpp, owner)); 11450 } else if (!parseBackboneContent(eventType, xpp, res)) 11451 unknownContent(xpp); 11452 eventType = nextNoWhitespace(xpp); 11453 } 11454 next(xpp); 11455 parseElementClose(res); 11456 return res; 11457 } 11458 11459 protected Questionnaire.QuestionnaireItemEnableWhenComponent parseQuestionnaireQuestionnaireItemEnableWhenComponent(XmlPullParser xpp, Questionnaire owner) throws XmlPullParserException, IOException, FHIRFormatError { 11460 Questionnaire.QuestionnaireItemEnableWhenComponent res = new Questionnaire.QuestionnaireItemEnableWhenComponent(); 11461 parseBackboneAttributes(xpp, res); 11462 next(xpp); 11463 int eventType = nextNoWhitespace(xpp); 11464 while (eventType != XmlPullParser.END_TAG) { 11465 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("question")) { 11466 res.setQuestionElement(parseString(xpp)); 11467 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("answered")) { 11468 res.setAnsweredElement(parseBoolean(xpp)); 11469 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "answer")) { 11470 res.setAnswer(parseType("answer", xpp)); 11471 } else if (!parseBackboneContent(eventType, xpp, res)) 11472 unknownContent(xpp); 11473 eventType = nextNoWhitespace(xpp); 11474 } 11475 next(xpp); 11476 parseElementClose(res); 11477 return res; 11478 } 11479 11480 protected Questionnaire.QuestionnaireItemOptionComponent parseQuestionnaireQuestionnaireItemOptionComponent(XmlPullParser xpp, Questionnaire owner) throws XmlPullParserException, IOException, FHIRFormatError { 11481 Questionnaire.QuestionnaireItemOptionComponent res = new Questionnaire.QuestionnaireItemOptionComponent(); 11482 parseBackboneAttributes(xpp, res); 11483 next(xpp); 11484 int eventType = nextNoWhitespace(xpp); 11485 while (eventType != XmlPullParser.END_TAG) { 11486 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 11487 res.setValue(parseType("value", xpp)); 11488 } else if (!parseBackboneContent(eventType, xpp, res)) 11489 unknownContent(xpp); 11490 eventType = nextNoWhitespace(xpp); 11491 } 11492 next(xpp); 11493 parseElementClose(res); 11494 return res; 11495 } 11496 11497 protected QuestionnaireResponse parseQuestionnaireResponse(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11498 QuestionnaireResponse res = new QuestionnaireResponse(); 11499 parseDomainResourceAttributes(xpp, res); 11500 next(xpp); 11501 int eventType = nextNoWhitespace(xpp); 11502 while (eventType != XmlPullParser.END_TAG) { 11503 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 11504 res.setIdentifier(parseIdentifier(xpp)); 11505 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("questionnaire")) { 11506 res.setQuestionnaire(parseReference(xpp)); 11507 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 11508 res.setStatusElement(parseEnumeration(xpp, QuestionnaireResponse.QuestionnaireResponseStatus.NULL, new QuestionnaireResponse.QuestionnaireResponseStatusEnumFactory())); 11509 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 11510 res.setSubject(parseReference(xpp)); 11511 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 11512 res.setAuthor(parseReference(xpp)); 11513 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authored")) { 11514 res.setAuthoredElement(parseDateTime(xpp)); 11515 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 11516 res.setSource(parseReference(xpp)); 11517 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 11518 res.setEncounter(parseReference(xpp)); 11519 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 11520 res.getItem().add(parseQuestionnaireResponseQuestionnaireResponseItemComponent(xpp, res)); 11521 } else if (!parseDomainResourceContent(eventType, xpp, res)) 11522 unknownContent(xpp); 11523 eventType = nextNoWhitespace(xpp); 11524 } 11525 next(xpp); 11526 parseElementClose(res); 11527 return res; 11528 } 11529 11530 protected QuestionnaireResponse.QuestionnaireResponseItemComponent parseQuestionnaireResponseQuestionnaireResponseItemComponent(XmlPullParser xpp, QuestionnaireResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 11531 QuestionnaireResponse.QuestionnaireResponseItemComponent res = new QuestionnaireResponse.QuestionnaireResponseItemComponent(); 11532 parseBackboneAttributes(xpp, res); 11533 next(xpp); 11534 int eventType = nextNoWhitespace(xpp); 11535 while (eventType != XmlPullParser.END_TAG) { 11536 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("linkId")) { 11537 res.setLinkIdElement(parseString(xpp)); 11538 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 11539 res.setTextElement(parseString(xpp)); 11540 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 11541 res.setSubject(parseReference(xpp)); 11542 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("answer")) { 11543 res.getAnswer().add(parseQuestionnaireResponseQuestionnaireResponseItemAnswerComponent(xpp, owner)); 11544 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 11545 res.getItem().add(parseQuestionnaireResponseQuestionnaireResponseItemComponent(xpp, owner)); 11546 } else if (!parseBackboneContent(eventType, xpp, res)) 11547 unknownContent(xpp); 11548 eventType = nextNoWhitespace(xpp); 11549 } 11550 next(xpp); 11551 parseElementClose(res); 11552 return res; 11553 } 11554 11555 protected QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent parseQuestionnaireResponseQuestionnaireResponseItemAnswerComponent(XmlPullParser xpp, QuestionnaireResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 11556 QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent res = new QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent(); 11557 parseBackboneAttributes(xpp, res); 11558 next(xpp); 11559 int eventType = nextNoWhitespace(xpp); 11560 while (eventType != XmlPullParser.END_TAG) { 11561 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 11562 res.setValue(parseType("value", xpp)); 11563 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 11564 res.getItem().add(parseQuestionnaireResponseQuestionnaireResponseItemComponent(xpp, owner)); 11565 } else if (!parseBackboneContent(eventType, xpp, res)) 11566 unknownContent(xpp); 11567 eventType = nextNoWhitespace(xpp); 11568 } 11569 next(xpp); 11570 parseElementClose(res); 11571 return res; 11572 } 11573 11574 protected ReferralRequest parseReferralRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11575 ReferralRequest res = new ReferralRequest(); 11576 parseDomainResourceAttributes(xpp, res); 11577 next(xpp); 11578 int eventType = nextNoWhitespace(xpp); 11579 while (eventType != XmlPullParser.END_TAG) { 11580 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 11581 res.getIdentifier().add(parseIdentifier(xpp)); 11582 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 11583 res.getBasedOn().add(parseReference(xpp)); 11584 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parent")) { 11585 res.setParent(parseIdentifier(xpp)); 11586 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 11587 res.setStatusElement(parseEnumeration(xpp, ReferralRequest.ReferralStatus.NULL, new ReferralRequest.ReferralStatusEnumFactory())); 11588 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 11589 res.setCategoryElement(parseEnumeration(xpp, ReferralRequest.ReferralCategory.NULL, new ReferralRequest.ReferralCategoryEnumFactory())); 11590 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 11591 res.setType(parseCodeableConcept(xpp)); 11592 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 11593 res.setPriority(parseCodeableConcept(xpp)); 11594 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 11595 res.setPatient(parseReference(xpp)); 11596 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 11597 res.setContext(parseReference(xpp)); 11598 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fulfillmentTime")) { 11599 res.setFulfillmentTime(parsePeriod(xpp)); 11600 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authored")) { 11601 res.setAuthoredElement(parseDateTime(xpp)); 11602 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requester")) { 11603 res.setRequester(parseReference(xpp)); 11604 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialty")) { 11605 res.setSpecialty(parseCodeableConcept(xpp)); 11606 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recipient")) { 11607 res.getRecipient().add(parseReference(xpp)); 11608 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 11609 res.setReason(parseCodeableConcept(xpp)); 11610 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 11611 res.setDescriptionElement(parseString(xpp)); 11612 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceRequested")) { 11613 res.getServiceRequested().add(parseCodeableConcept(xpp)); 11614 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInformation")) { 11615 res.getSupportingInformation().add(parseReference(xpp)); 11616 } else if (!parseDomainResourceContent(eventType, xpp, res)) 11617 unknownContent(xpp); 11618 eventType = nextNoWhitespace(xpp); 11619 } 11620 next(xpp); 11621 parseElementClose(res); 11622 return res; 11623 } 11624 11625 protected RelatedPerson parseRelatedPerson(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11626 RelatedPerson res = new RelatedPerson(); 11627 parseDomainResourceAttributes(xpp, res); 11628 next(xpp); 11629 int eventType = nextNoWhitespace(xpp); 11630 while (eventType != XmlPullParser.END_TAG) { 11631 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 11632 res.getIdentifier().add(parseIdentifier(xpp)); 11633 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 11634 res.setPatient(parseReference(xpp)); 11635 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 11636 res.setRelationship(parseCodeableConcept(xpp)); 11637 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 11638 res.setName(parseHumanName(xpp)); 11639 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 11640 res.getTelecom().add(parseContactPoint(xpp)); 11641 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gender")) { 11642 res.setGenderElement(parseEnumeration(xpp, Enumerations.AdministrativeGender.NULL, new Enumerations.AdministrativeGenderEnumFactory())); 11643 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("birthDate")) { 11644 res.setBirthDateElement(parseDate(xpp)); 11645 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 11646 res.getAddress().add(parseAddress(xpp)); 11647 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("photo")) { 11648 res.getPhoto().add(parseAttachment(xpp)); 11649 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 11650 res.setPeriod(parsePeriod(xpp)); 11651 } else if (!parseDomainResourceContent(eventType, xpp, res)) 11652 unknownContent(xpp); 11653 eventType = nextNoWhitespace(xpp); 11654 } 11655 next(xpp); 11656 parseElementClose(res); 11657 return res; 11658 } 11659 11660 protected RiskAssessment parseRiskAssessment(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11661 RiskAssessment res = new RiskAssessment(); 11662 parseDomainResourceAttributes(xpp, res); 11663 next(xpp); 11664 int eventType = nextNoWhitespace(xpp); 11665 while (eventType != XmlPullParser.END_TAG) { 11666 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 11667 res.setSubject(parseReference(xpp)); 11668 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 11669 res.setDateElement(parseDateTime(xpp)); 11670 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 11671 res.setCondition(parseReference(xpp)); 11672 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 11673 res.setEncounter(parseReference(xpp)); 11674 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 11675 res.setPerformer(parseReference(xpp)); 11676 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 11677 res.setIdentifier(parseIdentifier(xpp)); 11678 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 11679 res.setMethod(parseCodeableConcept(xpp)); 11680 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basis")) { 11681 res.getBasis().add(parseReference(xpp)); 11682 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prediction")) { 11683 res.getPrediction().add(parseRiskAssessmentRiskAssessmentPredictionComponent(xpp, res)); 11684 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mitigation")) { 11685 res.setMitigationElement(parseString(xpp)); 11686 } else if (!parseDomainResourceContent(eventType, xpp, res)) 11687 unknownContent(xpp); 11688 eventType = nextNoWhitespace(xpp); 11689 } 11690 next(xpp); 11691 parseElementClose(res); 11692 return res; 11693 } 11694 11695 protected RiskAssessment.RiskAssessmentPredictionComponent parseRiskAssessmentRiskAssessmentPredictionComponent(XmlPullParser xpp, RiskAssessment owner) throws XmlPullParserException, IOException, FHIRFormatError { 11696 RiskAssessment.RiskAssessmentPredictionComponent res = new RiskAssessment.RiskAssessmentPredictionComponent(); 11697 parseBackboneAttributes(xpp, res); 11698 next(xpp); 11699 int eventType = nextNoWhitespace(xpp); 11700 while (eventType != XmlPullParser.END_TAG) { 11701 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 11702 res.setOutcome(parseCodeableConcept(xpp)); 11703 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "probability")) { 11704 res.setProbability(parseType("probability", xpp)); 11705 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relativeRisk")) { 11706 res.setRelativeRiskElement(parseDecimal(xpp)); 11707 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "when")) { 11708 res.setWhen(parseType("when", xpp)); 11709 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rationale")) { 11710 res.setRationaleElement(parseString(xpp)); 11711 } else if (!parseBackboneContent(eventType, xpp, res)) 11712 unknownContent(xpp); 11713 eventType = nextNoWhitespace(xpp); 11714 } 11715 next(xpp); 11716 parseElementClose(res); 11717 return res; 11718 } 11719 11720 protected Schedule parseSchedule(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11721 Schedule res = new Schedule(); 11722 parseDomainResourceAttributes(xpp, res); 11723 next(xpp); 11724 int eventType = nextNoWhitespace(xpp); 11725 while (eventType != XmlPullParser.END_TAG) { 11726 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 11727 res.getIdentifier().add(parseIdentifier(xpp)); 11728 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceCategory")) { 11729 res.setServiceCategory(parseCodeableConcept(xpp)); 11730 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceType")) { 11731 res.getServiceType().add(parseCodeableConcept(xpp)); 11732 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialty")) { 11733 res.getSpecialty().add(parseCodeableConcept(xpp)); 11734 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 11735 res.setActor(parseReference(xpp)); 11736 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("planningHorizon")) { 11737 res.setPlanningHorizon(parsePeriod(xpp)); 11738 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 11739 res.setCommentElement(parseString(xpp)); 11740 } else if (!parseDomainResourceContent(eventType, xpp, res)) 11741 unknownContent(xpp); 11742 eventType = nextNoWhitespace(xpp); 11743 } 11744 next(xpp); 11745 parseElementClose(res); 11746 return res; 11747 } 11748 11749 protected SearchParameter parseSearchParameter(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11750 SearchParameter res = new SearchParameter(); 11751 parseDomainResourceAttributes(xpp, res); 11752 next(xpp); 11753 int eventType = nextNoWhitespace(xpp); 11754 while (eventType != XmlPullParser.END_TAG) { 11755 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 11756 res.setUrlElement(parseUri(xpp)); 11757 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 11758 res.setNameElement(parseString(xpp)); 11759 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 11760 res.setStatusElement(parseEnumeration(xpp, Enumerations.ConformanceResourceStatus.NULL, new Enumerations.ConformanceResourceStatusEnumFactory())); 11761 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 11762 res.setExperimentalElement(parseBoolean(xpp)); 11763 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 11764 res.setDateElement(parseDateTime(xpp)); 11765 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 11766 res.setPublisherElement(parseString(xpp)); 11767 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 11768 res.getContact().add(parseSearchParameterSearchParameterContactComponent(xpp, res)); 11769 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 11770 res.getUseContext().add(parseCodeableConcept(xpp)); 11771 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirements")) { 11772 res.setRequirementsElement(parseString(xpp)); 11773 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 11774 res.setCodeElement(parseCode(xpp)); 11775 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("base")) { 11776 res.setBaseElement(parseCode(xpp)); 11777 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 11778 res.setTypeElement(parseEnumeration(xpp, Enumerations.SearchParamType.NULL, new Enumerations.SearchParamTypeEnumFactory())); 11779 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 11780 res.setDescriptionElement(parseString(xpp)); 11781 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 11782 res.setExpressionElement(parseString(xpp)); 11783 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("xpath")) { 11784 res.setXpathElement(parseString(xpp)); 11785 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("xpathUsage")) { 11786 res.setXpathUsageElement(parseEnumeration(xpp, SearchParameter.XPathUsageType.NULL, new SearchParameter.XPathUsageTypeEnumFactory())); 11787 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 11788 res.getTarget().add(parseCode(xpp)); 11789 } else if (!parseDomainResourceContent(eventType, xpp, res)) 11790 unknownContent(xpp); 11791 eventType = nextNoWhitespace(xpp); 11792 } 11793 next(xpp); 11794 parseElementClose(res); 11795 return res; 11796 } 11797 11798 protected SearchParameter.SearchParameterContactComponent parseSearchParameterSearchParameterContactComponent(XmlPullParser xpp, SearchParameter owner) throws XmlPullParserException, IOException, FHIRFormatError { 11799 SearchParameter.SearchParameterContactComponent res = new SearchParameter.SearchParameterContactComponent(); 11800 parseBackboneAttributes(xpp, res); 11801 next(xpp); 11802 int eventType = nextNoWhitespace(xpp); 11803 while (eventType != XmlPullParser.END_TAG) { 11804 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 11805 res.setNameElement(parseString(xpp)); 11806 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 11807 res.getTelecom().add(parseContactPoint(xpp)); 11808 } else if (!parseBackboneContent(eventType, xpp, res)) 11809 unknownContent(xpp); 11810 eventType = nextNoWhitespace(xpp); 11811 } 11812 next(xpp); 11813 parseElementClose(res); 11814 return res; 11815 } 11816 11817 protected Sequence parseSequence(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11818 Sequence res = new Sequence(); 11819 parseDomainResourceAttributes(xpp, res); 11820 next(xpp); 11821 int eventType = nextNoWhitespace(xpp); 11822 while (eventType != XmlPullParser.END_TAG) { 11823 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 11824 res.setTypeElement(parseEnumeration(xpp, Sequence.SequenceType.NULL, new Sequence.SequenceTypeEnumFactory())); 11825 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 11826 res.setPatient(parseReference(xpp)); 11827 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specimen")) { 11828 res.setSpecimen(parseReference(xpp)); 11829 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 11830 res.setDevice(parseReference(xpp)); 11831 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 11832 res.setQuantity(parseQuantity(xpp)); 11833 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("species")) { 11834 res.setSpecies(parseCodeableConcept(xpp)); 11835 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referenceSeq")) { 11836 res.getReferenceSeq().add(parseSequenceSequenceReferenceSeqComponent(xpp, res)); 11837 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("variation")) { 11838 res.setVariation(parseSequenceSequenceVariationComponent(xpp, res)); 11839 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quality")) { 11840 res.getQuality().add(parseSequenceSequenceQualityComponent(xpp, res)); 11841 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("allelicState")) { 11842 res.setAllelicState(parseCodeableConcept(xpp)); 11843 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("allelicFrequency")) { 11844 res.setAllelicFrequencyElement(parseDecimal(xpp)); 11845 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyNumberEvent")) { 11846 res.setCopyNumberEvent(parseCodeableConcept(xpp)); 11847 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("readCoverage")) { 11848 res.setReadCoverageElement(parseInteger(xpp)); 11849 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("repository")) { 11850 res.getRepository().add(parseSequenceSequenceRepositoryComponent(xpp, res)); 11851 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("pointer")) { 11852 res.getPointer().add(parseReference(xpp)); 11853 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("observedSeq")) { 11854 res.setObservedSeqElement(parseString(xpp)); 11855 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("observation")) { 11856 res.setObservation(parseReference(xpp)); 11857 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("structureVariation")) { 11858 res.setStructureVariation(parseSequenceSequenceStructureVariationComponent(xpp, res)); 11859 } else if (!parseDomainResourceContent(eventType, xpp, res)) 11860 unknownContent(xpp); 11861 eventType = nextNoWhitespace(xpp); 11862 } 11863 next(xpp); 11864 parseElementClose(res); 11865 return res; 11866 } 11867 11868 protected Sequence.SequenceReferenceSeqComponent parseSequenceSequenceReferenceSeqComponent(XmlPullParser xpp, Sequence owner) throws XmlPullParserException, IOException, FHIRFormatError { 11869 Sequence.SequenceReferenceSeqComponent res = new Sequence.SequenceReferenceSeqComponent(); 11870 parseBackboneAttributes(xpp, res); 11871 next(xpp); 11872 int eventType = nextNoWhitespace(xpp); 11873 while (eventType != XmlPullParser.END_TAG) { 11874 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("chromosome")) { 11875 res.setChromosome(parseCodeableConcept(xpp)); 11876 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("genomeBuild")) { 11877 res.setGenomeBuildElement(parseString(xpp)); 11878 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referenceSeqId")) { 11879 res.setReferenceSeqId(parseCodeableConcept(xpp)); 11880 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referenceSeqPointer")) { 11881 res.setReferenceSeqPointer(parseReference(xpp)); 11882 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referenceSeqString")) { 11883 res.setReferenceSeqStringElement(parseString(xpp)); 11884 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("windowStart")) { 11885 res.setWindowStartElement(parseInteger(xpp)); 11886 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("windowEnd")) { 11887 res.setWindowEndElement(parseInteger(xpp)); 11888 } else if (!parseBackboneContent(eventType, xpp, res)) 11889 unknownContent(xpp); 11890 eventType = nextNoWhitespace(xpp); 11891 } 11892 next(xpp); 11893 parseElementClose(res); 11894 return res; 11895 } 11896 11897 protected Sequence.SequenceVariationComponent parseSequenceSequenceVariationComponent(XmlPullParser xpp, Sequence owner) throws XmlPullParserException, IOException, FHIRFormatError { 11898 Sequence.SequenceVariationComponent res = new Sequence.SequenceVariationComponent(); 11899 parseBackboneAttributes(xpp, res); 11900 next(xpp); 11901 int eventType = nextNoWhitespace(xpp); 11902 while (eventType != XmlPullParser.END_TAG) { 11903 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("start")) { 11904 res.setStartElement(parseInteger(xpp)); 11905 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("end")) { 11906 res.setEndElement(parseInteger(xpp)); 11907 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("observedAllele")) { 11908 res.setObservedAlleleElement(parseString(xpp)); 11909 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referenceAllele")) { 11910 res.setReferenceAlleleElement(parseString(xpp)); 11911 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("cigar")) { 11912 res.setCigarElement(parseString(xpp)); 11913 } else if (!parseBackboneContent(eventType, xpp, res)) 11914 unknownContent(xpp); 11915 eventType = nextNoWhitespace(xpp); 11916 } 11917 next(xpp); 11918 parseElementClose(res); 11919 return res; 11920 } 11921 11922 protected Sequence.SequenceQualityComponent parseSequenceSequenceQualityComponent(XmlPullParser xpp, Sequence owner) throws XmlPullParserException, IOException, FHIRFormatError { 11923 Sequence.SequenceQualityComponent res = new Sequence.SequenceQualityComponent(); 11924 parseBackboneAttributes(xpp, res); 11925 next(xpp); 11926 int eventType = nextNoWhitespace(xpp); 11927 while (eventType != XmlPullParser.END_TAG) { 11928 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("start")) { 11929 res.setStartElement(parseInteger(xpp)); 11930 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("end")) { 11931 res.setEndElement(parseInteger(xpp)); 11932 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("score")) { 11933 res.setScore(parseQuantity(xpp)); 11934 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 11935 res.setMethodElement(parseString(xpp)); 11936 } else if (!parseBackboneContent(eventType, xpp, res)) 11937 unknownContent(xpp); 11938 eventType = nextNoWhitespace(xpp); 11939 } 11940 next(xpp); 11941 parseElementClose(res); 11942 return res; 11943 } 11944 11945 protected Sequence.SequenceRepositoryComponent parseSequenceSequenceRepositoryComponent(XmlPullParser xpp, Sequence owner) throws XmlPullParserException, IOException, FHIRFormatError { 11946 Sequence.SequenceRepositoryComponent res = new Sequence.SequenceRepositoryComponent(); 11947 parseBackboneAttributes(xpp, res); 11948 next(xpp); 11949 int eventType = nextNoWhitespace(xpp); 11950 while (eventType != XmlPullParser.END_TAG) { 11951 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 11952 res.setUrlElement(parseUri(xpp)); 11953 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 11954 res.setNameElement(parseString(xpp)); 11955 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("variantId")) { 11956 res.setVariantIdElement(parseString(xpp)); 11957 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("readId")) { 11958 res.setReadIdElement(parseString(xpp)); 11959 } else if (!parseBackboneContent(eventType, xpp, res)) 11960 unknownContent(xpp); 11961 eventType = nextNoWhitespace(xpp); 11962 } 11963 next(xpp); 11964 parseElementClose(res); 11965 return res; 11966 } 11967 11968 protected Sequence.SequenceStructureVariationComponent parseSequenceSequenceStructureVariationComponent(XmlPullParser xpp, Sequence owner) throws XmlPullParserException, IOException, FHIRFormatError { 11969 Sequence.SequenceStructureVariationComponent res = new Sequence.SequenceStructureVariationComponent(); 11970 parseBackboneAttributes(xpp, res); 11971 next(xpp); 11972 int eventType = nextNoWhitespace(xpp); 11973 while (eventType != XmlPullParser.END_TAG) { 11974 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("precisionOfBoundaries")) { 11975 res.setPrecisionOfBoundariesElement(parseString(xpp)); 11976 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reportedaCGHRatio")) { 11977 res.setReportedaCGHRatioElement(parseDecimal(xpp)); 11978 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("length")) { 11979 res.setLengthElement(parseInteger(xpp)); 11980 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outer")) { 11981 res.setOuter(parseSequenceSequenceStructureVariationOuterComponent(xpp, owner)); 11982 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("inner")) { 11983 res.setInner(parseSequenceSequenceStructureVariationInnerComponent(xpp, owner)); 11984 } else if (!parseBackboneContent(eventType, xpp, res)) 11985 unknownContent(xpp); 11986 eventType = nextNoWhitespace(xpp); 11987 } 11988 next(xpp); 11989 parseElementClose(res); 11990 return res; 11991 } 11992 11993 protected Sequence.SequenceStructureVariationOuterComponent parseSequenceSequenceStructureVariationOuterComponent(XmlPullParser xpp, Sequence owner) throws XmlPullParserException, IOException, FHIRFormatError { 11994 Sequence.SequenceStructureVariationOuterComponent res = new Sequence.SequenceStructureVariationOuterComponent(); 11995 parseBackboneAttributes(xpp, res); 11996 next(xpp); 11997 int eventType = nextNoWhitespace(xpp); 11998 while (eventType != XmlPullParser.END_TAG) { 11999 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("start")) { 12000 res.setStartElement(parseInteger(xpp)); 12001 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("end")) { 12002 res.setEndElement(parseInteger(xpp)); 12003 } else if (!parseBackboneContent(eventType, xpp, res)) 12004 unknownContent(xpp); 12005 eventType = nextNoWhitespace(xpp); 12006 } 12007 next(xpp); 12008 parseElementClose(res); 12009 return res; 12010 } 12011 12012 protected Sequence.SequenceStructureVariationInnerComponent parseSequenceSequenceStructureVariationInnerComponent(XmlPullParser xpp, Sequence owner) throws XmlPullParserException, IOException, FHIRFormatError { 12013 Sequence.SequenceStructureVariationInnerComponent res = new Sequence.SequenceStructureVariationInnerComponent(); 12014 parseBackboneAttributes(xpp, res); 12015 next(xpp); 12016 int eventType = nextNoWhitespace(xpp); 12017 while (eventType != XmlPullParser.END_TAG) { 12018 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("start")) { 12019 res.setStartElement(parseInteger(xpp)); 12020 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("end")) { 12021 res.setEndElement(parseInteger(xpp)); 12022 } else if (!parseBackboneContent(eventType, xpp, res)) 12023 unknownContent(xpp); 12024 eventType = nextNoWhitespace(xpp); 12025 } 12026 next(xpp); 12027 parseElementClose(res); 12028 return res; 12029 } 12030 12031 protected Slot parseSlot(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12032 Slot res = new Slot(); 12033 parseDomainResourceAttributes(xpp, res); 12034 next(xpp); 12035 int eventType = nextNoWhitespace(xpp); 12036 while (eventType != XmlPullParser.END_TAG) { 12037 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 12038 res.getIdentifier().add(parseIdentifier(xpp)); 12039 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceCategory")) { 12040 res.setServiceCategory(parseCodeableConcept(xpp)); 12041 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceType")) { 12042 res.getServiceType().add(parseCodeableConcept(xpp)); 12043 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialty")) { 12044 res.getSpecialty().add(parseCodeableConcept(xpp)); 12045 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("appointmentType")) { 12046 res.setAppointmentType(parseCodeableConcept(xpp)); 12047 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("schedule")) { 12048 res.setSchedule(parseReference(xpp)); 12049 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 12050 res.setStatusElement(parseEnumeration(xpp, Slot.SlotStatus.NULL, new Slot.SlotStatusEnumFactory())); 12051 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("start")) { 12052 res.setStartElement(parseInstant(xpp)); 12053 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("end")) { 12054 res.setEndElement(parseInstant(xpp)); 12055 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("overbooked")) { 12056 res.setOverbookedElement(parseBoolean(xpp)); 12057 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 12058 res.setCommentElement(parseString(xpp)); 12059 } else if (!parseDomainResourceContent(eventType, xpp, res)) 12060 unknownContent(xpp); 12061 eventType = nextNoWhitespace(xpp); 12062 } 12063 next(xpp); 12064 parseElementClose(res); 12065 return res; 12066 } 12067 12068 protected Specimen parseSpecimen(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12069 Specimen res = new Specimen(); 12070 parseDomainResourceAttributes(xpp, res); 12071 next(xpp); 12072 int eventType = nextNoWhitespace(xpp); 12073 while (eventType != XmlPullParser.END_TAG) { 12074 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 12075 res.getIdentifier().add(parseIdentifier(xpp)); 12076 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("accessionIdentifier")) { 12077 res.setAccessionIdentifier(parseIdentifier(xpp)); 12078 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 12079 res.setStatusElement(parseEnumeration(xpp, Specimen.SpecimenStatus.NULL, new Specimen.SpecimenStatusEnumFactory())); 12080 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 12081 res.setType(parseCodeableConcept(xpp)); 12082 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 12083 res.setSubject(parseReference(xpp)); 12084 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("receivedTime")) { 12085 res.setReceivedTimeElement(parseDateTime(xpp)); 12086 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parent")) { 12087 res.getParent().add(parseReference(xpp)); 12088 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("collection")) { 12089 res.setCollection(parseSpecimenSpecimenCollectionComponent(xpp, res)); 12090 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("treatment")) { 12091 res.getTreatment().add(parseSpecimenSpecimenTreatmentComponent(xpp, res)); 12092 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("container")) { 12093 res.getContainer().add(parseSpecimenSpecimenContainerComponent(xpp, res)); 12094 } else if (!parseDomainResourceContent(eventType, xpp, res)) 12095 unknownContent(xpp); 12096 eventType = nextNoWhitespace(xpp); 12097 } 12098 next(xpp); 12099 parseElementClose(res); 12100 return res; 12101 } 12102 12103 protected Specimen.SpecimenCollectionComponent parseSpecimenSpecimenCollectionComponent(XmlPullParser xpp, Specimen owner) throws XmlPullParserException, IOException, FHIRFormatError { 12104 Specimen.SpecimenCollectionComponent res = new Specimen.SpecimenCollectionComponent(); 12105 parseBackboneAttributes(xpp, res); 12106 next(xpp); 12107 int eventType = nextNoWhitespace(xpp); 12108 while (eventType != XmlPullParser.END_TAG) { 12109 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("collector")) { 12110 res.setCollector(parseReference(xpp)); 12111 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 12112 res.setCommentElement(parseString(xpp)); 12113 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "collected")) { 12114 res.setCollected(parseType("collected", xpp)); 12115 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 12116 res.setQuantity(parseSimpleQuantity(xpp)); 12117 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 12118 res.setMethod(parseCodeableConcept(xpp)); 12119 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 12120 res.setBodySite(parseCodeableConcept(xpp)); 12121 } else if (!parseBackboneContent(eventType, xpp, res)) 12122 unknownContent(xpp); 12123 eventType = nextNoWhitespace(xpp); 12124 } 12125 next(xpp); 12126 parseElementClose(res); 12127 return res; 12128 } 12129 12130 protected Specimen.SpecimenTreatmentComponent parseSpecimenSpecimenTreatmentComponent(XmlPullParser xpp, Specimen owner) throws XmlPullParserException, IOException, FHIRFormatError { 12131 Specimen.SpecimenTreatmentComponent res = new Specimen.SpecimenTreatmentComponent(); 12132 parseBackboneAttributes(xpp, res); 12133 next(xpp); 12134 int eventType = nextNoWhitespace(xpp); 12135 while (eventType != XmlPullParser.END_TAG) { 12136 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 12137 res.setDescriptionElement(parseString(xpp)); 12138 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("procedure")) { 12139 res.setProcedure(parseCodeableConcept(xpp)); 12140 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("additive")) { 12141 res.getAdditive().add(parseReference(xpp)); 12142 } else if (!parseBackboneContent(eventType, xpp, res)) 12143 unknownContent(xpp); 12144 eventType = nextNoWhitespace(xpp); 12145 } 12146 next(xpp); 12147 parseElementClose(res); 12148 return res; 12149 } 12150 12151 protected Specimen.SpecimenContainerComponent parseSpecimenSpecimenContainerComponent(XmlPullParser xpp, Specimen owner) throws XmlPullParserException, IOException, FHIRFormatError { 12152 Specimen.SpecimenContainerComponent res = new Specimen.SpecimenContainerComponent(); 12153 parseBackboneAttributes(xpp, res); 12154 next(xpp); 12155 int eventType = nextNoWhitespace(xpp); 12156 while (eventType != XmlPullParser.END_TAG) { 12157 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 12158 res.getIdentifier().add(parseIdentifier(xpp)); 12159 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 12160 res.setDescriptionElement(parseString(xpp)); 12161 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 12162 res.setType(parseCodeableConcept(xpp)); 12163 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("capacity")) { 12164 res.setCapacity(parseSimpleQuantity(xpp)); 12165 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specimenQuantity")) { 12166 res.setSpecimenQuantity(parseSimpleQuantity(xpp)); 12167 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "additive")) { 12168 res.setAdditive(parseType("additive", xpp)); 12169 } else if (!parseBackboneContent(eventType, xpp, res)) 12170 unknownContent(xpp); 12171 eventType = nextNoWhitespace(xpp); 12172 } 12173 next(xpp); 12174 parseElementClose(res); 12175 return res; 12176 } 12177 12178 protected StructureDefinition parseStructureDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12179 StructureDefinition res = new StructureDefinition(); 12180 parseDomainResourceAttributes(xpp, res); 12181 next(xpp); 12182 int eventType = nextNoWhitespace(xpp); 12183 while (eventType != XmlPullParser.END_TAG) { 12184 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 12185 res.setUrlElement(parseUri(xpp)); 12186 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 12187 res.getIdentifier().add(parseIdentifier(xpp)); 12188 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 12189 res.setVersionElement(parseString(xpp)); 12190 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 12191 res.setNameElement(parseString(xpp)); 12192 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 12193 res.setDisplayElement(parseString(xpp)); 12194 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 12195 res.setStatusElement(parseEnumeration(xpp, Enumerations.ConformanceResourceStatus.NULL, new Enumerations.ConformanceResourceStatusEnumFactory())); 12196 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 12197 res.setExperimentalElement(parseBoolean(xpp)); 12198 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 12199 res.setPublisherElement(parseString(xpp)); 12200 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 12201 res.getContact().add(parseStructureDefinitionStructureDefinitionContactComponent(xpp, res)); 12202 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 12203 res.setDateElement(parseDateTime(xpp)); 12204 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 12205 res.setDescriptionElement(parseString(xpp)); 12206 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 12207 res.getUseContext().add(parseCodeableConcept(xpp)); 12208 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirements")) { 12209 res.setRequirementsElement(parseString(xpp)); 12210 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 12211 res.setCopyrightElement(parseString(xpp)); 12212 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 12213 res.getCode().add(parseCoding(xpp)); 12214 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fhirVersion")) { 12215 res.setFhirVersionElement(parseId(xpp)); 12216 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mapping")) { 12217 res.getMapping().add(parseStructureDefinitionStructureDefinitionMappingComponent(xpp, res)); 12218 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 12219 res.setKindElement(parseEnumeration(xpp, StructureDefinition.StructureDefinitionKind.NULL, new StructureDefinition.StructureDefinitionKindEnumFactory())); 12220 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("abstract")) { 12221 res.setAbstractElement(parseBoolean(xpp)); 12222 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contextType")) { 12223 res.setContextTypeElement(parseEnumeration(xpp, StructureDefinition.ExtensionContext.NULL, new StructureDefinition.ExtensionContextEnumFactory())); 12224 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 12225 res.getContext().add(parseString(xpp)); 12226 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("baseType")) { 12227 res.setBaseTypeElement(parseCode(xpp)); 12228 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("baseDefinition")) { 12229 res.setBaseDefinitionElement(parseUri(xpp)); 12230 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("derivation")) { 12231 res.setDerivationElement(parseEnumeration(xpp, StructureDefinition.TypeDerivationRule.NULL, new StructureDefinition.TypeDerivationRuleEnumFactory())); 12232 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("snapshot")) { 12233 res.setSnapshot(parseStructureDefinitionStructureDefinitionSnapshotComponent(xpp, res)); 12234 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("differential")) { 12235 res.setDifferential(parseStructureDefinitionStructureDefinitionDifferentialComponent(xpp, res)); 12236 } else if (!parseDomainResourceContent(eventType, xpp, res)) 12237 unknownContent(xpp); 12238 eventType = nextNoWhitespace(xpp); 12239 } 12240 next(xpp); 12241 parseElementClose(res); 12242 return res; 12243 } 12244 12245 protected StructureDefinition.StructureDefinitionContactComponent parseStructureDefinitionStructureDefinitionContactComponent(XmlPullParser xpp, StructureDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 12246 StructureDefinition.StructureDefinitionContactComponent res = new StructureDefinition.StructureDefinitionContactComponent(); 12247 parseBackboneAttributes(xpp, res); 12248 next(xpp); 12249 int eventType = nextNoWhitespace(xpp); 12250 while (eventType != XmlPullParser.END_TAG) { 12251 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 12252 res.setNameElement(parseString(xpp)); 12253 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 12254 res.getTelecom().add(parseContactPoint(xpp)); 12255 } else if (!parseBackboneContent(eventType, xpp, res)) 12256 unknownContent(xpp); 12257 eventType = nextNoWhitespace(xpp); 12258 } 12259 next(xpp); 12260 parseElementClose(res); 12261 return res; 12262 } 12263 12264 protected StructureDefinition.StructureDefinitionMappingComponent parseStructureDefinitionStructureDefinitionMappingComponent(XmlPullParser xpp, StructureDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 12265 StructureDefinition.StructureDefinitionMappingComponent res = new StructureDefinition.StructureDefinitionMappingComponent(); 12266 parseBackboneAttributes(xpp, res); 12267 next(xpp); 12268 int eventType = nextNoWhitespace(xpp); 12269 while (eventType != XmlPullParser.END_TAG) { 12270 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identity")) { 12271 res.setIdentityElement(parseId(xpp)); 12272 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uri")) { 12273 res.setUriElement(parseUri(xpp)); 12274 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 12275 res.setNameElement(parseString(xpp)); 12276 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comments")) { 12277 res.setCommentsElement(parseString(xpp)); 12278 } else if (!parseBackboneContent(eventType, xpp, res)) 12279 unknownContent(xpp); 12280 eventType = nextNoWhitespace(xpp); 12281 } 12282 next(xpp); 12283 parseElementClose(res); 12284 return res; 12285 } 12286 12287 protected StructureDefinition.StructureDefinitionSnapshotComponent parseStructureDefinitionStructureDefinitionSnapshotComponent(XmlPullParser xpp, StructureDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 12288 StructureDefinition.StructureDefinitionSnapshotComponent res = new StructureDefinition.StructureDefinitionSnapshotComponent(); 12289 parseBackboneAttributes(xpp, res); 12290 next(xpp); 12291 int eventType = nextNoWhitespace(xpp); 12292 while (eventType != XmlPullParser.END_TAG) { 12293 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("element")) { 12294 res.getElement().add(parseElementDefinition(xpp)); 12295 } else if (!parseBackboneContent(eventType, xpp, res)) 12296 unknownContent(xpp); 12297 eventType = nextNoWhitespace(xpp); 12298 } 12299 next(xpp); 12300 parseElementClose(res); 12301 return res; 12302 } 12303 12304 protected StructureDefinition.StructureDefinitionDifferentialComponent parseStructureDefinitionStructureDefinitionDifferentialComponent(XmlPullParser xpp, StructureDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 12305 StructureDefinition.StructureDefinitionDifferentialComponent res = new StructureDefinition.StructureDefinitionDifferentialComponent(); 12306 parseBackboneAttributes(xpp, res); 12307 next(xpp); 12308 int eventType = nextNoWhitespace(xpp); 12309 while (eventType != XmlPullParser.END_TAG) { 12310 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("element")) { 12311 res.getElement().add(parseElementDefinition(xpp)); 12312 } else if (!parseBackboneContent(eventType, xpp, res)) 12313 unknownContent(xpp); 12314 eventType = nextNoWhitespace(xpp); 12315 } 12316 next(xpp); 12317 parseElementClose(res); 12318 return res; 12319 } 12320 12321 protected StructureMap parseStructureMap(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12322 StructureMap res = new StructureMap(); 12323 parseDomainResourceAttributes(xpp, res); 12324 next(xpp); 12325 int eventType = nextNoWhitespace(xpp); 12326 while (eventType != XmlPullParser.END_TAG) { 12327 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 12328 res.setUrlElement(parseUri(xpp)); 12329 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 12330 res.getIdentifier().add(parseIdentifier(xpp)); 12331 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 12332 res.setVersionElement(parseString(xpp)); 12333 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 12334 res.setNameElement(parseString(xpp)); 12335 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 12336 res.setStatusElement(parseEnumeration(xpp, Enumerations.ConformanceResourceStatus.NULL, new Enumerations.ConformanceResourceStatusEnumFactory())); 12337 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 12338 res.setExperimentalElement(parseBoolean(xpp)); 12339 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 12340 res.setPublisherElement(parseString(xpp)); 12341 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 12342 res.getContact().add(parseStructureMapStructureMapContactComponent(xpp, res)); 12343 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 12344 res.setDateElement(parseDateTime(xpp)); 12345 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 12346 res.setDescriptionElement(parseString(xpp)); 12347 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 12348 res.getUseContext().add(parseCodeableConcept(xpp)); 12349 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirements")) { 12350 res.setRequirementsElement(parseString(xpp)); 12351 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 12352 res.setCopyrightElement(parseString(xpp)); 12353 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("structure")) { 12354 res.getStructure().add(parseStructureMapStructureMapStructureComponent(xpp, res)); 12355 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("import")) { 12356 res.getImport().add(parseUri(xpp)); 12357 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("group")) { 12358 res.getGroup().add(parseStructureMapStructureMapGroupComponent(xpp, res)); 12359 } else if (!parseDomainResourceContent(eventType, xpp, res)) 12360 unknownContent(xpp); 12361 eventType = nextNoWhitespace(xpp); 12362 } 12363 next(xpp); 12364 parseElementClose(res); 12365 return res; 12366 } 12367 12368 protected StructureMap.StructureMapContactComponent parseStructureMapStructureMapContactComponent(XmlPullParser xpp, StructureMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 12369 StructureMap.StructureMapContactComponent res = new StructureMap.StructureMapContactComponent(); 12370 parseBackboneAttributes(xpp, res); 12371 next(xpp); 12372 int eventType = nextNoWhitespace(xpp); 12373 while (eventType != XmlPullParser.END_TAG) { 12374 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 12375 res.setNameElement(parseString(xpp)); 12376 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 12377 res.getTelecom().add(parseContactPoint(xpp)); 12378 } else if (!parseBackboneContent(eventType, xpp, res)) 12379 unknownContent(xpp); 12380 eventType = nextNoWhitespace(xpp); 12381 } 12382 next(xpp); 12383 parseElementClose(res); 12384 return res; 12385 } 12386 12387 protected StructureMap.StructureMapStructureComponent parseStructureMapStructureMapStructureComponent(XmlPullParser xpp, StructureMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 12388 StructureMap.StructureMapStructureComponent res = new StructureMap.StructureMapStructureComponent(); 12389 parseBackboneAttributes(xpp, res); 12390 next(xpp); 12391 int eventType = nextNoWhitespace(xpp); 12392 while (eventType != XmlPullParser.END_TAG) { 12393 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 12394 res.setUrlElement(parseUri(xpp)); 12395 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 12396 res.setModeElement(parseEnumeration(xpp, StructureMap.StructureMapModelMode.NULL, new StructureMap.StructureMapModelModeEnumFactory())); 12397 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 12398 res.setDocumentationElement(parseString(xpp)); 12399 } else if (!parseBackboneContent(eventType, xpp, res)) 12400 unknownContent(xpp); 12401 eventType = nextNoWhitespace(xpp); 12402 } 12403 next(xpp); 12404 parseElementClose(res); 12405 return res; 12406 } 12407 12408 protected StructureMap.StructureMapGroupComponent parseStructureMapStructureMapGroupComponent(XmlPullParser xpp, StructureMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 12409 StructureMap.StructureMapGroupComponent res = new StructureMap.StructureMapGroupComponent(); 12410 parseBackboneAttributes(xpp, res); 12411 next(xpp); 12412 int eventType = nextNoWhitespace(xpp); 12413 while (eventType != XmlPullParser.END_TAG) { 12414 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 12415 res.setNameElement(parseId(xpp)); 12416 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("extends")) { 12417 res.setExtendsElement(parseId(xpp)); 12418 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 12419 res.setDocumentationElement(parseString(xpp)); 12420 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("input")) { 12421 res.getInput().add(parseStructureMapStructureMapGroupInputComponent(xpp, owner)); 12422 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rule")) { 12423 res.getRule().add(parseStructureMapStructureMapGroupRuleComponent(xpp, owner)); 12424 } else if (!parseBackboneContent(eventType, xpp, res)) 12425 unknownContent(xpp); 12426 eventType = nextNoWhitespace(xpp); 12427 } 12428 next(xpp); 12429 parseElementClose(res); 12430 return res; 12431 } 12432 12433 protected StructureMap.StructureMapGroupInputComponent parseStructureMapStructureMapGroupInputComponent(XmlPullParser xpp, StructureMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 12434 StructureMap.StructureMapGroupInputComponent res = new StructureMap.StructureMapGroupInputComponent(); 12435 parseBackboneAttributes(xpp, res); 12436 next(xpp); 12437 int eventType = nextNoWhitespace(xpp); 12438 while (eventType != XmlPullParser.END_TAG) { 12439 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 12440 res.setNameElement(parseId(xpp)); 12441 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 12442 res.setTypeElement(parseString(xpp)); 12443 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 12444 res.setModeElement(parseEnumeration(xpp, StructureMap.StructureMapInputMode.NULL, new StructureMap.StructureMapInputModeEnumFactory())); 12445 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 12446 res.setDocumentationElement(parseString(xpp)); 12447 } else if (!parseBackboneContent(eventType, xpp, res)) 12448 unknownContent(xpp); 12449 eventType = nextNoWhitespace(xpp); 12450 } 12451 next(xpp); 12452 parseElementClose(res); 12453 return res; 12454 } 12455 12456 protected StructureMap.StructureMapGroupRuleComponent parseStructureMapStructureMapGroupRuleComponent(XmlPullParser xpp, StructureMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 12457 StructureMap.StructureMapGroupRuleComponent res = new StructureMap.StructureMapGroupRuleComponent(); 12458 parseBackboneAttributes(xpp, res); 12459 next(xpp); 12460 int eventType = nextNoWhitespace(xpp); 12461 while (eventType != XmlPullParser.END_TAG) { 12462 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 12463 res.setNameElement(parseId(xpp)); 12464 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 12465 res.getSource().add(parseStructureMapStructureMapGroupRuleSourceComponent(xpp, owner)); 12466 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 12467 res.getTarget().add(parseStructureMapStructureMapGroupRuleTargetComponent(xpp, owner)); 12468 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rule")) { 12469 res.getRule().add(parseStructureMapStructureMapGroupRuleComponent(xpp, owner)); 12470 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dependent")) { 12471 res.getDependent().add(parseStructureMapStructureMapGroupRuleDependentComponent(xpp, owner)); 12472 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 12473 res.setDocumentationElement(parseString(xpp)); 12474 } else if (!parseBackboneContent(eventType, xpp, res)) 12475 unknownContent(xpp); 12476 eventType = nextNoWhitespace(xpp); 12477 } 12478 next(xpp); 12479 parseElementClose(res); 12480 return res; 12481 } 12482 12483 protected StructureMap.StructureMapGroupRuleSourceComponent parseStructureMapStructureMapGroupRuleSourceComponent(XmlPullParser xpp, StructureMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 12484 StructureMap.StructureMapGroupRuleSourceComponent res = new StructureMap.StructureMapGroupRuleSourceComponent(); 12485 parseBackboneAttributes(xpp, res); 12486 next(xpp); 12487 int eventType = nextNoWhitespace(xpp); 12488 while (eventType != XmlPullParser.END_TAG) { 12489 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("required")) { 12490 res.setRequiredElement(parseBoolean(xpp)); 12491 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 12492 res.setContextElement(parseId(xpp)); 12493 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contextType")) { 12494 res.setContextTypeElement(parseEnumeration(xpp, StructureMap.StructureMapContextType.NULL, new StructureMap.StructureMapContextTypeEnumFactory())); 12495 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("element")) { 12496 res.setElementElement(parseString(xpp)); 12497 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("listMode")) { 12498 res.setListModeElement(parseEnumeration(xpp, StructureMap.StructureMapListMode.NULL, new StructureMap.StructureMapListModeEnumFactory())); 12499 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("variable")) { 12500 res.setVariableElement(parseId(xpp)); 12501 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 12502 res.setConditionElement(parseString(xpp)); 12503 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("check")) { 12504 res.setCheckElement(parseString(xpp)); 12505 } else if (!parseBackboneContent(eventType, xpp, res)) 12506 unknownContent(xpp); 12507 eventType = nextNoWhitespace(xpp); 12508 } 12509 next(xpp); 12510 parseElementClose(res); 12511 return res; 12512 } 12513 12514 protected StructureMap.StructureMapGroupRuleTargetComponent parseStructureMapStructureMapGroupRuleTargetComponent(XmlPullParser xpp, StructureMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 12515 StructureMap.StructureMapGroupRuleTargetComponent res = new StructureMap.StructureMapGroupRuleTargetComponent(); 12516 parseBackboneAttributes(xpp, res); 12517 next(xpp); 12518 int eventType = nextNoWhitespace(xpp); 12519 while (eventType != XmlPullParser.END_TAG) { 12520 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 12521 res.setContextElement(parseId(xpp)); 12522 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contextType")) { 12523 res.setContextTypeElement(parseEnumeration(xpp, StructureMap.StructureMapContextType.NULL, new StructureMap.StructureMapContextTypeEnumFactory())); 12524 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("element")) { 12525 res.setElementElement(parseString(xpp)); 12526 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("variable")) { 12527 res.setVariableElement(parseId(xpp)); 12528 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("listMode")) { 12529 res.getListMode().add(parseEnumeration(xpp, StructureMap.StructureMapListMode.NULL, new StructureMap.StructureMapListModeEnumFactory())); 12530 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("listRuleId")) { 12531 res.setListRuleIdElement(parseId(xpp)); 12532 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("transform")) { 12533 res.setTransformElement(parseEnumeration(xpp, StructureMap.StructureMapTransform.NULL, new StructureMap.StructureMapTransformEnumFactory())); 12534 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameter")) { 12535 res.getParameter().add(parseStructureMapStructureMapGroupRuleTargetParameterComponent(xpp, owner)); 12536 } else if (!parseBackboneContent(eventType, xpp, res)) 12537 unknownContent(xpp); 12538 eventType = nextNoWhitespace(xpp); 12539 } 12540 next(xpp); 12541 parseElementClose(res); 12542 return res; 12543 } 12544 12545 protected StructureMap.StructureMapGroupRuleTargetParameterComponent parseStructureMapStructureMapGroupRuleTargetParameterComponent(XmlPullParser xpp, StructureMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 12546 StructureMap.StructureMapGroupRuleTargetParameterComponent res = new StructureMap.StructureMapGroupRuleTargetParameterComponent(); 12547 parseBackboneAttributes(xpp, res); 12548 next(xpp); 12549 int eventType = nextNoWhitespace(xpp); 12550 while (eventType != XmlPullParser.END_TAG) { 12551 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 12552 res.setValue(parseType("value", xpp)); 12553 } else if (!parseBackboneContent(eventType, xpp, res)) 12554 unknownContent(xpp); 12555 eventType = nextNoWhitespace(xpp); 12556 } 12557 next(xpp); 12558 parseElementClose(res); 12559 return res; 12560 } 12561 12562 protected StructureMap.StructureMapGroupRuleDependentComponent parseStructureMapStructureMapGroupRuleDependentComponent(XmlPullParser xpp, StructureMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 12563 StructureMap.StructureMapGroupRuleDependentComponent res = new StructureMap.StructureMapGroupRuleDependentComponent(); 12564 parseBackboneAttributes(xpp, res); 12565 next(xpp); 12566 int eventType = nextNoWhitespace(xpp); 12567 while (eventType != XmlPullParser.END_TAG) { 12568 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 12569 res.setNameElement(parseId(xpp)); 12570 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("variable")) { 12571 res.getVariable().add(parseString(xpp)); 12572 } else if (!parseBackboneContent(eventType, xpp, res)) 12573 unknownContent(xpp); 12574 eventType = nextNoWhitespace(xpp); 12575 } 12576 next(xpp); 12577 parseElementClose(res); 12578 return res; 12579 } 12580 12581 protected Subscription parseSubscription(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12582 Subscription res = new Subscription(); 12583 parseDomainResourceAttributes(xpp, res); 12584 next(xpp); 12585 int eventType = nextNoWhitespace(xpp); 12586 while (eventType != XmlPullParser.END_TAG) { 12587 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("criteria")) { 12588 res.setCriteriaElement(parseString(xpp)); 12589 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 12590 res.getContact().add(parseContactPoint(xpp)); 12591 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 12592 res.setReasonElement(parseString(xpp)); 12593 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 12594 res.setStatusElement(parseEnumeration(xpp, Subscription.SubscriptionStatus.NULL, new Subscription.SubscriptionStatusEnumFactory())); 12595 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("error")) { 12596 res.setErrorElement(parseString(xpp)); 12597 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("channel")) { 12598 res.setChannel(parseSubscriptionSubscriptionChannelComponent(xpp, res)); 12599 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("end")) { 12600 res.setEndElement(parseInstant(xpp)); 12601 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("tag")) { 12602 res.getTag().add(parseCoding(xpp)); 12603 } else if (!parseDomainResourceContent(eventType, xpp, res)) 12604 unknownContent(xpp); 12605 eventType = nextNoWhitespace(xpp); 12606 } 12607 next(xpp); 12608 parseElementClose(res); 12609 return res; 12610 } 12611 12612 protected Subscription.SubscriptionChannelComponent parseSubscriptionSubscriptionChannelComponent(XmlPullParser xpp, Subscription owner) throws XmlPullParserException, IOException, FHIRFormatError { 12613 Subscription.SubscriptionChannelComponent res = new Subscription.SubscriptionChannelComponent(); 12614 parseBackboneAttributes(xpp, res); 12615 next(xpp); 12616 int eventType = nextNoWhitespace(xpp); 12617 while (eventType != XmlPullParser.END_TAG) { 12618 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 12619 res.setTypeElement(parseEnumeration(xpp, Subscription.SubscriptionChannelType.NULL, new Subscription.SubscriptionChannelTypeEnumFactory())); 12620 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 12621 res.setEndpointElement(parseUri(xpp)); 12622 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payload")) { 12623 res.setPayloadElement(parseString(xpp)); 12624 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("header")) { 12625 res.setHeaderElement(parseString(xpp)); 12626 } else if (!parseBackboneContent(eventType, xpp, res)) 12627 unknownContent(xpp); 12628 eventType = nextNoWhitespace(xpp); 12629 } 12630 next(xpp); 12631 parseElementClose(res); 12632 return res; 12633 } 12634 12635 protected Substance parseSubstance(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12636 Substance res = new Substance(); 12637 parseDomainResourceAttributes(xpp, res); 12638 next(xpp); 12639 int eventType = nextNoWhitespace(xpp); 12640 while (eventType != XmlPullParser.END_TAG) { 12641 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 12642 res.getIdentifier().add(parseIdentifier(xpp)); 12643 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 12644 res.getCategory().add(parseCodeableConcept(xpp)); 12645 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 12646 res.setCode(parseCodeableConcept(xpp)); 12647 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 12648 res.setDescriptionElement(parseString(xpp)); 12649 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instance")) { 12650 res.getInstance().add(parseSubstanceSubstanceInstanceComponent(xpp, res)); 12651 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ingredient")) { 12652 res.getIngredient().add(parseSubstanceSubstanceIngredientComponent(xpp, res)); 12653 } else if (!parseDomainResourceContent(eventType, xpp, res)) 12654 unknownContent(xpp); 12655 eventType = nextNoWhitespace(xpp); 12656 } 12657 next(xpp); 12658 parseElementClose(res); 12659 return res; 12660 } 12661 12662 protected Substance.SubstanceInstanceComponent parseSubstanceSubstanceInstanceComponent(XmlPullParser xpp, Substance owner) throws XmlPullParserException, IOException, FHIRFormatError { 12663 Substance.SubstanceInstanceComponent res = new Substance.SubstanceInstanceComponent(); 12664 parseBackboneAttributes(xpp, res); 12665 next(xpp); 12666 int eventType = nextNoWhitespace(xpp); 12667 while (eventType != XmlPullParser.END_TAG) { 12668 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 12669 res.setIdentifier(parseIdentifier(xpp)); 12670 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expiry")) { 12671 res.setExpiryElement(parseDateTime(xpp)); 12672 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 12673 res.setQuantity(parseSimpleQuantity(xpp)); 12674 } else if (!parseBackboneContent(eventType, xpp, res)) 12675 unknownContent(xpp); 12676 eventType = nextNoWhitespace(xpp); 12677 } 12678 next(xpp); 12679 parseElementClose(res); 12680 return res; 12681 } 12682 12683 protected Substance.SubstanceIngredientComponent parseSubstanceSubstanceIngredientComponent(XmlPullParser xpp, Substance owner) throws XmlPullParserException, IOException, FHIRFormatError { 12684 Substance.SubstanceIngredientComponent res = new Substance.SubstanceIngredientComponent(); 12685 parseBackboneAttributes(xpp, res); 12686 next(xpp); 12687 int eventType = nextNoWhitespace(xpp); 12688 while (eventType != XmlPullParser.END_TAG) { 12689 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 12690 res.setQuantity(parseRatio(xpp)); 12691 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("substance")) { 12692 res.setSubstance(parseReference(xpp)); 12693 } else if (!parseBackboneContent(eventType, xpp, res)) 12694 unknownContent(xpp); 12695 eventType = nextNoWhitespace(xpp); 12696 } 12697 next(xpp); 12698 parseElementClose(res); 12699 return res; 12700 } 12701 12702 protected SupplyDelivery parseSupplyDelivery(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12703 SupplyDelivery res = new SupplyDelivery(); 12704 parseDomainResourceAttributes(xpp, res); 12705 next(xpp); 12706 int eventType = nextNoWhitespace(xpp); 12707 while (eventType != XmlPullParser.END_TAG) { 12708 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 12709 res.setIdentifier(parseIdentifier(xpp)); 12710 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 12711 res.setStatusElement(parseEnumeration(xpp, SupplyDelivery.SupplyDeliveryStatus.NULL, new SupplyDelivery.SupplyDeliveryStatusEnumFactory())); 12712 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 12713 res.setPatient(parseReference(xpp)); 12714 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 12715 res.setType(parseCodeableConcept(xpp)); 12716 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 12717 res.setQuantity(parseSimpleQuantity(xpp)); 12718 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("suppliedItem")) { 12719 res.setSuppliedItem(parseReference(xpp)); 12720 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supplier")) { 12721 res.setSupplier(parseReference(xpp)); 12722 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("whenPrepared")) { 12723 res.setWhenPrepared(parsePeriod(xpp)); 12724 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("time")) { 12725 res.setTimeElement(parseDateTime(xpp)); 12726 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 12727 res.setDestination(parseReference(xpp)); 12728 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("receiver")) { 12729 res.getReceiver().add(parseReference(xpp)); 12730 } else if (!parseDomainResourceContent(eventType, xpp, res)) 12731 unknownContent(xpp); 12732 eventType = nextNoWhitespace(xpp); 12733 } 12734 next(xpp); 12735 parseElementClose(res); 12736 return res; 12737 } 12738 12739 protected SupplyRequest parseSupplyRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12740 SupplyRequest res = new SupplyRequest(); 12741 parseDomainResourceAttributes(xpp, res); 12742 next(xpp); 12743 int eventType = nextNoWhitespace(xpp); 12744 while (eventType != XmlPullParser.END_TAG) { 12745 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 12746 res.setPatient(parseReference(xpp)); 12747 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 12748 res.setSource(parseReference(xpp)); 12749 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 12750 res.setDateElement(parseDateTime(xpp)); 12751 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 12752 res.setIdentifier(parseIdentifier(xpp)); 12753 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 12754 res.setStatusElement(parseEnumeration(xpp, SupplyRequest.SupplyRequestStatus.NULL, new SupplyRequest.SupplyRequestStatusEnumFactory())); 12755 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 12756 res.setKind(parseCodeableConcept(xpp)); 12757 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orderedItem")) { 12758 res.setOrderedItem(parseReference(xpp)); 12759 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supplier")) { 12760 res.getSupplier().add(parseReference(xpp)); 12761 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "reason")) { 12762 res.setReason(parseType("reason", xpp)); 12763 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("when")) { 12764 res.setWhen(parseSupplyRequestSupplyRequestWhenComponent(xpp, res)); 12765 } else if (!parseDomainResourceContent(eventType, xpp, res)) 12766 unknownContent(xpp); 12767 eventType = nextNoWhitespace(xpp); 12768 } 12769 next(xpp); 12770 parseElementClose(res); 12771 return res; 12772 } 12773 12774 protected SupplyRequest.SupplyRequestWhenComponent parseSupplyRequestSupplyRequestWhenComponent(XmlPullParser xpp, SupplyRequest owner) throws XmlPullParserException, IOException, FHIRFormatError { 12775 SupplyRequest.SupplyRequestWhenComponent res = new SupplyRequest.SupplyRequestWhenComponent(); 12776 parseBackboneAttributes(xpp, res); 12777 next(xpp); 12778 int eventType = nextNoWhitespace(xpp); 12779 while (eventType != XmlPullParser.END_TAG) { 12780 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 12781 res.setCode(parseCodeableConcept(xpp)); 12782 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("schedule")) { 12783 res.setSchedule(parseTiming(xpp)); 12784 } else if (!parseBackboneContent(eventType, xpp, res)) 12785 unknownContent(xpp); 12786 eventType = nextNoWhitespace(xpp); 12787 } 12788 next(xpp); 12789 parseElementClose(res); 12790 return res; 12791 } 12792 12793 protected Task parseTask(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12794 Task res = new Task(); 12795 parseDomainResourceAttributes(xpp, res); 12796 next(xpp); 12797 int eventType = nextNoWhitespace(xpp); 12798 while (eventType != XmlPullParser.END_TAG) { 12799 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 12800 res.setIdentifier(parseIdentifier(xpp)); 12801 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 12802 res.setType(parseCodeableConcept(xpp)); 12803 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 12804 res.setDescriptionElement(parseString(xpp)); 12805 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performerType")) { 12806 res.getPerformerType().add(parseCoding(xpp)); 12807 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 12808 res.setPriorityElement(parseEnumeration(xpp, Task.TaskPriority.NULL, new Task.TaskPriorityEnumFactory())); 12809 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 12810 res.setStatusElement(parseEnumeration(xpp, Task.TaskStatus.NULL, new Task.TaskStatusEnumFactory())); 12811 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("failureReason")) { 12812 res.setFailureReason(parseCodeableConcept(xpp)); 12813 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 12814 res.setSubject(parseReference(xpp)); 12815 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("for")) { 12816 res.setFor(parseReference(xpp)); 12817 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 12818 res.setDefinitionElement(parseUri(xpp)); 12819 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 12820 res.setCreatedElement(parseDateTime(xpp)); 12821 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastModified")) { 12822 res.setLastModifiedElement(parseDateTime(xpp)); 12823 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("creator")) { 12824 res.setCreator(parseReference(xpp)); 12825 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("owner")) { 12826 res.setOwner(parseReference(xpp)); 12827 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parent")) { 12828 res.setParent(parseReference(xpp)); 12829 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("input")) { 12830 res.getInput().add(parseTaskParameterComponent(xpp, res)); 12831 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("output")) { 12832 res.getOutput().add(parseTaskTaskOutputComponent(xpp, res)); 12833 } else if (!parseDomainResourceContent(eventType, xpp, res)) 12834 unknownContent(xpp); 12835 eventType = nextNoWhitespace(xpp); 12836 } 12837 next(xpp); 12838 parseElementClose(res); 12839 return res; 12840 } 12841 12842 protected Task.ParameterComponent parseTaskParameterComponent(XmlPullParser xpp, Task owner) throws XmlPullParserException, IOException, FHIRFormatError { 12843 Task.ParameterComponent res = new Task.ParameterComponent(); 12844 parseBackboneAttributes(xpp, res); 12845 next(xpp); 12846 int eventType = nextNoWhitespace(xpp); 12847 while (eventType != XmlPullParser.END_TAG) { 12848 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 12849 res.setNameElement(parseString(xpp)); 12850 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 12851 res.setValue(parseType("value", xpp)); 12852 } else if (!parseBackboneContent(eventType, xpp, res)) 12853 unknownContent(xpp); 12854 eventType = nextNoWhitespace(xpp); 12855 } 12856 next(xpp); 12857 parseElementClose(res); 12858 return res; 12859 } 12860 12861 protected Task.TaskOutputComponent parseTaskTaskOutputComponent(XmlPullParser xpp, Task owner) throws XmlPullParserException, IOException, FHIRFormatError { 12862 Task.TaskOutputComponent res = new Task.TaskOutputComponent(); 12863 parseBackboneAttributes(xpp, res); 12864 next(xpp); 12865 int eventType = nextNoWhitespace(xpp); 12866 while (eventType != XmlPullParser.END_TAG) { 12867 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 12868 res.setNameElement(parseString(xpp)); 12869 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 12870 res.setValue(parseType("value", xpp)); 12871 } else if (!parseBackboneContent(eventType, xpp, res)) 12872 unknownContent(xpp); 12873 eventType = nextNoWhitespace(xpp); 12874 } 12875 next(xpp); 12876 parseElementClose(res); 12877 return res; 12878 } 12879 12880 protected TestScript parseTestScript(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12881 TestScript res = new TestScript(); 12882 parseDomainResourceAttributes(xpp, res); 12883 next(xpp); 12884 int eventType = nextNoWhitespace(xpp); 12885 while (eventType != XmlPullParser.END_TAG) { 12886 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 12887 res.setUrlElement(parseUri(xpp)); 12888 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 12889 res.setVersionElement(parseString(xpp)); 12890 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 12891 res.setNameElement(parseString(xpp)); 12892 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 12893 res.setStatusElement(parseEnumeration(xpp, Enumerations.ConformanceResourceStatus.NULL, new Enumerations.ConformanceResourceStatusEnumFactory())); 12894 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 12895 res.setIdentifier(parseIdentifier(xpp)); 12896 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 12897 res.setExperimentalElement(parseBoolean(xpp)); 12898 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 12899 res.setPublisherElement(parseString(xpp)); 12900 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 12901 res.getContact().add(parseTestScriptTestScriptContactComponent(xpp, res)); 12902 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 12903 res.setDateElement(parseDateTime(xpp)); 12904 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 12905 res.setDescriptionElement(parseString(xpp)); 12906 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 12907 res.getUseContext().add(parseCodeableConcept(xpp)); 12908 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirements")) { 12909 res.setRequirementsElement(parseString(xpp)); 12910 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 12911 res.setCopyrightElement(parseString(xpp)); 12912 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("origin")) { 12913 res.getOrigin().add(parseTestScriptTestScriptOriginComponent(xpp, res)); 12914 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 12915 res.getDestination().add(parseTestScriptTestScriptDestinationComponent(xpp, res)); 12916 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("metadata")) { 12917 res.setMetadata(parseTestScriptTestScriptMetadataComponent(xpp, res)); 12918 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fixture")) { 12919 res.getFixture().add(parseTestScriptTestScriptFixtureComponent(xpp, res)); 12920 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 12921 res.getProfile().add(parseReference(xpp)); 12922 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("variable")) { 12923 res.getVariable().add(parseTestScriptTestScriptVariableComponent(xpp, res)); 12924 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rule")) { 12925 res.getRule().add(parseTestScriptTestScriptRuleComponent(xpp, res)); 12926 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleset")) { 12927 res.getRuleset().add(parseTestScriptTestScriptRulesetComponent(xpp, res)); 12928 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("setup")) { 12929 res.setSetup(parseTestScriptTestScriptSetupComponent(xpp, res)); 12930 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("test")) { 12931 res.getTest().add(parseTestScriptTestScriptTestComponent(xpp, res)); 12932 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("teardown")) { 12933 res.setTeardown(parseTestScriptTestScriptTeardownComponent(xpp, res)); 12934 } else if (!parseDomainResourceContent(eventType, xpp, res)) 12935 unknownContent(xpp); 12936 eventType = nextNoWhitespace(xpp); 12937 } 12938 next(xpp); 12939 parseElementClose(res); 12940 return res; 12941 } 12942 12943 protected TestScript.TestScriptContactComponent parseTestScriptTestScriptContactComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 12944 TestScript.TestScriptContactComponent res = new TestScript.TestScriptContactComponent(); 12945 parseBackboneAttributes(xpp, res); 12946 next(xpp); 12947 int eventType = nextNoWhitespace(xpp); 12948 while (eventType != XmlPullParser.END_TAG) { 12949 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 12950 res.setNameElement(parseString(xpp)); 12951 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 12952 res.getTelecom().add(parseContactPoint(xpp)); 12953 } else if (!parseBackboneContent(eventType, xpp, res)) 12954 unknownContent(xpp); 12955 eventType = nextNoWhitespace(xpp); 12956 } 12957 next(xpp); 12958 parseElementClose(res); 12959 return res; 12960 } 12961 12962 protected TestScript.TestScriptOriginComponent parseTestScriptTestScriptOriginComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 12963 TestScript.TestScriptOriginComponent res = new TestScript.TestScriptOriginComponent(); 12964 parseBackboneAttributes(xpp, res); 12965 next(xpp); 12966 int eventType = nextNoWhitespace(xpp); 12967 while (eventType != XmlPullParser.END_TAG) { 12968 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("index")) { 12969 res.setIndexElement(parseInteger(xpp)); 12970 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 12971 res.setProfile(parseCoding(xpp)); 12972 } else if (!parseBackboneContent(eventType, xpp, res)) 12973 unknownContent(xpp); 12974 eventType = nextNoWhitespace(xpp); 12975 } 12976 next(xpp); 12977 parseElementClose(res); 12978 return res; 12979 } 12980 12981 protected TestScript.TestScriptDestinationComponent parseTestScriptTestScriptDestinationComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 12982 TestScript.TestScriptDestinationComponent res = new TestScript.TestScriptDestinationComponent(); 12983 parseBackboneAttributes(xpp, res); 12984 next(xpp); 12985 int eventType = nextNoWhitespace(xpp); 12986 while (eventType != XmlPullParser.END_TAG) { 12987 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("index")) { 12988 res.setIndexElement(parseInteger(xpp)); 12989 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 12990 res.setProfile(parseCoding(xpp)); 12991 } else if (!parseBackboneContent(eventType, xpp, res)) 12992 unknownContent(xpp); 12993 eventType = nextNoWhitespace(xpp); 12994 } 12995 next(xpp); 12996 parseElementClose(res); 12997 return res; 12998 } 12999 13000 protected TestScript.TestScriptMetadataComponent parseTestScriptTestScriptMetadataComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 13001 TestScript.TestScriptMetadataComponent res = new TestScript.TestScriptMetadataComponent(); 13002 parseBackboneAttributes(xpp, res); 13003 next(xpp); 13004 int eventType = nextNoWhitespace(xpp); 13005 while (eventType != XmlPullParser.END_TAG) { 13006 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 13007 res.getLink().add(parseTestScriptTestScriptMetadataLinkComponent(xpp, owner)); 13008 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("capability")) { 13009 res.getCapability().add(parseTestScriptTestScriptMetadataCapabilityComponent(xpp, owner)); 13010 } else if (!parseBackboneContent(eventType, xpp, res)) 13011 unknownContent(xpp); 13012 eventType = nextNoWhitespace(xpp); 13013 } 13014 next(xpp); 13015 parseElementClose(res); 13016 return res; 13017 } 13018 13019 protected TestScript.TestScriptMetadataLinkComponent parseTestScriptTestScriptMetadataLinkComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 13020 TestScript.TestScriptMetadataLinkComponent res = new TestScript.TestScriptMetadataLinkComponent(); 13021 parseBackboneAttributes(xpp, res); 13022 next(xpp); 13023 int eventType = nextNoWhitespace(xpp); 13024 while (eventType != XmlPullParser.END_TAG) { 13025 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 13026 res.setUrlElement(parseUri(xpp)); 13027 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 13028 res.setDescriptionElement(parseString(xpp)); 13029 } else if (!parseBackboneContent(eventType, xpp, res)) 13030 unknownContent(xpp); 13031 eventType = nextNoWhitespace(xpp); 13032 } 13033 next(xpp); 13034 parseElementClose(res); 13035 return res; 13036 } 13037 13038 protected TestScript.TestScriptMetadataCapabilityComponent parseTestScriptTestScriptMetadataCapabilityComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 13039 TestScript.TestScriptMetadataCapabilityComponent res = new TestScript.TestScriptMetadataCapabilityComponent(); 13040 parseBackboneAttributes(xpp, res); 13041 next(xpp); 13042 int eventType = nextNoWhitespace(xpp); 13043 while (eventType != XmlPullParser.END_TAG) { 13044 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("required")) { 13045 res.setRequiredElement(parseBoolean(xpp)); 13046 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("validated")) { 13047 res.setValidatedElement(parseBoolean(xpp)); 13048 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 13049 res.setDescriptionElement(parseString(xpp)); 13050 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("origin")) { 13051 res.getOrigin().add(parseInteger(xpp)); 13052 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 13053 res.setDestinationElement(parseInteger(xpp)); 13054 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 13055 res.getLink().add(parseUri(xpp)); 13056 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("conformance")) { 13057 res.setConformance(parseReference(xpp)); 13058 } else if (!parseBackboneContent(eventType, xpp, res)) 13059 unknownContent(xpp); 13060 eventType = nextNoWhitespace(xpp); 13061 } 13062 next(xpp); 13063 parseElementClose(res); 13064 return res; 13065 } 13066 13067 protected TestScript.TestScriptFixtureComponent parseTestScriptTestScriptFixtureComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 13068 TestScript.TestScriptFixtureComponent res = new TestScript.TestScriptFixtureComponent(); 13069 parseBackboneAttributes(xpp, res); 13070 next(xpp); 13071 int eventType = nextNoWhitespace(xpp); 13072 while (eventType != XmlPullParser.END_TAG) { 13073 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("autocreate")) { 13074 res.setAutocreateElement(parseBoolean(xpp)); 13075 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("autodelete")) { 13076 res.setAutodeleteElement(parseBoolean(xpp)); 13077 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 13078 res.setResource(parseReference(xpp)); 13079 } else if (!parseBackboneContent(eventType, xpp, res)) 13080 unknownContent(xpp); 13081 eventType = nextNoWhitespace(xpp); 13082 } 13083 next(xpp); 13084 parseElementClose(res); 13085 return res; 13086 } 13087 13088 protected TestScript.TestScriptVariableComponent parseTestScriptTestScriptVariableComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 13089 TestScript.TestScriptVariableComponent res = new TestScript.TestScriptVariableComponent(); 13090 parseBackboneAttributes(xpp, res); 13091 next(xpp); 13092 int eventType = nextNoWhitespace(xpp); 13093 while (eventType != XmlPullParser.END_TAG) { 13094 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 13095 res.setNameElement(parseString(xpp)); 13096 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("defaultValue")) { 13097 res.setDefaultValueElement(parseString(xpp)); 13098 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("headerField")) { 13099 res.setHeaderFieldElement(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("sourceId")) { 13103 res.setSourceIdElement(parseId(xpp)); 13104 } else if (!parseBackboneContent(eventType, xpp, res)) 13105 unknownContent(xpp); 13106 eventType = nextNoWhitespace(xpp); 13107 } 13108 next(xpp); 13109 parseElementClose(res); 13110 return res; 13111 } 13112 13113 protected TestScript.TestScriptRuleComponent parseTestScriptTestScriptRuleComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 13114 TestScript.TestScriptRuleComponent res = new TestScript.TestScriptRuleComponent(); 13115 parseBackboneAttributes(xpp, res); 13116 next(xpp); 13117 int eventType = nextNoWhitespace(xpp); 13118 while (eventType != XmlPullParser.END_TAG) { 13119 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 13120 res.setResource(parseReference(xpp)); 13121 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("param")) { 13122 res.getParam().add(parseTestScriptTestScriptRuleParamComponent(xpp, owner)); 13123 } else if (!parseBackboneContent(eventType, xpp, res)) 13124 unknownContent(xpp); 13125 eventType = nextNoWhitespace(xpp); 13126 } 13127 next(xpp); 13128 parseElementClose(res); 13129 return res; 13130 } 13131 13132 protected TestScript.TestScriptRuleParamComponent parseTestScriptTestScriptRuleParamComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 13133 TestScript.TestScriptRuleParamComponent res = new TestScript.TestScriptRuleParamComponent(); 13134 parseBackboneAttributes(xpp, res); 13135 next(xpp); 13136 int eventType = nextNoWhitespace(xpp); 13137 while (eventType != XmlPullParser.END_TAG) { 13138 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 13139 res.setNameElement(parseString(xpp)); 13140 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 13141 res.setValueElement(parseString(xpp)); 13142 } else if (!parseBackboneContent(eventType, xpp, res)) 13143 unknownContent(xpp); 13144 eventType = nextNoWhitespace(xpp); 13145 } 13146 next(xpp); 13147 parseElementClose(res); 13148 return res; 13149 } 13150 13151 protected TestScript.TestScriptRulesetComponent parseTestScriptTestScriptRulesetComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 13152 TestScript.TestScriptRulesetComponent res = new TestScript.TestScriptRulesetComponent(); 13153 parseBackboneAttributes(xpp, res); 13154 next(xpp); 13155 int eventType = nextNoWhitespace(xpp); 13156 while (eventType != XmlPullParser.END_TAG) { 13157 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 13158 res.setResource(parseReference(xpp)); 13159 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rule")) { 13160 res.getRule().add(parseTestScriptTestScriptRulesetRuleComponent(xpp, owner)); 13161 } else if (!parseBackboneContent(eventType, xpp, res)) 13162 unknownContent(xpp); 13163 eventType = nextNoWhitespace(xpp); 13164 } 13165 next(xpp); 13166 parseElementClose(res); 13167 return res; 13168 } 13169 13170 protected TestScript.TestScriptRulesetRuleComponent parseTestScriptTestScriptRulesetRuleComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 13171 TestScript.TestScriptRulesetRuleComponent res = new TestScript.TestScriptRulesetRuleComponent(); 13172 parseBackboneAttributes(xpp, res); 13173 next(xpp); 13174 int eventType = nextNoWhitespace(xpp); 13175 while (eventType != XmlPullParser.END_TAG) { 13176 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleId")) { 13177 res.setRuleIdElement(parseId(xpp)); 13178 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("param")) { 13179 res.getParam().add(parseTestScriptTestScriptRulesetRuleParamComponent(xpp, owner)); 13180 } else if (!parseBackboneContent(eventType, xpp, res)) 13181 unknownContent(xpp); 13182 eventType = nextNoWhitespace(xpp); 13183 } 13184 next(xpp); 13185 parseElementClose(res); 13186 return res; 13187 } 13188 13189 protected TestScript.TestScriptRulesetRuleParamComponent parseTestScriptTestScriptRulesetRuleParamComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 13190 TestScript.TestScriptRulesetRuleParamComponent res = new TestScript.TestScriptRulesetRuleParamComponent(); 13191 parseBackboneAttributes(xpp, res); 13192 next(xpp); 13193 int eventType = nextNoWhitespace(xpp); 13194 while (eventType != XmlPullParser.END_TAG) { 13195 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 13196 res.setNameElement(parseString(xpp)); 13197 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 13198 res.setValueElement(parseString(xpp)); 13199 } else if (!parseBackboneContent(eventType, xpp, res)) 13200 unknownContent(xpp); 13201 eventType = nextNoWhitespace(xpp); 13202 } 13203 next(xpp); 13204 parseElementClose(res); 13205 return res; 13206 } 13207 13208 protected TestScript.TestScriptSetupComponent parseTestScriptTestScriptSetupComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 13209 TestScript.TestScriptSetupComponent res = new TestScript.TestScriptSetupComponent(); 13210 parseBackboneAttributes(xpp, res); 13211 next(xpp); 13212 int eventType = nextNoWhitespace(xpp); 13213 while (eventType != XmlPullParser.END_TAG) { 13214 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("metadata")) { 13215 res.setMetadata(parseTestScriptTestScriptMetadataComponent(xpp, owner)); 13216 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 13217 res.getAction().add(parseTestScriptSetupActionComponent(xpp, owner)); 13218 } else if (!parseBackboneContent(eventType, xpp, res)) 13219 unknownContent(xpp); 13220 eventType = nextNoWhitespace(xpp); 13221 } 13222 next(xpp); 13223 parseElementClose(res); 13224 return res; 13225 } 13226 13227 protected TestScript.SetupActionComponent parseTestScriptSetupActionComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 13228 TestScript.SetupActionComponent res = new TestScript.SetupActionComponent(); 13229 parseBackboneAttributes(xpp, res); 13230 next(xpp); 13231 int eventType = nextNoWhitespace(xpp); 13232 while (eventType != XmlPullParser.END_TAG) { 13233 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operation")) { 13234 res.setOperation(parseTestScriptSetupActionOperationComponent(xpp, owner)); 13235 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assert")) { 13236 res.setAssert(parseTestScriptSetupActionAssertComponent(xpp, owner)); 13237 } else if (!parseBackboneContent(eventType, xpp, res)) 13238 unknownContent(xpp); 13239 eventType = nextNoWhitespace(xpp); 13240 } 13241 next(xpp); 13242 parseElementClose(res); 13243 return res; 13244 } 13245 13246 protected TestScript.SetupActionOperationComponent parseTestScriptSetupActionOperationComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 13247 TestScript.SetupActionOperationComponent res = new TestScript.SetupActionOperationComponent(); 13248 parseBackboneAttributes(xpp, res); 13249 next(xpp); 13250 int eventType = nextNoWhitespace(xpp); 13251 while (eventType != XmlPullParser.END_TAG) { 13252 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 13253 res.setType(parseCoding(xpp)); 13254 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 13255 res.setResourceElement(parseCode(xpp)); 13256 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("label")) { 13257 res.setLabelElement(parseString(xpp)); 13258 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 13259 res.setDescriptionElement(parseString(xpp)); 13260 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("accept")) { 13261 res.setAcceptElement(parseEnumeration(xpp, TestScript.ContentType.NULL, new TestScript.ContentTypeEnumFactory())); 13262 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentType")) { 13263 res.setContentTypeElement(parseEnumeration(xpp, TestScript.ContentType.NULL, new TestScript.ContentTypeEnumFactory())); 13264 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 13265 res.setDestinationElement(parseInteger(xpp)); 13266 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encodeRequestUrl")) { 13267 res.setEncodeRequestUrlElement(parseBoolean(xpp)); 13268 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("origin")) { 13269 res.setOriginElement(parseInteger(xpp)); 13270 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("params")) { 13271 res.setParamsElement(parseString(xpp)); 13272 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestHeader")) { 13273 res.getRequestHeader().add(parseTestScriptSetupActionOperationRequestHeaderComponent(xpp, owner)); 13274 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responseId")) { 13275 res.setResponseIdElement(parseId(xpp)); 13276 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sourceId")) { 13277 res.setSourceIdElement(parseId(xpp)); 13278 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("targetId")) { 13279 res.setTargetIdElement(parseId(xpp)); 13280 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 13281 res.setUrlElement(parseString(xpp)); 13282 } else if (!parseBackboneContent(eventType, xpp, res)) 13283 unknownContent(xpp); 13284 eventType = nextNoWhitespace(xpp); 13285 } 13286 next(xpp); 13287 parseElementClose(res); 13288 return res; 13289 } 13290 13291 protected TestScript.SetupActionOperationRequestHeaderComponent parseTestScriptSetupActionOperationRequestHeaderComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 13292 TestScript.SetupActionOperationRequestHeaderComponent res = new TestScript.SetupActionOperationRequestHeaderComponent(); 13293 parseBackboneAttributes(xpp, res); 13294 next(xpp); 13295 int eventType = nextNoWhitespace(xpp); 13296 while (eventType != XmlPullParser.END_TAG) { 13297 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("field")) { 13298 res.setFieldElement(parseString(xpp)); 13299 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 13300 res.setValueElement(parseString(xpp)); 13301 } else if (!parseBackboneContent(eventType, xpp, res)) 13302 unknownContent(xpp); 13303 eventType = nextNoWhitespace(xpp); 13304 } 13305 next(xpp); 13306 parseElementClose(res); 13307 return res; 13308 } 13309 13310 protected TestScript.SetupActionAssertComponent parseTestScriptSetupActionAssertComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 13311 TestScript.SetupActionAssertComponent res = new TestScript.SetupActionAssertComponent(); 13312 parseBackboneAttributes(xpp, res); 13313 next(xpp); 13314 int eventType = nextNoWhitespace(xpp); 13315 while (eventType != XmlPullParser.END_TAG) { 13316 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("label")) { 13317 res.setLabelElement(parseString(xpp)); 13318 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 13319 res.setDescriptionElement(parseString(xpp)); 13320 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("direction")) { 13321 res.setDirectionElement(parseEnumeration(xpp, TestScript.AssertionDirectionType.NULL, new TestScript.AssertionDirectionTypeEnumFactory())); 13322 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("compareToSourceId")) { 13323 res.setCompareToSourceIdElement(parseString(xpp)); 13324 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("compareToSourcePath")) { 13325 res.setCompareToSourcePathElement(parseString(xpp)); 13326 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentType")) { 13327 res.setContentTypeElement(parseEnumeration(xpp, TestScript.ContentType.NULL, new TestScript.ContentTypeEnumFactory())); 13328 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("headerField")) { 13329 res.setHeaderFieldElement(parseString(xpp)); 13330 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("minimumId")) { 13331 res.setMinimumIdElement(parseString(xpp)); 13332 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("navigationLinks")) { 13333 res.setNavigationLinksElement(parseBoolean(xpp)); 13334 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operator")) { 13335 res.setOperatorElement(parseEnumeration(xpp, TestScript.AssertionOperatorType.NULL, new TestScript.AssertionOperatorTypeEnumFactory())); 13336 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 13337 res.setPathElement(parseString(xpp)); 13338 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 13339 res.setResourceElement(parseCode(xpp)); 13340 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("response")) { 13341 res.setResponseElement(parseEnumeration(xpp, TestScript.AssertionResponseTypes.NULL, new TestScript.AssertionResponseTypesEnumFactory())); 13342 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responseCode")) { 13343 res.setResponseCodeElement(parseString(xpp)); 13344 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rule")) { 13345 res.setRule(parseTestScriptSetupActionAssertRuleComponent(xpp, owner)); 13346 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleset")) { 13347 res.setRuleset(parseTestScriptSetupActionAssertRulesetComponent(xpp, owner)); 13348 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sourceId")) { 13349 res.setSourceIdElement(parseId(xpp)); 13350 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("validateProfileId")) { 13351 res.setValidateProfileIdElement(parseId(xpp)); 13352 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 13353 res.setValueElement(parseString(xpp)); 13354 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("warningOnly")) { 13355 res.setWarningOnlyElement(parseBoolean(xpp)); 13356 } else if (!parseBackboneContent(eventType, xpp, res)) 13357 unknownContent(xpp); 13358 eventType = nextNoWhitespace(xpp); 13359 } 13360 next(xpp); 13361 parseElementClose(res); 13362 return res; 13363 } 13364 13365 protected TestScript.SetupActionAssertRuleComponent parseTestScriptSetupActionAssertRuleComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 13366 TestScript.SetupActionAssertRuleComponent res = new TestScript.SetupActionAssertRuleComponent(); 13367 parseBackboneAttributes(xpp, res); 13368 next(xpp); 13369 int eventType = nextNoWhitespace(xpp); 13370 while (eventType != XmlPullParser.END_TAG) { 13371 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleId")) { 13372 res.setRuleIdElement(parseId(xpp)); 13373 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("param")) { 13374 res.getParam().add(parseTestScriptSetupActionAssertRuleParamComponent(xpp, owner)); 13375 } else if (!parseBackboneContent(eventType, xpp, res)) 13376 unknownContent(xpp); 13377 eventType = nextNoWhitespace(xpp); 13378 } 13379 next(xpp); 13380 parseElementClose(res); 13381 return res; 13382 } 13383 13384 protected TestScript.SetupActionAssertRuleParamComponent parseTestScriptSetupActionAssertRuleParamComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 13385 TestScript.SetupActionAssertRuleParamComponent res = new TestScript.SetupActionAssertRuleParamComponent(); 13386 parseBackboneAttributes(xpp, res); 13387 next(xpp); 13388 int eventType = nextNoWhitespace(xpp); 13389 while (eventType != XmlPullParser.END_TAG) { 13390 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 13391 res.setNameElement(parseString(xpp)); 13392 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 13393 res.setValueElement(parseString(xpp)); 13394 } else if (!parseBackboneContent(eventType, xpp, res)) 13395 unknownContent(xpp); 13396 eventType = nextNoWhitespace(xpp); 13397 } 13398 next(xpp); 13399 parseElementClose(res); 13400 return res; 13401 } 13402 13403 protected TestScript.SetupActionAssertRulesetComponent parseTestScriptSetupActionAssertRulesetComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 13404 TestScript.SetupActionAssertRulesetComponent res = new TestScript.SetupActionAssertRulesetComponent(); 13405 parseBackboneAttributes(xpp, res); 13406 next(xpp); 13407 int eventType = nextNoWhitespace(xpp); 13408 while (eventType != XmlPullParser.END_TAG) { 13409 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rulesetId")) { 13410 res.setRulesetIdElement(parseId(xpp)); 13411 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rule")) { 13412 res.getRule().add(parseTestScriptSetupActionAssertRulesetRuleComponent(xpp, owner)); 13413 } else if (!parseBackboneContent(eventType, xpp, res)) 13414 unknownContent(xpp); 13415 eventType = nextNoWhitespace(xpp); 13416 } 13417 next(xpp); 13418 parseElementClose(res); 13419 return res; 13420 } 13421 13422 protected TestScript.SetupActionAssertRulesetRuleComponent parseTestScriptSetupActionAssertRulesetRuleComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 13423 TestScript.SetupActionAssertRulesetRuleComponent res = new TestScript.SetupActionAssertRulesetRuleComponent(); 13424 parseBackboneAttributes(xpp, res); 13425 next(xpp); 13426 int eventType = nextNoWhitespace(xpp); 13427 while (eventType != XmlPullParser.END_TAG) { 13428 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleId")) { 13429 res.setRuleIdElement(parseId(xpp)); 13430 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("param")) { 13431 res.getParam().add(parseTestScriptSetupActionAssertRulesetRuleParamComponent(xpp, owner)); 13432 } else if (!parseBackboneContent(eventType, xpp, res)) 13433 unknownContent(xpp); 13434 eventType = nextNoWhitespace(xpp); 13435 } 13436 next(xpp); 13437 parseElementClose(res); 13438 return res; 13439 } 13440 13441 protected TestScript.SetupActionAssertRulesetRuleParamComponent parseTestScriptSetupActionAssertRulesetRuleParamComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 13442 TestScript.SetupActionAssertRulesetRuleParamComponent res = new TestScript.SetupActionAssertRulesetRuleParamComponent(); 13443 parseBackboneAttributes(xpp, res); 13444 next(xpp); 13445 int eventType = nextNoWhitespace(xpp); 13446 while (eventType != XmlPullParser.END_TAG) { 13447 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 13448 res.setNameElement(parseString(xpp)); 13449 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 13450 res.setValueElement(parseString(xpp)); 13451 } else if (!parseBackboneContent(eventType, xpp, res)) 13452 unknownContent(xpp); 13453 eventType = nextNoWhitespace(xpp); 13454 } 13455 next(xpp); 13456 parseElementClose(res); 13457 return res; 13458 } 13459 13460 protected TestScript.TestScriptTestComponent parseTestScriptTestScriptTestComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 13461 TestScript.TestScriptTestComponent res = new TestScript.TestScriptTestComponent(); 13462 parseBackboneAttributes(xpp, res); 13463 next(xpp); 13464 int eventType = nextNoWhitespace(xpp); 13465 while (eventType != XmlPullParser.END_TAG) { 13466 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 13467 res.setNameElement(parseString(xpp)); 13468 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 13469 res.setDescriptionElement(parseString(xpp)); 13470 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("metadata")) { 13471 res.setMetadata(parseTestScriptTestScriptMetadataComponent(xpp, owner)); 13472 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 13473 res.getAction().add(parseTestScriptTestActionComponent(xpp, owner)); 13474 } else if (!parseBackboneContent(eventType, xpp, res)) 13475 unknownContent(xpp); 13476 eventType = nextNoWhitespace(xpp); 13477 } 13478 next(xpp); 13479 parseElementClose(res); 13480 return res; 13481 } 13482 13483 protected TestScript.TestActionComponent parseTestScriptTestActionComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 13484 TestScript.TestActionComponent res = new TestScript.TestActionComponent(); 13485 parseBackboneAttributes(xpp, res); 13486 next(xpp); 13487 int eventType = nextNoWhitespace(xpp); 13488 while (eventType != XmlPullParser.END_TAG) { 13489 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operation")) { 13490 res.setOperation(parseTestScriptSetupActionOperationComponent(xpp, owner)); 13491 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assert")) { 13492 res.setAssert(parseTestScriptSetupActionAssertComponent(xpp, owner)); 13493 } else if (!parseBackboneContent(eventType, xpp, res)) 13494 unknownContent(xpp); 13495 eventType = nextNoWhitespace(xpp); 13496 } 13497 next(xpp); 13498 parseElementClose(res); 13499 return res; 13500 } 13501 13502 protected TestScript.TestScriptTeardownComponent parseTestScriptTestScriptTeardownComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 13503 TestScript.TestScriptTeardownComponent res = new TestScript.TestScriptTeardownComponent(); 13504 parseBackboneAttributes(xpp, res); 13505 next(xpp); 13506 int eventType = nextNoWhitespace(xpp); 13507 while (eventType != XmlPullParser.END_TAG) { 13508 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 13509 res.getAction().add(parseTestScriptTeardownActionComponent(xpp, owner)); 13510 } else if (!parseBackboneContent(eventType, xpp, res)) 13511 unknownContent(xpp); 13512 eventType = nextNoWhitespace(xpp); 13513 } 13514 next(xpp); 13515 parseElementClose(res); 13516 return res; 13517 } 13518 13519 protected TestScript.TeardownActionComponent parseTestScriptTeardownActionComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 13520 TestScript.TeardownActionComponent res = new TestScript.TeardownActionComponent(); 13521 parseBackboneAttributes(xpp, res); 13522 next(xpp); 13523 int eventType = nextNoWhitespace(xpp); 13524 while (eventType != XmlPullParser.END_TAG) { 13525 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operation")) { 13526 res.setOperation(parseTestScriptSetupActionOperationComponent(xpp, owner)); 13527 } else if (!parseBackboneContent(eventType, xpp, res)) 13528 unknownContent(xpp); 13529 eventType = nextNoWhitespace(xpp); 13530 } 13531 next(xpp); 13532 parseElementClose(res); 13533 return res; 13534 } 13535 13536 protected ValueSet parseValueSet(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13537 ValueSet res = new ValueSet(); 13538 parseDomainResourceAttributes(xpp, res); 13539 next(xpp); 13540 int eventType = nextNoWhitespace(xpp); 13541 while (eventType != XmlPullParser.END_TAG) { 13542 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 13543 res.setUrlElement(parseUri(xpp)); 13544 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 13545 res.setIdentifier(parseIdentifier(xpp)); 13546 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 13547 res.setVersionElement(parseString(xpp)); 13548 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 13549 res.setNameElement(parseString(xpp)); 13550 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 13551 res.setStatusElement(parseEnumeration(xpp, Enumerations.ConformanceResourceStatus.NULL, new Enumerations.ConformanceResourceStatusEnumFactory())); 13552 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 13553 res.setExperimentalElement(parseBoolean(xpp)); 13554 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 13555 res.setPublisherElement(parseString(xpp)); 13556 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 13557 res.getContact().add(parseValueSetValueSetContactComponent(xpp, res)); 13558 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 13559 res.setDateElement(parseDateTime(xpp)); 13560 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lockedDate")) { 13561 res.setLockedDateElement(parseDate(xpp)); 13562 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 13563 res.setDescriptionElement(parseString(xpp)); 13564 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 13565 res.getUseContext().add(parseCodeableConcept(xpp)); 13566 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("immutable")) { 13567 res.setImmutableElement(parseBoolean(xpp)); 13568 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirements")) { 13569 res.setRequirementsElement(parseString(xpp)); 13570 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 13571 res.setCopyrightElement(parseString(xpp)); 13572 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("extensible")) { 13573 res.setExtensibleElement(parseBoolean(xpp)); 13574 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("compose")) { 13575 res.setCompose(parseValueSetValueSetComposeComponent(xpp, res)); 13576 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expansion")) { 13577 res.setExpansion(parseValueSetValueSetExpansionComponent(xpp, res)); 13578 } else if (!parseDomainResourceContent(eventType, xpp, res)) 13579 unknownContent(xpp); 13580 eventType = nextNoWhitespace(xpp); 13581 } 13582 next(xpp); 13583 parseElementClose(res); 13584 return res; 13585 } 13586 13587 protected ValueSet.ValueSetContactComponent parseValueSetValueSetContactComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 13588 ValueSet.ValueSetContactComponent res = new ValueSet.ValueSetContactComponent(); 13589 parseBackboneAttributes(xpp, res); 13590 next(xpp); 13591 int eventType = nextNoWhitespace(xpp); 13592 while (eventType != XmlPullParser.END_TAG) { 13593 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 13594 res.setNameElement(parseString(xpp)); 13595 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 13596 res.getTelecom().add(parseContactPoint(xpp)); 13597 } else if (!parseBackboneContent(eventType, xpp, res)) 13598 unknownContent(xpp); 13599 eventType = nextNoWhitespace(xpp); 13600 } 13601 next(xpp); 13602 parseElementClose(res); 13603 return res; 13604 } 13605 13606 protected ValueSet.ValueSetComposeComponent parseValueSetValueSetComposeComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 13607 ValueSet.ValueSetComposeComponent res = new ValueSet.ValueSetComposeComponent(); 13608 parseBackboneAttributes(xpp, res); 13609 next(xpp); 13610 int eventType = nextNoWhitespace(xpp); 13611 while (eventType != XmlPullParser.END_TAG) { 13612 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("import")) { 13613 res.getImport().add(parseUri(xpp)); 13614 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("include")) { 13615 res.getInclude().add(parseValueSetConceptSetComponent(xpp, owner)); 13616 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exclude")) { 13617 res.getExclude().add(parseValueSetConceptSetComponent(xpp, owner)); 13618 } else if (!parseBackboneContent(eventType, xpp, res)) 13619 unknownContent(xpp); 13620 eventType = nextNoWhitespace(xpp); 13621 } 13622 next(xpp); 13623 parseElementClose(res); 13624 return res; 13625 } 13626 13627 protected ValueSet.ConceptSetComponent parseValueSetConceptSetComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 13628 ValueSet.ConceptSetComponent res = new ValueSet.ConceptSetComponent(); 13629 parseBackboneAttributes(xpp, res); 13630 next(xpp); 13631 int eventType = nextNoWhitespace(xpp); 13632 while (eventType != XmlPullParser.END_TAG) { 13633 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 13634 res.setSystemElement(parseUri(xpp)); 13635 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 13636 res.setVersionElement(parseString(xpp)); 13637 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("concept")) { 13638 res.getConcept().add(parseValueSetConceptReferenceComponent(xpp, owner)); 13639 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("filter")) { 13640 res.getFilter().add(parseValueSetConceptSetFilterComponent(xpp, owner)); 13641 } else if (!parseBackboneContent(eventType, xpp, res)) 13642 unknownContent(xpp); 13643 eventType = nextNoWhitespace(xpp); 13644 } 13645 next(xpp); 13646 parseElementClose(res); 13647 return res; 13648 } 13649 13650 protected ValueSet.ConceptReferenceComponent parseValueSetConceptReferenceComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 13651 ValueSet.ConceptReferenceComponent res = new ValueSet.ConceptReferenceComponent(); 13652 parseBackboneAttributes(xpp, res); 13653 next(xpp); 13654 int eventType = nextNoWhitespace(xpp); 13655 while (eventType != XmlPullParser.END_TAG) { 13656 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 13657 res.setCodeElement(parseCode(xpp)); 13658 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 13659 res.setDisplayElement(parseString(xpp)); 13660 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("designation")) { 13661 res.getDesignation().add(parseValueSetConceptReferenceDesignationComponent(xpp, owner)); 13662 } else if (!parseBackboneContent(eventType, xpp, res)) 13663 unknownContent(xpp); 13664 eventType = nextNoWhitespace(xpp); 13665 } 13666 next(xpp); 13667 parseElementClose(res); 13668 return res; 13669 } 13670 13671 protected ValueSet.ConceptReferenceDesignationComponent parseValueSetConceptReferenceDesignationComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 13672 ValueSet.ConceptReferenceDesignationComponent res = new ValueSet.ConceptReferenceDesignationComponent(); 13673 parseBackboneAttributes(xpp, res); 13674 next(xpp); 13675 int eventType = nextNoWhitespace(xpp); 13676 while (eventType != XmlPullParser.END_TAG) { 13677 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 13678 res.setLanguageElement(parseCode(xpp)); 13679 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 13680 res.setUse(parseCoding(xpp)); 13681 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 13682 res.setValueElement(parseString(xpp)); 13683 } else if (!parseBackboneContent(eventType, xpp, res)) 13684 unknownContent(xpp); 13685 eventType = nextNoWhitespace(xpp); 13686 } 13687 next(xpp); 13688 parseElementClose(res); 13689 return res; 13690 } 13691 13692 protected ValueSet.ConceptSetFilterComponent parseValueSetConceptSetFilterComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 13693 ValueSet.ConceptSetFilterComponent res = new ValueSet.ConceptSetFilterComponent(); 13694 parseBackboneAttributes(xpp, res); 13695 next(xpp); 13696 int eventType = nextNoWhitespace(xpp); 13697 while (eventType != XmlPullParser.END_TAG) { 13698 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("property")) { 13699 res.setPropertyElement(parseCode(xpp)); 13700 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("op")) { 13701 res.setOpElement(parseEnumeration(xpp, ValueSet.FilterOperator.NULL, new ValueSet.FilterOperatorEnumFactory())); 13702 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 13703 res.setValueElement(parseCode(xpp)); 13704 } else if (!parseBackboneContent(eventType, xpp, res)) 13705 unknownContent(xpp); 13706 eventType = nextNoWhitespace(xpp); 13707 } 13708 next(xpp); 13709 parseElementClose(res); 13710 return res; 13711 } 13712 13713 protected ValueSet.ValueSetExpansionComponent parseValueSetValueSetExpansionComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 13714 ValueSet.ValueSetExpansionComponent res = new ValueSet.ValueSetExpansionComponent(); 13715 parseBackboneAttributes(xpp, res); 13716 next(xpp); 13717 int eventType = nextNoWhitespace(xpp); 13718 while (eventType != XmlPullParser.END_TAG) { 13719 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 13720 res.setIdentifierElement(parseUri(xpp)); 13721 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("timestamp")) { 13722 res.setTimestampElement(parseDateTime(xpp)); 13723 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("total")) { 13724 res.setTotalElement(parseInteger(xpp)); 13725 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("offset")) { 13726 res.setOffsetElement(parseInteger(xpp)); 13727 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameter")) { 13728 res.getParameter().add(parseValueSetValueSetExpansionParameterComponent(xpp, owner)); 13729 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contains")) { 13730 res.getContains().add(parseValueSetValueSetExpansionContainsComponent(xpp, owner)); 13731 } else if (!parseBackboneContent(eventType, xpp, res)) 13732 unknownContent(xpp); 13733 eventType = nextNoWhitespace(xpp); 13734 } 13735 next(xpp); 13736 parseElementClose(res); 13737 return res; 13738 } 13739 13740 protected ValueSet.ValueSetExpansionParameterComponent parseValueSetValueSetExpansionParameterComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 13741 ValueSet.ValueSetExpansionParameterComponent res = new ValueSet.ValueSetExpansionParameterComponent(); 13742 parseBackboneAttributes(xpp, res); 13743 next(xpp); 13744 int eventType = nextNoWhitespace(xpp); 13745 while (eventType != XmlPullParser.END_TAG) { 13746 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 13747 res.setNameElement(parseString(xpp)); 13748 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 13749 res.setValue(parseType("value", xpp)); 13750 } else if (!parseBackboneContent(eventType, xpp, res)) 13751 unknownContent(xpp); 13752 eventType = nextNoWhitespace(xpp); 13753 } 13754 next(xpp); 13755 parseElementClose(res); 13756 return res; 13757 } 13758 13759 protected ValueSet.ValueSetExpansionContainsComponent parseValueSetValueSetExpansionContainsComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 13760 ValueSet.ValueSetExpansionContainsComponent res = new ValueSet.ValueSetExpansionContainsComponent(); 13761 parseBackboneAttributes(xpp, res); 13762 next(xpp); 13763 int eventType = nextNoWhitespace(xpp); 13764 while (eventType != XmlPullParser.END_TAG) { 13765 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 13766 res.setSystemElement(parseUri(xpp)); 13767 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("abstract")) { 13768 res.setAbstractElement(parseBoolean(xpp)); 13769 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 13770 res.setVersionElement(parseString(xpp)); 13771 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 13772 res.setCodeElement(parseCode(xpp)); 13773 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 13774 res.setDisplayElement(parseString(xpp)); 13775 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contains")) { 13776 res.getContains().add(parseValueSetValueSetExpansionContainsComponent(xpp, owner)); 13777 } else if (!parseBackboneContent(eventType, xpp, res)) 13778 unknownContent(xpp); 13779 eventType = nextNoWhitespace(xpp); 13780 } 13781 next(xpp); 13782 parseElementClose(res); 13783 return res; 13784 } 13785 13786 protected VisionPrescription parseVisionPrescription(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13787 VisionPrescription res = new VisionPrescription(); 13788 parseDomainResourceAttributes(xpp, res); 13789 next(xpp); 13790 int eventType = nextNoWhitespace(xpp); 13791 while (eventType != XmlPullParser.END_TAG) { 13792 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 13793 res.getIdentifier().add(parseIdentifier(xpp)); 13794 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateWritten")) { 13795 res.setDateWrittenElement(parseDateTime(xpp)); 13796 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 13797 res.setPatient(parseReference(xpp)); 13798 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prescriber")) { 13799 res.setPrescriber(parseReference(xpp)); 13800 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 13801 res.setEncounter(parseReference(xpp)); 13802 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "reason")) { 13803 res.setReason(parseType("reason", xpp)); 13804 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dispense")) { 13805 res.getDispense().add(parseVisionPrescriptionVisionPrescriptionDispenseComponent(xpp, res)); 13806 } else if (!parseDomainResourceContent(eventType, xpp, res)) 13807 unknownContent(xpp); 13808 eventType = nextNoWhitespace(xpp); 13809 } 13810 next(xpp); 13811 parseElementClose(res); 13812 return res; 13813 } 13814 13815 protected VisionPrescription.VisionPrescriptionDispenseComponent parseVisionPrescriptionVisionPrescriptionDispenseComponent(XmlPullParser xpp, VisionPrescription owner) throws XmlPullParserException, IOException, FHIRFormatError { 13816 VisionPrescription.VisionPrescriptionDispenseComponent res = new VisionPrescription.VisionPrescriptionDispenseComponent(); 13817 parseBackboneAttributes(xpp, res); 13818 next(xpp); 13819 int eventType = nextNoWhitespace(xpp); 13820 while (eventType != XmlPullParser.END_TAG) { 13821 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("product")) { 13822 res.setProduct(parseCoding(xpp)); 13823 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eye")) { 13824 res.setEyeElement(parseEnumeration(xpp, VisionPrescription.VisionEyes.NULL, new VisionPrescription.VisionEyesEnumFactory())); 13825 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sphere")) { 13826 res.setSphereElement(parseDecimal(xpp)); 13827 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("cylinder")) { 13828 res.setCylinderElement(parseDecimal(xpp)); 13829 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("axis")) { 13830 res.setAxisElement(parseInteger(xpp)); 13831 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prism")) { 13832 res.setPrismElement(parseDecimal(xpp)); 13833 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("base")) { 13834 res.setBaseElement(parseEnumeration(xpp, VisionPrescription.VisionBase.NULL, new VisionPrescription.VisionBaseEnumFactory())); 13835 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("add")) { 13836 res.setAddElement(parseDecimal(xpp)); 13837 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("power")) { 13838 res.setPowerElement(parseDecimal(xpp)); 13839 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("backCurve")) { 13840 res.setBackCurveElement(parseDecimal(xpp)); 13841 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diameter")) { 13842 res.setDiameterElement(parseDecimal(xpp)); 13843 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("duration")) { 13844 res.setDuration(parseSimpleQuantity(xpp)); 13845 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("color")) { 13846 res.setColorElement(parseString(xpp)); 13847 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("brand")) { 13848 res.setBrandElement(parseString(xpp)); 13849 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notes")) { 13850 res.setNotesElement(parseString(xpp)); 13851 } else if (!parseBackboneContent(eventType, xpp, res)) 13852 unknownContent(xpp); 13853 eventType = nextNoWhitespace(xpp); 13854 } 13855 next(xpp); 13856 parseElementClose(res); 13857 return res; 13858 } 13859 13860 @Override 13861 protected Resource parseResource(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13862 if (xpp.getName().equals("Parameters")) 13863 return parseParameters(xpp); 13864 else if (xpp.getName().equals("Account")) 13865 return parseAccount(xpp); 13866 else if (xpp.getName().equals("AllergyIntolerance")) 13867 return parseAllergyIntolerance(xpp); 13868 else if (xpp.getName().equals("Appointment")) 13869 return parseAppointment(xpp); 13870 else if (xpp.getName().equals("AppointmentResponse")) 13871 return parseAppointmentResponse(xpp); 13872 else if (xpp.getName().equals("AuditEvent")) 13873 return parseAuditEvent(xpp); 13874 else if (xpp.getName().equals("Basic")) 13875 return parseBasic(xpp); 13876 else if (xpp.getName().equals("Binary")) 13877 return parseBinary(xpp); 13878 else if (xpp.getName().equals("BodySite")) 13879 return parseBodySite(xpp); 13880 else if (xpp.getName().equals("Bundle")) 13881 return parseBundle(xpp); 13882 else if (xpp.getName().equals("CarePlan")) 13883 return parseCarePlan(xpp); 13884 else if (xpp.getName().equals("CareTeam")) 13885 return parseCareTeam(xpp); 13886 else if (xpp.getName().equals("Claim")) 13887 return parseClaim(xpp); 13888 else if (xpp.getName().equals("ClaimResponse")) 13889 return parseClaimResponse(xpp); 13890 else if (xpp.getName().equals("ClinicalImpression")) 13891 return parseClinicalImpression(xpp); 13892 else if (xpp.getName().equals("CodeSystem")) 13893 return parseCodeSystem(xpp); 13894 else if (xpp.getName().equals("Communication")) 13895 return parseCommunication(xpp); 13896 else if (xpp.getName().equals("CommunicationRequest")) 13897 return parseCommunicationRequest(xpp); 13898 else if (xpp.getName().equals("CompartmentDefinition")) 13899 return parseCompartmentDefinition(xpp); 13900 else if (xpp.getName().equals("Composition")) 13901 return parseComposition(xpp); 13902 else if (xpp.getName().equals("ConceptMap")) 13903 return parseConceptMap(xpp); 13904 else if (xpp.getName().equals("Condition")) 13905 return parseCondition(xpp); 13906 else if (xpp.getName().equals("Conformance")) 13907 return parseConformance(xpp); 13908 else if (xpp.getName().equals("Contract")) 13909 return parseContract(xpp); 13910 else if (xpp.getName().equals("Coverage")) 13911 return parseCoverage(xpp); 13912 else if (xpp.getName().equals("DataElement")) 13913 return parseDataElement(xpp); 13914 else if (xpp.getName().equals("DecisionSupportRule")) 13915 return parseDecisionSupportRule(xpp); 13916 else if (xpp.getName().equals("DecisionSupportServiceModule")) 13917 return parseDecisionSupportServiceModule(xpp); 13918 else if (xpp.getName().equals("DetectedIssue")) 13919 return parseDetectedIssue(xpp); 13920 else if (xpp.getName().equals("Device")) 13921 return parseDevice(xpp); 13922 else if (xpp.getName().equals("DeviceComponent")) 13923 return parseDeviceComponent(xpp); 13924 else if (xpp.getName().equals("DeviceMetric")) 13925 return parseDeviceMetric(xpp); 13926 else if (xpp.getName().equals("DeviceUseRequest")) 13927 return parseDeviceUseRequest(xpp); 13928 else if (xpp.getName().equals("DeviceUseStatement")) 13929 return parseDeviceUseStatement(xpp); 13930 else if (xpp.getName().equals("DiagnosticOrder")) 13931 return parseDiagnosticOrder(xpp); 13932 else if (xpp.getName().equals("DiagnosticReport")) 13933 return parseDiagnosticReport(xpp); 13934 else if (xpp.getName().equals("DocumentManifest")) 13935 return parseDocumentManifest(xpp); 13936 else if (xpp.getName().equals("DocumentReference")) 13937 return parseDocumentReference(xpp); 13938 else if (xpp.getName().equals("EligibilityRequest")) 13939 return parseEligibilityRequest(xpp); 13940 else if (xpp.getName().equals("EligibilityResponse")) 13941 return parseEligibilityResponse(xpp); 13942 else if (xpp.getName().equals("Encounter")) 13943 return parseEncounter(xpp); 13944 else if (xpp.getName().equals("EnrollmentRequest")) 13945 return parseEnrollmentRequest(xpp); 13946 else if (xpp.getName().equals("EnrollmentResponse")) 13947 return parseEnrollmentResponse(xpp); 13948 else if (xpp.getName().equals("EpisodeOfCare")) 13949 return parseEpisodeOfCare(xpp); 13950 else if (xpp.getName().equals("ExpansionProfile")) 13951 return parseExpansionProfile(xpp); 13952 else if (xpp.getName().equals("ExplanationOfBenefit")) 13953 return parseExplanationOfBenefit(xpp); 13954 else if (xpp.getName().equals("FamilyMemberHistory")) 13955 return parseFamilyMemberHistory(xpp); 13956 else if (xpp.getName().equals("Flag")) 13957 return parseFlag(xpp); 13958 else if (xpp.getName().equals("Goal")) 13959 return parseGoal(xpp); 13960 else if (xpp.getName().equals("Group")) 13961 return parseGroup(xpp); 13962 else if (xpp.getName().equals("GuidanceResponse")) 13963 return parseGuidanceResponse(xpp); 13964 else if (xpp.getName().equals("HealthcareService")) 13965 return parseHealthcareService(xpp); 13966 else if (xpp.getName().equals("ImagingExcerpt")) 13967 return parseImagingExcerpt(xpp); 13968 else if (xpp.getName().equals("ImagingObjectSelection")) 13969 return parseImagingObjectSelection(xpp); 13970 else if (xpp.getName().equals("ImagingStudy")) 13971 return parseImagingStudy(xpp); 13972 else if (xpp.getName().equals("Immunization")) 13973 return parseImmunization(xpp); 13974 else if (xpp.getName().equals("ImmunizationRecommendation")) 13975 return parseImmunizationRecommendation(xpp); 13976 else if (xpp.getName().equals("ImplementationGuide")) 13977 return parseImplementationGuide(xpp); 13978 else if (xpp.getName().equals("Library")) 13979 return parseLibrary(xpp); 13980 else if (xpp.getName().equals("Linkage")) 13981 return parseLinkage(xpp); 13982 else if (xpp.getName().equals("List")) 13983 return parseListResource(xpp); 13984 else if (xpp.getName().equals("Location")) 13985 return parseLocation(xpp); 13986 else if (xpp.getName().equals("Measure")) 13987 return parseMeasure(xpp); 13988 else if (xpp.getName().equals("MeasureReport")) 13989 return parseMeasureReport(xpp); 13990 else if (xpp.getName().equals("Media")) 13991 return parseMedia(xpp); 13992 else if (xpp.getName().equals("Medication")) 13993 return parseMedication(xpp); 13994 else if (xpp.getName().equals("MedicationAdministration")) 13995 return parseMedicationAdministration(xpp); 13996 else if (xpp.getName().equals("MedicationDispense")) 13997 return parseMedicationDispense(xpp); 13998 else if (xpp.getName().equals("MedicationOrder")) 13999 return parseMedicationOrder(xpp); 14000 else if (xpp.getName().equals("MedicationStatement")) 14001 return parseMedicationStatement(xpp); 14002 else if (xpp.getName().equals("MessageHeader")) 14003 return parseMessageHeader(xpp); 14004 else if (xpp.getName().equals("ModuleDefinition")) 14005 return parseModuleDefinition(xpp); 14006 else if (xpp.getName().equals("NamingSystem")) 14007 return parseNamingSystem(xpp); 14008 else if (xpp.getName().equals("NutritionOrder")) 14009 return parseNutritionOrder(xpp); 14010 else if (xpp.getName().equals("Observation")) 14011 return parseObservation(xpp); 14012 else if (xpp.getName().equals("OperationDefinition")) 14013 return parseOperationDefinition(xpp); 14014 else if (xpp.getName().equals("OperationOutcome")) 14015 return parseOperationOutcome(xpp); 14016 else if (xpp.getName().equals("Order")) 14017 return parseOrder(xpp); 14018 else if (xpp.getName().equals("OrderResponse")) 14019 return parseOrderResponse(xpp); 14020 else if (xpp.getName().equals("OrderSet")) 14021 return parseOrderSet(xpp); 14022 else if (xpp.getName().equals("Organization")) 14023 return parseOrganization(xpp); 14024 else if (xpp.getName().equals("Patient")) 14025 return parsePatient(xpp); 14026 else if (xpp.getName().equals("PaymentNotice")) 14027 return parsePaymentNotice(xpp); 14028 else if (xpp.getName().equals("PaymentReconciliation")) 14029 return parsePaymentReconciliation(xpp); 14030 else if (xpp.getName().equals("Person")) 14031 return parsePerson(xpp); 14032 else if (xpp.getName().equals("Practitioner")) 14033 return parsePractitioner(xpp); 14034 else if (xpp.getName().equals("PractitionerRole")) 14035 return parsePractitionerRole(xpp); 14036 else if (xpp.getName().equals("Procedure")) 14037 return parseProcedure(xpp); 14038 else if (xpp.getName().equals("ProcedureRequest")) 14039 return parseProcedureRequest(xpp); 14040 else if (xpp.getName().equals("ProcessRequest")) 14041 return parseProcessRequest(xpp); 14042 else if (xpp.getName().equals("ProcessResponse")) 14043 return parseProcessResponse(xpp); 14044 else if (xpp.getName().equals("Protocol")) 14045 return parseProtocol(xpp); 14046 else if (xpp.getName().equals("Provenance")) 14047 return parseProvenance(xpp); 14048 else if (xpp.getName().equals("Questionnaire")) 14049 return parseQuestionnaire(xpp); 14050 else if (xpp.getName().equals("QuestionnaireResponse")) 14051 return parseQuestionnaireResponse(xpp); 14052 else if (xpp.getName().equals("ReferralRequest")) 14053 return parseReferralRequest(xpp); 14054 else if (xpp.getName().equals("RelatedPerson")) 14055 return parseRelatedPerson(xpp); 14056 else if (xpp.getName().equals("RiskAssessment")) 14057 return parseRiskAssessment(xpp); 14058 else if (xpp.getName().equals("Schedule")) 14059 return parseSchedule(xpp); 14060 else if (xpp.getName().equals("SearchParameter")) 14061 return parseSearchParameter(xpp); 14062 else if (xpp.getName().equals("Sequence")) 14063 return parseSequence(xpp); 14064 else if (xpp.getName().equals("Slot")) 14065 return parseSlot(xpp); 14066 else if (xpp.getName().equals("Specimen")) 14067 return parseSpecimen(xpp); 14068 else if (xpp.getName().equals("StructureDefinition")) 14069 return parseStructureDefinition(xpp); 14070 else if (xpp.getName().equals("StructureMap")) 14071 return parseStructureMap(xpp); 14072 else if (xpp.getName().equals("Subscription")) 14073 return parseSubscription(xpp); 14074 else if (xpp.getName().equals("Substance")) 14075 return parseSubstance(xpp); 14076 else if (xpp.getName().equals("SupplyDelivery")) 14077 return parseSupplyDelivery(xpp); 14078 else if (xpp.getName().equals("SupplyRequest")) 14079 return parseSupplyRequest(xpp); 14080 else if (xpp.getName().equals("Task")) 14081 return parseTask(xpp); 14082 else if (xpp.getName().equals("TestScript")) 14083 return parseTestScript(xpp); 14084 else if (xpp.getName().equals("ValueSet")) 14085 return parseValueSet(xpp); 14086 else if (xpp.getName().equals("VisionPrescription")) 14087 return parseVisionPrescription(xpp); 14088 else if (xpp.getName().equals("Binary")) 14089 return parseBinary(xpp); 14090 throw new FHIRFormatError("Unknown resource type "+xpp.getName()+""); 14091 } 14092 14093 protected Type parseType(String prefix, XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14094 if (xpp.getName().equals(prefix+"markdown")) 14095 return parseMarkdown(xpp); 14096 else if (xpp.getName().equals(prefix+"integer")) 14097 return parseInteger(xpp); 14098 else if (xpp.getName().equals(prefix+"dateTime")) 14099 return parseDateTime(xpp); 14100 else if (xpp.getName().equals(prefix+"unsignedInt")) 14101 return parseUnsignedInt(xpp); 14102 else if (xpp.getName().equals(prefix+"code")) 14103 return parseCode(xpp); 14104 else if (xpp.getName().equals(prefix+"date")) 14105 return parseDate(xpp); 14106 else if (xpp.getName().equals(prefix+"decimal")) 14107 return parseDecimal(xpp); 14108 else if (xpp.getName().equals(prefix+"uri")) 14109 return parseUri(xpp); 14110 else if (xpp.getName().equals(prefix+"id")) 14111 return parseId(xpp); 14112 else if (xpp.getName().equals(prefix+"base64Binary")) 14113 return parseBase64Binary(xpp); 14114 else if (xpp.getName().equals(prefix+"time")) 14115 return parseTime(xpp); 14116 else if (xpp.getName().equals(prefix+"oid")) 14117 return parseOid(xpp); 14118 else if (xpp.getName().equals(prefix+"positiveInt")) 14119 return parsePositiveInt(xpp); 14120 else if (xpp.getName().equals(prefix+"string")) 14121 return parseString(xpp); 14122 else if (xpp.getName().equals(prefix+"boolean")) 14123 return parseBoolean(xpp); 14124 else if (xpp.getName().equals(prefix+"uuid")) 14125 return parseUuid(xpp); 14126 else if (xpp.getName().equals(prefix+"instant")) 14127 return parseInstant(xpp); 14128 else if (xpp.getName().equals(prefix+"Extension")) 14129 return parseExtension(xpp); 14130 else if (xpp.getName().equals(prefix+"Narrative")) 14131 return parseNarrative(xpp); 14132 else if (xpp.getName().equals(prefix+"Period")) 14133 return parsePeriod(xpp); 14134 else if (xpp.getName().equals(prefix+"Coding")) 14135 return parseCoding(xpp); 14136 else if (xpp.getName().equals(prefix+"Range")) 14137 return parseRange(xpp); 14138 else if (xpp.getName().equals(prefix+"Quantity")) 14139 return parseQuantity(xpp); 14140 else if (xpp.getName().equals(prefix+"Attachment")) 14141 return parseAttachment(xpp); 14142 else if (xpp.getName().equals(prefix+"Ratio")) 14143 return parseRatio(xpp); 14144 else if (xpp.getName().equals(prefix+"Annotation")) 14145 return parseAnnotation(xpp); 14146 else if (xpp.getName().equals(prefix+"SampledData")) 14147 return parseSampledData(xpp); 14148 else if (xpp.getName().equals(prefix+"Reference")) 14149 return parseReference(xpp); 14150 else if (xpp.getName().equals(prefix+"CodeableConcept")) 14151 return parseCodeableConcept(xpp); 14152 else if (xpp.getName().equals(prefix+"Identifier")) 14153 return parseIdentifier(xpp); 14154 else if (xpp.getName().equals(prefix+"Signature")) 14155 return parseSignature(xpp); 14156 else if (xpp.getName().equals(prefix+"Age")) 14157 return parseAge(xpp); 14158 else if (xpp.getName().equals(prefix+"Count")) 14159 return parseCount(xpp); 14160 else if (xpp.getName().equals(prefix+"Money")) 14161 return parseMoney(xpp); 14162 else if (xpp.getName().equals(prefix+"Distance")) 14163 return parseDistance(xpp); 14164 else if (xpp.getName().equals(prefix+"Duration")) 14165 return parseDuration(xpp); 14166 else if (xpp.getName().equals(prefix+"SimpleQuantity")) 14167 return parseSimpleQuantity(xpp); 14168 else if (xpp.getName().equals(prefix+"TriggerDefinition")) 14169 return parseTriggerDefinition(xpp); 14170 else if (xpp.getName().equals(prefix+"ElementDefinition")) 14171 return parseElementDefinition(xpp); 14172 else if (xpp.getName().equals(prefix+"Timing")) 14173 return parseTiming(xpp); 14174 else if (xpp.getName().equals(prefix+"ModuleMetadata")) 14175 return parseModuleMetadata(xpp); 14176 else if (xpp.getName().equals(prefix+"ActionDefinition")) 14177 return parseActionDefinition(xpp); 14178 else if (xpp.getName().equals(prefix+"Address")) 14179 return parseAddress(xpp); 14180 else if (xpp.getName().equals(prefix+"HumanName")) 14181 return parseHumanName(xpp); 14182 else if (xpp.getName().equals(prefix+"DataRequirement")) 14183 return parseDataRequirement(xpp); 14184 else if (xpp.getName().equals(prefix+"Meta")) 14185 return parseMeta(xpp); 14186 else if (xpp.getName().equals(prefix+"ParameterDefinition")) 14187 return parseParameterDefinition(xpp); 14188 else if (xpp.getName().equals(prefix+"ContactPoint")) 14189 return parseContactPoint(xpp); 14190 else if (xpp.getName().equals(prefix+"Markdown")) 14191 return parseMarkdown(xpp); 14192 else if (xpp.getName().equals(prefix+"Integer")) 14193 return parseInteger(xpp); 14194 else if (xpp.getName().equals(prefix+"DateTime")) 14195 return parseDateTime(xpp); 14196 else if (xpp.getName().equals(prefix+"UnsignedInt")) 14197 return parseUnsignedInt(xpp); 14198 else if (xpp.getName().equals(prefix+"Code")) 14199 return parseCode(xpp); 14200 else if (xpp.getName().equals(prefix+"Date")) 14201 return parseDate(xpp); 14202 else if (xpp.getName().equals(prefix+"Decimal")) 14203 return parseDecimal(xpp); 14204 else if (xpp.getName().equals(prefix+"Uri")) 14205 return parseUri(xpp); 14206 else if (xpp.getName().equals(prefix+"Id")) 14207 return parseId(xpp); 14208 else if (xpp.getName().equals(prefix+"Base64Binary")) 14209 return parseBase64Binary(xpp); 14210 else if (xpp.getName().equals(prefix+"Time")) 14211 return parseTime(xpp); 14212 else if (xpp.getName().equals(prefix+"Oid")) 14213 return parseOid(xpp); 14214 else if (xpp.getName().equals(prefix+"PositiveInt")) 14215 return parsePositiveInt(xpp); 14216 else if (xpp.getName().equals(prefix+"String")) 14217 return parseString(xpp); 14218 else if (xpp.getName().equals(prefix+"Boolean")) 14219 return parseBoolean(xpp); 14220 else if (xpp.getName().equals(prefix+"Uuid")) 14221 return parseUuid(xpp); 14222 else if (xpp.getName().equals(prefix+"Instant")) 14223 return parseInstant(xpp); 14224 throw new FHIRFormatError("Unknown type "+xpp.getName()); 14225 } 14226 14227 protected Type parseType(XmlPullParser xpp, String type) throws XmlPullParserException, IOException, FHIRFormatError { 14228 if (type.equals("markdown")) 14229 return parseMarkdown(xpp); 14230 else if (type.equals("integer")) 14231 return parseInteger(xpp); 14232 else if (type.equals("dateTime")) 14233 return parseDateTime(xpp); 14234 else if (type.equals("unsignedInt")) 14235 return parseUnsignedInt(xpp); 14236 else if (type.equals("code")) 14237 return parseCode(xpp); 14238 else if (type.equals("date")) 14239 return parseDate(xpp); 14240 else if (type.equals("decimal")) 14241 return parseDecimal(xpp); 14242 else if (type.equals("uri")) 14243 return parseUri(xpp); 14244 else if (type.equals("id")) 14245 return parseId(xpp); 14246 else if (type.equals("base64Binary")) 14247 return parseBase64Binary(xpp); 14248 else if (type.equals("time")) 14249 return parseTime(xpp); 14250 else if (type.equals("oid")) 14251 return parseOid(xpp); 14252 else if (type.equals("positiveInt")) 14253 return parsePositiveInt(xpp); 14254 else if (type.equals("string")) 14255 return parseString(xpp); 14256 else if (type.equals("boolean")) 14257 return parseBoolean(xpp); 14258 else if (type.equals("uuid")) 14259 return parseUuid(xpp); 14260 else if (type.equals("instant")) 14261 return parseInstant(xpp); 14262 else if (type.equals("Extension")) 14263 return parseExtension(xpp); 14264 else if (type.equals("Narrative")) 14265 return parseNarrative(xpp); 14266 else if (type.equals("Period")) 14267 return parsePeriod(xpp); 14268 else if (type.equals("Coding")) 14269 return parseCoding(xpp); 14270 else if (type.equals("Range")) 14271 return parseRange(xpp); 14272 else if (type.equals("Quantity")) 14273 return parseQuantity(xpp); 14274 else if (type.equals("Attachment")) 14275 return parseAttachment(xpp); 14276 else if (type.equals("Ratio")) 14277 return parseRatio(xpp); 14278 else if (type.equals("Annotation")) 14279 return parseAnnotation(xpp); 14280 else if (type.equals("SampledData")) 14281 return parseSampledData(xpp); 14282 else if (type.equals("Reference")) 14283 return parseReference(xpp); 14284 else if (type.equals("CodeableConcept")) 14285 return parseCodeableConcept(xpp); 14286 else if (type.equals("Identifier")) 14287 return parseIdentifier(xpp); 14288 else if (type.equals("Signature")) 14289 return parseSignature(xpp); 14290 else if (type.equals("Age")) 14291 return parseAge(xpp); 14292 else if (type.equals("Count")) 14293 return parseCount(xpp); 14294 else if (type.equals("Money")) 14295 return parseMoney(xpp); 14296 else if (type.equals("Distance")) 14297 return parseDistance(xpp); 14298 else if (type.equals("Duration")) 14299 return parseDuration(xpp); 14300 else if (type.equals("SimpleQuantity")) 14301 return parseSimpleQuantity(xpp); 14302 else if (type.equals("TriggerDefinition")) 14303 return parseTriggerDefinition(xpp); 14304 else if (type.equals("ElementDefinition")) 14305 return parseElementDefinition(xpp); 14306 else if (type.equals("Timing")) 14307 return parseTiming(xpp); 14308 else if (type.equals("ModuleMetadata")) 14309 return parseModuleMetadata(xpp); 14310 else if (type.equals("ActionDefinition")) 14311 return parseActionDefinition(xpp); 14312 else if (type.equals("Address")) 14313 return parseAddress(xpp); 14314 else if (type.equals("HumanName")) 14315 return parseHumanName(xpp); 14316 else if (type.equals("DataRequirement")) 14317 return parseDataRequirement(xpp); 14318 else if (type.equals("Meta")) 14319 return parseMeta(xpp); 14320 else if (type.equals("ParameterDefinition")) 14321 return parseParameterDefinition(xpp); 14322 else if (type.equals("ContactPoint")) 14323 return parseContactPoint(xpp); 14324 throw new FHIRFormatError("Unknown type "+type); 14325 } 14326 14327 public Base parseFragment(XmlPullParser xpp, String type) throws XmlPullParserException, IOException, FHIRFormatError { 14328 if (type.equals("Extension")) 14329 return parseExtension(xpp); 14330 else if (type.equals("Narrative")) 14331 return parseNarrative(xpp); 14332 else if (type.equals("Period")) 14333 return parsePeriod(xpp); 14334 else if (type.equals("Coding")) 14335 return parseCoding(xpp); 14336 else if (type.equals("Range")) 14337 return parseRange(xpp); 14338 else if (type.equals("Quantity")) 14339 return parseQuantity(xpp); 14340 else if (type.equals("Attachment")) 14341 return parseAttachment(xpp); 14342 else if (type.equals("Ratio")) 14343 return parseRatio(xpp); 14344 else if (type.equals("Annotation")) 14345 return parseAnnotation(xpp); 14346 else if (type.equals("SampledData")) 14347 return parseSampledData(xpp); 14348 else if (type.equals("Reference")) 14349 return parseReference(xpp); 14350 else if (type.equals("CodeableConcept")) 14351 return parseCodeableConcept(xpp); 14352 else if (type.equals("Identifier")) 14353 return parseIdentifier(xpp); 14354 else if (type.equals("Signature")) 14355 return parseSignature(xpp); 14356 else if (type.equals("Age")) 14357 return parseAge(xpp); 14358 else if (type.equals("Count")) 14359 return parseCount(xpp); 14360 else if (type.equals("Money")) 14361 return parseMoney(xpp); 14362 else if (type.equals("Distance")) 14363 return parseDistance(xpp); 14364 else if (type.equals("Duration")) 14365 return parseDuration(xpp); 14366 else if (type.equals("SimpleQuantity")) 14367 return parseSimpleQuantity(xpp); 14368 else if (type.equals("TriggerDefinition")) 14369 return parseTriggerDefinition(xpp); 14370 else if (type.equals("ElementDefinition")) 14371 return parseElementDefinition(xpp); 14372 else if (type.equals("Timing")) 14373 return parseTiming(xpp); 14374 else if (type.equals("ModuleMetadata")) 14375 return parseModuleMetadata(xpp); 14376 else if (type.equals("ActionDefinition")) 14377 return parseActionDefinition(xpp); 14378 else if (type.equals("Address")) 14379 return parseAddress(xpp); 14380 else if (type.equals("HumanName")) 14381 return parseHumanName(xpp); 14382 else if (type.equals("DataRequirement")) 14383 return parseDataRequirement(xpp); 14384 else if (type.equals("Meta")) 14385 return parseMeta(xpp); 14386 else if (type.equals("ParameterDefinition")) 14387 return parseParameterDefinition(xpp); 14388 else if (type.equals("ContactPoint")) 14389 return parseContactPoint(xpp); 14390 else if (type.equals("Parameters")) 14391 return parseParameters(xpp); 14392 else if (type.equals("Account")) 14393 return parseAccount(xpp); 14394 else if (type.equals("AllergyIntolerance")) 14395 return parseAllergyIntolerance(xpp); 14396 else if (type.equals("Appointment")) 14397 return parseAppointment(xpp); 14398 else if (type.equals("AppointmentResponse")) 14399 return parseAppointmentResponse(xpp); 14400 else if (type.equals("AuditEvent")) 14401 return parseAuditEvent(xpp); 14402 else if (type.equals("Basic")) 14403 return parseBasic(xpp); 14404 else if (type.equals("Binary")) 14405 return parseBinary(xpp); 14406 else if (type.equals("BodySite")) 14407 return parseBodySite(xpp); 14408 else if (type.equals("Bundle")) 14409 return parseBundle(xpp); 14410 else if (type.equals("CarePlan")) 14411 return parseCarePlan(xpp); 14412 else if (type.equals("CareTeam")) 14413 return parseCareTeam(xpp); 14414 else if (type.equals("Claim")) 14415 return parseClaim(xpp); 14416 else if (type.equals("ClaimResponse")) 14417 return parseClaimResponse(xpp); 14418 else if (type.equals("ClinicalImpression")) 14419 return parseClinicalImpression(xpp); 14420 else if (type.equals("CodeSystem")) 14421 return parseCodeSystem(xpp); 14422 else if (type.equals("Communication")) 14423 return parseCommunication(xpp); 14424 else if (type.equals("CommunicationRequest")) 14425 return parseCommunicationRequest(xpp); 14426 else if (type.equals("CompartmentDefinition")) 14427 return parseCompartmentDefinition(xpp); 14428 else if (type.equals("Composition")) 14429 return parseComposition(xpp); 14430 else if (type.equals("ConceptMap")) 14431 return parseConceptMap(xpp); 14432 else if (type.equals("Condition")) 14433 return parseCondition(xpp); 14434 else if (type.equals("Conformance")) 14435 return parseConformance(xpp); 14436 else if (type.equals("Contract")) 14437 return parseContract(xpp); 14438 else if (type.equals("Coverage")) 14439 return parseCoverage(xpp); 14440 else if (type.equals("DataElement")) 14441 return parseDataElement(xpp); 14442 else if (type.equals("DecisionSupportRule")) 14443 return parseDecisionSupportRule(xpp); 14444 else if (type.equals("DecisionSupportServiceModule")) 14445 return parseDecisionSupportServiceModule(xpp); 14446 else if (type.equals("DetectedIssue")) 14447 return parseDetectedIssue(xpp); 14448 else if (type.equals("Device")) 14449 return parseDevice(xpp); 14450 else if (type.equals("DeviceComponent")) 14451 return parseDeviceComponent(xpp); 14452 else if (type.equals("DeviceMetric")) 14453 return parseDeviceMetric(xpp); 14454 else if (type.equals("DeviceUseRequest")) 14455 return parseDeviceUseRequest(xpp); 14456 else if (type.equals("DeviceUseStatement")) 14457 return parseDeviceUseStatement(xpp); 14458 else if (type.equals("DiagnosticOrder")) 14459 return parseDiagnosticOrder(xpp); 14460 else if (type.equals("DiagnosticReport")) 14461 return parseDiagnosticReport(xpp); 14462 else if (type.equals("DocumentManifest")) 14463 return parseDocumentManifest(xpp); 14464 else if (type.equals("DocumentReference")) 14465 return parseDocumentReference(xpp); 14466 else if (type.equals("EligibilityRequest")) 14467 return parseEligibilityRequest(xpp); 14468 else if (type.equals("EligibilityResponse")) 14469 return parseEligibilityResponse(xpp); 14470 else if (type.equals("Encounter")) 14471 return parseEncounter(xpp); 14472 else if (type.equals("EnrollmentRequest")) 14473 return parseEnrollmentRequest(xpp); 14474 else if (type.equals("EnrollmentResponse")) 14475 return parseEnrollmentResponse(xpp); 14476 else if (type.equals("EpisodeOfCare")) 14477 return parseEpisodeOfCare(xpp); 14478 else if (type.equals("ExpansionProfile")) 14479 return parseExpansionProfile(xpp); 14480 else if (type.equals("ExplanationOfBenefit")) 14481 return parseExplanationOfBenefit(xpp); 14482 else if (type.equals("FamilyMemberHistory")) 14483 return parseFamilyMemberHistory(xpp); 14484 else if (type.equals("Flag")) 14485 return parseFlag(xpp); 14486 else if (type.equals("Goal")) 14487 return parseGoal(xpp); 14488 else if (type.equals("Group")) 14489 return parseGroup(xpp); 14490 else if (type.equals("GuidanceResponse")) 14491 return parseGuidanceResponse(xpp); 14492 else if (type.equals("HealthcareService")) 14493 return parseHealthcareService(xpp); 14494 else if (type.equals("ImagingExcerpt")) 14495 return parseImagingExcerpt(xpp); 14496 else if (type.equals("ImagingObjectSelection")) 14497 return parseImagingObjectSelection(xpp); 14498 else if (type.equals("ImagingStudy")) 14499 return parseImagingStudy(xpp); 14500 else if (type.equals("Immunization")) 14501 return parseImmunization(xpp); 14502 else if (type.equals("ImmunizationRecommendation")) 14503 return parseImmunizationRecommendation(xpp); 14504 else if (type.equals("ImplementationGuide")) 14505 return parseImplementationGuide(xpp); 14506 else if (type.equals("Library")) 14507 return parseLibrary(xpp); 14508 else if (type.equals("Linkage")) 14509 return parseLinkage(xpp); 14510 else if (type.equals("List")) 14511 return parseListResource(xpp); 14512 else if (type.equals("Location")) 14513 return parseLocation(xpp); 14514 else if (type.equals("Measure")) 14515 return parseMeasure(xpp); 14516 else if (type.equals("MeasureReport")) 14517 return parseMeasureReport(xpp); 14518 else if (type.equals("Media")) 14519 return parseMedia(xpp); 14520 else if (type.equals("Medication")) 14521 return parseMedication(xpp); 14522 else if (type.equals("MedicationAdministration")) 14523 return parseMedicationAdministration(xpp); 14524 else if (type.equals("MedicationDispense")) 14525 return parseMedicationDispense(xpp); 14526 else if (type.equals("MedicationOrder")) 14527 return parseMedicationOrder(xpp); 14528 else if (type.equals("MedicationStatement")) 14529 return parseMedicationStatement(xpp); 14530 else if (type.equals("MessageHeader")) 14531 return parseMessageHeader(xpp); 14532 else if (type.equals("ModuleDefinition")) 14533 return parseModuleDefinition(xpp); 14534 else if (type.equals("NamingSystem")) 14535 return parseNamingSystem(xpp); 14536 else if (type.equals("NutritionOrder")) 14537 return parseNutritionOrder(xpp); 14538 else if (type.equals("Observation")) 14539 return parseObservation(xpp); 14540 else if (type.equals("OperationDefinition")) 14541 return parseOperationDefinition(xpp); 14542 else if (type.equals("OperationOutcome")) 14543 return parseOperationOutcome(xpp); 14544 else if (type.equals("Order")) 14545 return parseOrder(xpp); 14546 else if (type.equals("OrderResponse")) 14547 return parseOrderResponse(xpp); 14548 else if (type.equals("OrderSet")) 14549 return parseOrderSet(xpp); 14550 else if (type.equals("Organization")) 14551 return parseOrganization(xpp); 14552 else if (type.equals("Patient")) 14553 return parsePatient(xpp); 14554 else if (type.equals("PaymentNotice")) 14555 return parsePaymentNotice(xpp); 14556 else if (type.equals("PaymentReconciliation")) 14557 return parsePaymentReconciliation(xpp); 14558 else if (type.equals("Person")) 14559 return parsePerson(xpp); 14560 else if (type.equals("Practitioner")) 14561 return parsePractitioner(xpp); 14562 else if (type.equals("PractitionerRole")) 14563 return parsePractitionerRole(xpp); 14564 else if (type.equals("Procedure")) 14565 return parseProcedure(xpp); 14566 else if (type.equals("ProcedureRequest")) 14567 return parseProcedureRequest(xpp); 14568 else if (type.equals("ProcessRequest")) 14569 return parseProcessRequest(xpp); 14570 else if (type.equals("ProcessResponse")) 14571 return parseProcessResponse(xpp); 14572 else if (type.equals("Protocol")) 14573 return parseProtocol(xpp); 14574 else if (type.equals("Provenance")) 14575 return parseProvenance(xpp); 14576 else if (type.equals("Questionnaire")) 14577 return parseQuestionnaire(xpp); 14578 else if (type.equals("QuestionnaireResponse")) 14579 return parseQuestionnaireResponse(xpp); 14580 else if (type.equals("ReferralRequest")) 14581 return parseReferralRequest(xpp); 14582 else if (type.equals("RelatedPerson")) 14583 return parseRelatedPerson(xpp); 14584 else if (type.equals("RiskAssessment")) 14585 return parseRiskAssessment(xpp); 14586 else if (type.equals("Schedule")) 14587 return parseSchedule(xpp); 14588 else if (type.equals("SearchParameter")) 14589 return parseSearchParameter(xpp); 14590 else if (type.equals("Sequence")) 14591 return parseSequence(xpp); 14592 else if (type.equals("Slot")) 14593 return parseSlot(xpp); 14594 else if (type.equals("Specimen")) 14595 return parseSpecimen(xpp); 14596 else if (type.equals("StructureDefinition")) 14597 return parseStructureDefinition(xpp); 14598 else if (type.equals("StructureMap")) 14599 return parseStructureMap(xpp); 14600 else if (type.equals("Subscription")) 14601 return parseSubscription(xpp); 14602 else if (type.equals("Substance")) 14603 return parseSubstance(xpp); 14604 else if (type.equals("SupplyDelivery")) 14605 return parseSupplyDelivery(xpp); 14606 else if (type.equals("SupplyRequest")) 14607 return parseSupplyRequest(xpp); 14608 else if (type.equals("Task")) 14609 return parseTask(xpp); 14610 else if (type.equals("TestScript")) 14611 return parseTestScript(xpp); 14612 else if (type.equals("ValueSet")) 14613 return parseValueSet(xpp); 14614 else if (type.equals("VisionPrescription")) 14615 return parseVisionPrescription(xpp); 14616 else if (type.equals("markdown")) 14617 return parseMarkdown(xpp); 14618 else if (type.equals("integer")) 14619 return parseInteger(xpp); 14620 else if (type.equals("dateTime")) 14621 return parseDateTime(xpp); 14622 else if (type.equals("unsignedInt")) 14623 return parseUnsignedInt(xpp); 14624 else if (type.equals("code")) 14625 return parseCode(xpp); 14626 else if (type.equals("date")) 14627 return parseDate(xpp); 14628 else if (type.equals("decimal")) 14629 return parseDecimal(xpp); 14630 else if (type.equals("uri")) 14631 return parseUri(xpp); 14632 else if (type.equals("id")) 14633 return parseId(xpp); 14634 else if (type.equals("base64Binary")) 14635 return parseBase64Binary(xpp); 14636 else if (type.equals("time")) 14637 return parseTime(xpp); 14638 else if (type.equals("oid")) 14639 return parseOid(xpp); 14640 else if (type.equals("positiveInt")) 14641 return parsePositiveInt(xpp); 14642 else if (type.equals("string")) 14643 return parseString(xpp); 14644 else if (type.equals("boolean")) 14645 return parseBoolean(xpp); 14646 else if (type.equals("uuid")) 14647 return parseUuid(xpp); 14648 else if (type.equals("instant")) 14649 return parseInstant(xpp); 14650 throw new FHIRFormatError("Unknown type "+type); 14651 } 14652 14653 private boolean nameIsTypeName(XmlPullParser xpp, String prefix) { 14654 if (xpp.getName().equals(prefix+"Period")) 14655 return true; 14656 if (xpp.getName().equals(prefix+"Coding")) 14657 return true; 14658 if (xpp.getName().equals(prefix+"Range")) 14659 return true; 14660 if (xpp.getName().equals(prefix+"Quantity")) 14661 return true; 14662 if (xpp.getName().equals(prefix+"Attachment")) 14663 return true; 14664 if (xpp.getName().equals(prefix+"Ratio")) 14665 return true; 14666 if (xpp.getName().equals(prefix+"Annotation")) 14667 return true; 14668 if (xpp.getName().equals(prefix+"SampledData")) 14669 return true; 14670 if (xpp.getName().equals(prefix+"Reference")) 14671 return true; 14672 if (xpp.getName().equals(prefix+"CodeableConcept")) 14673 return true; 14674 if (xpp.getName().equals(prefix+"Identifier")) 14675 return true; 14676 if (xpp.getName().equals(prefix+"Signature")) 14677 return true; 14678 if (xpp.getName().equals(prefix+"Age")) 14679 return true; 14680 if (xpp.getName().equals(prefix+"Count")) 14681 return true; 14682 if (xpp.getName().equals(prefix+"Money")) 14683 return true; 14684 if (xpp.getName().equals(prefix+"Distance")) 14685 return true; 14686 if (xpp.getName().equals(prefix+"Duration")) 14687 return true; 14688 if (xpp.getName().equals(prefix+"SimpleQuantity")) 14689 return true; 14690 if (xpp.getName().equals(prefix+"TriggerDefinition")) 14691 return true; 14692 if (xpp.getName().equals(prefix+"ElementDefinition")) 14693 return true; 14694 if (xpp.getName().equals(prefix+"Timing")) 14695 return true; 14696 if (xpp.getName().equals(prefix+"ModuleMetadata")) 14697 return true; 14698 if (xpp.getName().equals(prefix+"ActionDefinition")) 14699 return true; 14700 if (xpp.getName().equals(prefix+"Address")) 14701 return true; 14702 if (xpp.getName().equals(prefix+"HumanName")) 14703 return true; 14704 if (xpp.getName().equals(prefix+"DataRequirement")) 14705 return true; 14706 if (xpp.getName().equals(prefix+"Meta")) 14707 return true; 14708 if (xpp.getName().equals(prefix+"ParameterDefinition")) 14709 return true; 14710 if (xpp.getName().equals(prefix+"ContactPoint")) 14711 return true; 14712 if (xpp.getName().equals(prefix+"Parameters")) 14713 return true; 14714 if (xpp.getName().equals(prefix+"Account")) 14715 return true; 14716 if (xpp.getName().equals(prefix+"AllergyIntolerance")) 14717 return true; 14718 if (xpp.getName().equals(prefix+"Appointment")) 14719 return true; 14720 if (xpp.getName().equals(prefix+"AppointmentResponse")) 14721 return true; 14722 if (xpp.getName().equals(prefix+"AuditEvent")) 14723 return true; 14724 if (xpp.getName().equals(prefix+"Basic")) 14725 return true; 14726 if (xpp.getName().equals(prefix+"Binary")) 14727 return true; 14728 if (xpp.getName().equals(prefix+"BodySite")) 14729 return true; 14730 if (xpp.getName().equals(prefix+"Bundle")) 14731 return true; 14732 if (xpp.getName().equals(prefix+"CarePlan")) 14733 return true; 14734 if (xpp.getName().equals(prefix+"CareTeam")) 14735 return true; 14736 if (xpp.getName().equals(prefix+"Claim")) 14737 return true; 14738 if (xpp.getName().equals(prefix+"ClaimResponse")) 14739 return true; 14740 if (xpp.getName().equals(prefix+"ClinicalImpression")) 14741 return true; 14742 if (xpp.getName().equals(prefix+"CodeSystem")) 14743 return true; 14744 if (xpp.getName().equals(prefix+"Communication")) 14745 return true; 14746 if (xpp.getName().equals(prefix+"CommunicationRequest")) 14747 return true; 14748 if (xpp.getName().equals(prefix+"CompartmentDefinition")) 14749 return true; 14750 if (xpp.getName().equals(prefix+"Composition")) 14751 return true; 14752 if (xpp.getName().equals(prefix+"ConceptMap")) 14753 return true; 14754 if (xpp.getName().equals(prefix+"Condition")) 14755 return true; 14756 if (xpp.getName().equals(prefix+"Conformance")) 14757 return true; 14758 if (xpp.getName().equals(prefix+"Contract")) 14759 return true; 14760 if (xpp.getName().equals(prefix+"Coverage")) 14761 return true; 14762 if (xpp.getName().equals(prefix+"DataElement")) 14763 return true; 14764 if (xpp.getName().equals(prefix+"DecisionSupportRule")) 14765 return true; 14766 if (xpp.getName().equals(prefix+"DecisionSupportServiceModule")) 14767 return true; 14768 if (xpp.getName().equals(prefix+"DetectedIssue")) 14769 return true; 14770 if (xpp.getName().equals(prefix+"Device")) 14771 return true; 14772 if (xpp.getName().equals(prefix+"DeviceComponent")) 14773 return true; 14774 if (xpp.getName().equals(prefix+"DeviceMetric")) 14775 return true; 14776 if (xpp.getName().equals(prefix+"DeviceUseRequest")) 14777 return true; 14778 if (xpp.getName().equals(prefix+"DeviceUseStatement")) 14779 return true; 14780 if (xpp.getName().equals(prefix+"DiagnosticOrder")) 14781 return true; 14782 if (xpp.getName().equals(prefix+"DiagnosticReport")) 14783 return true; 14784 if (xpp.getName().equals(prefix+"DocumentManifest")) 14785 return true; 14786 if (xpp.getName().equals(prefix+"DocumentReference")) 14787 return true; 14788 if (xpp.getName().equals(prefix+"EligibilityRequest")) 14789 return true; 14790 if (xpp.getName().equals(prefix+"EligibilityResponse")) 14791 return true; 14792 if (xpp.getName().equals(prefix+"Encounter")) 14793 return true; 14794 if (xpp.getName().equals(prefix+"EnrollmentRequest")) 14795 return true; 14796 if (xpp.getName().equals(prefix+"EnrollmentResponse")) 14797 return true; 14798 if (xpp.getName().equals(prefix+"EpisodeOfCare")) 14799 return true; 14800 if (xpp.getName().equals(prefix+"ExpansionProfile")) 14801 return true; 14802 if (xpp.getName().equals(prefix+"ExplanationOfBenefit")) 14803 return true; 14804 if (xpp.getName().equals(prefix+"FamilyMemberHistory")) 14805 return true; 14806 if (xpp.getName().equals(prefix+"Flag")) 14807 return true; 14808 if (xpp.getName().equals(prefix+"Goal")) 14809 return true; 14810 if (xpp.getName().equals(prefix+"Group")) 14811 return true; 14812 if (xpp.getName().equals(prefix+"GuidanceResponse")) 14813 return true; 14814 if (xpp.getName().equals(prefix+"HealthcareService")) 14815 return true; 14816 if (xpp.getName().equals(prefix+"ImagingExcerpt")) 14817 return true; 14818 if (xpp.getName().equals(prefix+"ImagingObjectSelection")) 14819 return true; 14820 if (xpp.getName().equals(prefix+"ImagingStudy")) 14821 return true; 14822 if (xpp.getName().equals(prefix+"Immunization")) 14823 return true; 14824 if (xpp.getName().equals(prefix+"ImmunizationRecommendation")) 14825 return true; 14826 if (xpp.getName().equals(prefix+"ImplementationGuide")) 14827 return true; 14828 if (xpp.getName().equals(prefix+"Library")) 14829 return true; 14830 if (xpp.getName().equals(prefix+"Linkage")) 14831 return true; 14832 if (xpp.getName().equals(prefix+"List")) 14833 return true; 14834 if (xpp.getName().equals(prefix+"Location")) 14835 return true; 14836 if (xpp.getName().equals(prefix+"Measure")) 14837 return true; 14838 if (xpp.getName().equals(prefix+"MeasureReport")) 14839 return true; 14840 if (xpp.getName().equals(prefix+"Media")) 14841 return true; 14842 if (xpp.getName().equals(prefix+"Medication")) 14843 return true; 14844 if (xpp.getName().equals(prefix+"MedicationAdministration")) 14845 return true; 14846 if (xpp.getName().equals(prefix+"MedicationDispense")) 14847 return true; 14848 if (xpp.getName().equals(prefix+"MedicationOrder")) 14849 return true; 14850 if (xpp.getName().equals(prefix+"MedicationStatement")) 14851 return true; 14852 if (xpp.getName().equals(prefix+"MessageHeader")) 14853 return true; 14854 if (xpp.getName().equals(prefix+"ModuleDefinition")) 14855 return true; 14856 if (xpp.getName().equals(prefix+"NamingSystem")) 14857 return true; 14858 if (xpp.getName().equals(prefix+"NutritionOrder")) 14859 return true; 14860 if (xpp.getName().equals(prefix+"Observation")) 14861 return true; 14862 if (xpp.getName().equals(prefix+"OperationDefinition")) 14863 return true; 14864 if (xpp.getName().equals(prefix+"OperationOutcome")) 14865 return true; 14866 if (xpp.getName().equals(prefix+"Order")) 14867 return true; 14868 if (xpp.getName().equals(prefix+"OrderResponse")) 14869 return true; 14870 if (xpp.getName().equals(prefix+"OrderSet")) 14871 return true; 14872 if (xpp.getName().equals(prefix+"Organization")) 14873 return true; 14874 if (xpp.getName().equals(prefix+"Patient")) 14875 return true; 14876 if (xpp.getName().equals(prefix+"PaymentNotice")) 14877 return true; 14878 if (xpp.getName().equals(prefix+"PaymentReconciliation")) 14879 return true; 14880 if (xpp.getName().equals(prefix+"Person")) 14881 return true; 14882 if (xpp.getName().equals(prefix+"Practitioner")) 14883 return true; 14884 if (xpp.getName().equals(prefix+"PractitionerRole")) 14885 return true; 14886 if (xpp.getName().equals(prefix+"Procedure")) 14887 return true; 14888 if (xpp.getName().equals(prefix+"ProcedureRequest")) 14889 return true; 14890 if (xpp.getName().equals(prefix+"ProcessRequest")) 14891 return true; 14892 if (xpp.getName().equals(prefix+"ProcessResponse")) 14893 return true; 14894 if (xpp.getName().equals(prefix+"Protocol")) 14895 return true; 14896 if (xpp.getName().equals(prefix+"Provenance")) 14897 return true; 14898 if (xpp.getName().equals(prefix+"Questionnaire")) 14899 return true; 14900 if (xpp.getName().equals(prefix+"QuestionnaireResponse")) 14901 return true; 14902 if (xpp.getName().equals(prefix+"ReferralRequest")) 14903 return true; 14904 if (xpp.getName().equals(prefix+"RelatedPerson")) 14905 return true; 14906 if (xpp.getName().equals(prefix+"RiskAssessment")) 14907 return true; 14908 if (xpp.getName().equals(prefix+"Schedule")) 14909 return true; 14910 if (xpp.getName().equals(prefix+"SearchParameter")) 14911 return true; 14912 if (xpp.getName().equals(prefix+"Sequence")) 14913 return true; 14914 if (xpp.getName().equals(prefix+"Slot")) 14915 return true; 14916 if (xpp.getName().equals(prefix+"Specimen")) 14917 return true; 14918 if (xpp.getName().equals(prefix+"StructureDefinition")) 14919 return true; 14920 if (xpp.getName().equals(prefix+"StructureMap")) 14921 return true; 14922 if (xpp.getName().equals(prefix+"Subscription")) 14923 return true; 14924 if (xpp.getName().equals(prefix+"Substance")) 14925 return true; 14926 if (xpp.getName().equals(prefix+"SupplyDelivery")) 14927 return true; 14928 if (xpp.getName().equals(prefix+"SupplyRequest")) 14929 return true; 14930 if (xpp.getName().equals(prefix+"Task")) 14931 return true; 14932 if (xpp.getName().equals(prefix+"TestScript")) 14933 return true; 14934 if (xpp.getName().equals(prefix+"ValueSet")) 14935 return true; 14936 if (xpp.getName().equals(prefix+"VisionPrescription")) 14937 return true; 14938 if (xpp.getName().equals(prefix+"Markdown")) 14939 return true; 14940 if (xpp.getName().equals(prefix+"Integer")) 14941 return true; 14942 if (xpp.getName().equals(prefix+"DateTime")) 14943 return true; 14944 if (xpp.getName().equals(prefix+"UnsignedInt")) 14945 return true; 14946 if (xpp.getName().equals(prefix+"Code")) 14947 return true; 14948 if (xpp.getName().equals(prefix+"Date")) 14949 return true; 14950 if (xpp.getName().equals(prefix+"Decimal")) 14951 return true; 14952 if (xpp.getName().equals(prefix+"Uri")) 14953 return true; 14954 if (xpp.getName().equals(prefix+"Id")) 14955 return true; 14956 if (xpp.getName().equals(prefix+"Base64Binary")) 14957 return true; 14958 if (xpp.getName().equals(prefix+"Time")) 14959 return true; 14960 if (xpp.getName().equals(prefix+"Oid")) 14961 return true; 14962 if (xpp.getName().equals(prefix+"PositiveInt")) 14963 return true; 14964 if (xpp.getName().equals(prefix+"String")) 14965 return true; 14966 if (xpp.getName().equals(prefix+"Boolean")) 14967 return true; 14968 if (xpp.getName().equals(prefix+"Uuid")) 14969 return true; 14970 if (xpp.getName().equals(prefix+"Instant")) 14971 return true; 14972 return false; 14973 } 14974 protected void composeElementElements(Element element) throws IOException { 14975 for (Extension e : element.getExtension()) { 14976 composeExtension("extension", e); 14977 } 14978 } 14979 14980 protected void composeBackboneElements(BackboneElement element) throws IOException { 14981 composeElementElements(element); 14982 for (Extension e : element.getModifierExtension()) { 14983 composeExtension("modifierExtension", e); 14984 } 14985 } 14986 14987 protected <E extends Enum<E>> void composeEnumeration(String name, Enumeration<E> value, EnumFactory e) throws IOException { 14988 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || value.getValue() != null)) { 14989 composeElementAttributes(value); 14990 if (value.getValue() != null) 14991 xml.attribute("value", e.toCode(value.getValue())); 14992 14993 xml.enter(FHIR_NS, name); 14994 composeElementElements(value); 14995 composeElementClose(value); 14996 xml.exit(FHIR_NS, name); 14997 } 14998 } 14999 15000 protected void composeMarkdown(String name, MarkdownType value) throws IOException { 15001 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// markdown 15002 composeElementAttributes(value); 15003 if (value.asStringValue() != null) 15004 xml.attribute("value", value.asStringValue()); 15005 15006 xml.enter(FHIR_NS, name); 15007 composeElementElements(value); 15008 composeElementClose(value); 15009 xml.exit(FHIR_NS, name); 15010 } 15011 } 15012 15013 protected void composeInteger(String name, IntegerType value) throws IOException { 15014 if (value != null) { // integer 15015 composeElementAttributes(value); 15016 if (value.asStringValue() != null) 15017 xml.attribute("value", value.asStringValue()); 15018 15019 xml.enter(FHIR_NS, name); 15020 composeElementElements(value); 15021 composeElementClose(value); 15022 xml.exit(FHIR_NS, name); 15023 } 15024 } 15025 15026 protected void composeDateTime(String name, DateTimeType value) throws IOException { 15027 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || value.getValue() != null)) {// dateTime 15028 composeElementAttributes(value); 15029 if (value.asStringValue() != null) 15030 xml.attribute("value", value.asStringValue()); 15031 15032 xml.enter(FHIR_NS, name); 15033 composeElementElements(value); 15034 composeElementClose(value); 15035 xml.exit(FHIR_NS, name); 15036 } 15037 } 15038 15039 protected void composeUnsignedInt(String name, UnsignedIntType value) throws IOException { 15040 if (value != null) { // unsignedInt 15041 composeElementAttributes(value); 15042 if (value.asStringValue() != null) 15043 xml.attribute("value", value.asStringValue()); 15044 15045 xml.enter(FHIR_NS, name); 15046 composeElementElements(value); 15047 composeElementClose(value); 15048 xml.exit(FHIR_NS, name); 15049 } 15050 } 15051 15052 protected void composeCode(String name, CodeType value) throws IOException { 15053 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// code 15054 composeElementAttributes(value); 15055 if (value.asStringValue() != null) 15056 xml.attribute("value", value.asStringValue()); 15057 15058 xml.enter(FHIR_NS, name); 15059 composeElementElements(value); 15060 composeElementClose(value); 15061 xml.exit(FHIR_NS, name); 15062 } 15063 } 15064 15065 protected void composeDate(String name, DateType value) throws IOException { 15066 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || value.getValue() != null)) {// date 15067 composeElementAttributes(value); 15068 if (value.asStringValue() != null) 15069 xml.attribute("value", value.asStringValue()); 15070 15071 xml.enter(FHIR_NS, name); 15072 composeElementElements(value); 15073 composeElementClose(value); 15074 xml.exit(FHIR_NS, name); 15075 } 15076 } 15077 15078 protected void composeDecimal(String name, DecimalType value) throws IOException { 15079 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || value.getValue() != null)) {// decimal 15080 composeElementAttributes(value); 15081 if (value.asStringValue() != null) 15082 xml.attribute("value", value.asStringValue()); 15083 15084 xml.enter(FHIR_NS, name); 15085 composeElementElements(value); 15086 composeElementClose(value); 15087 xml.exit(FHIR_NS, name); 15088 } 15089 } 15090 15091 protected void composeUri(String name, UriType value) throws IOException { 15092 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || value.getValue() != null)) {// uri 15093 composeElementAttributes(value); 15094 if (value.asStringValue() != null) 15095 xml.attribute("value", value.asStringValue()); 15096 15097 xml.enter(FHIR_NS, name); 15098 composeElementElements(value); 15099 composeElementClose(value); 15100 xml.exit(FHIR_NS, name); 15101 } 15102 } 15103 15104 protected void composeId(String name, IdType value) throws IOException { 15105 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// id 15106 composeElementAttributes(value); 15107 if (value.asStringValue() != null) 15108 xml.attribute("value", value.asStringValue()); 15109 15110 xml.enter(FHIR_NS, name); 15111 composeElementElements(value); 15112 composeElementClose(value); 15113 xml.exit(FHIR_NS, name); 15114 } 15115 } 15116 15117 protected void composeBase64Binary(String name, Base64BinaryType value) throws IOException { 15118 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || value.getValue() != null)) {// base64Binary 15119 composeElementAttributes(value); 15120 if (value.asStringValue() != null) 15121 xml.attribute("value", value.asStringValue()); 15122 15123 xml.enter(FHIR_NS, name); 15124 composeElementElements(value); 15125 composeElementClose(value); 15126 xml.exit(FHIR_NS, name); 15127 } 15128 } 15129 15130 protected void composeTime(String name, TimeType value) throws IOException { 15131 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// time 15132 composeElementAttributes(value); 15133 if (value.asStringValue() != null) 15134 xml.attribute("value", value.asStringValue()); 15135 15136 xml.enter(FHIR_NS, name); 15137 composeElementElements(value); 15138 composeElementClose(value); 15139 xml.exit(FHIR_NS, name); 15140 } 15141 } 15142 15143 protected void composeOid(String name, OidType value) throws IOException { 15144 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// oid 15145 composeElementAttributes(value); 15146 if (value.asStringValue() != null) 15147 xml.attribute("value", value.asStringValue()); 15148 15149 xml.enter(FHIR_NS, name); 15150 composeElementElements(value); 15151 composeElementClose(value); 15152 xml.exit(FHIR_NS, name); 15153 } 15154 } 15155 15156 protected void composePositiveInt(String name, PositiveIntType value) throws IOException { 15157 if (value != null) { // positiveInt 15158 composeElementAttributes(value); 15159 if (value.asStringValue() != null) 15160 xml.attribute("value", value.asStringValue()); 15161 15162 xml.enter(FHIR_NS, name); 15163 composeElementElements(value); 15164 composeElementClose(value); 15165 xml.exit(FHIR_NS, name); 15166 } 15167 } 15168 15169 protected void composeString(String name, StringType value) throws IOException { 15170 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// string 15171 composeElementAttributes(value); 15172 if (value.asStringValue() != null) 15173 xml.attribute("value", value.asStringValue()); 15174 15175 xml.enter(FHIR_NS, name); 15176 composeElementElements(value); 15177 composeElementClose(value); 15178 xml.exit(FHIR_NS, name); 15179 } 15180 } 15181 15182 protected void composeBoolean(String name, BooleanType value) throws IOException { 15183 if (value != null) { // boolean 15184 composeElementAttributes(value); 15185 if (value.asStringValue() != null) 15186 xml.attribute("value", value.asStringValue()); 15187 15188 xml.enter(FHIR_NS, name); 15189 composeElementElements(value); 15190 composeElementClose(value); 15191 xml.exit(FHIR_NS, name); 15192 } 15193 } 15194 15195 protected void composeUuid(String name, UuidType value) throws IOException { 15196 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// uuid 15197 composeElementAttributes(value); 15198 if (value.asStringValue() != null) 15199 xml.attribute("value", value.asStringValue()); 15200 15201 xml.enter(FHIR_NS, name); 15202 composeElementElements(value); 15203 composeElementClose(value); 15204 xml.exit(FHIR_NS, name); 15205 } 15206 } 15207 15208 protected void composeInstant(String name, InstantType value) throws IOException { 15209 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || value.getValue() != null)) {// instant 15210 composeElementAttributes(value); 15211 if (value.asStringValue() != null) 15212 xml.attribute("value", value.asStringValue()); 15213 15214 xml.enter(FHIR_NS, name); 15215 composeElementElements(value); 15216 composeElementClose(value); 15217 xml.exit(FHIR_NS, name); 15218 } 15219 } 15220 15221 protected void composeExtension(String name, Extension element) throws IOException { 15222 if (element != null) { 15223 composeElementAttributes(element); 15224 if (element.hasUrlElement()) 15225 xml.attribute("url", element.getUrlElement().getValue()); 15226 xml.enter(FHIR_NS, name); 15227 composeElementElements(element); 15228 if (element.hasValue()) { 15229 composeType("value", element.getValue()); 15230 } composeElementClose(element); 15231 xml.exit(FHIR_NS, name); 15232 } 15233 } 15234 15235 protected void composeNarrative(String name, Narrative element) throws IOException { 15236 if (element != null) { 15237 composeElementAttributes(element); 15238 xml.enter(FHIR_NS, name); 15239 composeElementElements(element); 15240 if (element.hasStatusElement()) 15241 composeEnumeration("status", element.getStatusElement(), new Narrative.NarrativeStatusEnumFactory()); 15242 if (element.hasDiv()) { 15243 composeXhtml("div", element.getDiv()); 15244 } 15245 composeElementClose(element); 15246 xml.exit(FHIR_NS, name); 15247 } 15248 } 15249 15250 protected void composePeriod(String name, Period element) throws IOException { 15251 if (element != null) { 15252 composeTypeAttributes(element); 15253 xml.enter(FHIR_NS, name); 15254 composeElementElements(element); 15255 if (element.hasStartElement()) { 15256 composeDateTime("start", element.getStartElement()); 15257 } 15258 if (element.hasEndElement()) { 15259 composeDateTime("end", element.getEndElement()); 15260 } 15261 composeElementClose(element); 15262 xml.exit(FHIR_NS, name); 15263 } 15264 } 15265 15266 protected void composeCoding(String name, Coding element) throws IOException { 15267 if (element != null) { 15268 composeTypeAttributes(element); 15269 xml.enter(FHIR_NS, name); 15270 composeElementElements(element); 15271 if (element.hasSystemElement()) { 15272 composeUri("system", element.getSystemElement()); 15273 } 15274 if (element.hasVersionElement()) { 15275 composeString("version", element.getVersionElement()); 15276 } 15277 if (element.hasCodeElement()) { 15278 composeCode("code", element.getCodeElement()); 15279 } 15280 if (element.hasDisplayElement()) { 15281 composeString("display", element.getDisplayElement()); 15282 } 15283 if (element.hasUserSelectedElement()) { 15284 composeBoolean("userSelected", element.getUserSelectedElement()); 15285 } 15286 composeElementClose(element); 15287 xml.exit(FHIR_NS, name); 15288 } 15289 } 15290 15291 protected void composeRange(String name, Range element) throws IOException { 15292 if (element != null) { 15293 composeTypeAttributes(element); 15294 xml.enter(FHIR_NS, name); 15295 composeElementElements(element); 15296 if (element.hasLow()) { 15297 composeSimpleQuantity("low", element.getLow()); 15298 } 15299 if (element.hasHigh()) { 15300 composeSimpleQuantity("high", element.getHigh()); 15301 } 15302 composeElementClose(element); 15303 xml.exit(FHIR_NS, name); 15304 } 15305 } 15306 15307 protected void composeQuantity(String name, Quantity element) throws IOException { 15308 if (element != null) { 15309 composeTypeAttributes(element); 15310 xml.enter(FHIR_NS, name); 15311 composeElementElements(element); 15312 if (element.hasValueElement()) { 15313 composeDecimal("value", element.getValueElement()); 15314 } 15315 if (element.hasComparatorElement()) 15316 composeEnumeration("comparator", element.getComparatorElement(), new Quantity.QuantityComparatorEnumFactory()); 15317 if (element.hasUnitElement()) { 15318 composeString("unit", element.getUnitElement()); 15319 } 15320 if (element.hasSystemElement()) { 15321 composeUri("system", element.getSystemElement()); 15322 } 15323 if (element.hasCodeElement()) { 15324 composeCode("code", element.getCodeElement()); 15325 } 15326 composeElementClose(element); 15327 xml.exit(FHIR_NS, name); 15328 } 15329 } 15330 15331 protected void composeAttachment(String name, Attachment element) throws IOException { 15332 if (element != null) { 15333 composeTypeAttributes(element); 15334 xml.enter(FHIR_NS, name); 15335 composeElementElements(element); 15336 if (element.hasContentTypeElement()) { 15337 composeCode("contentType", element.getContentTypeElement()); 15338 } 15339 if (element.hasLanguageElement()) { 15340 composeCode("language", element.getLanguageElement()); 15341 } 15342 if (element.hasDataElement()) { 15343 composeBase64Binary("data", element.getDataElement()); 15344 } 15345 if (element.hasUrlElement()) { 15346 composeUri("url", element.getUrlElement()); 15347 } 15348 if (element.hasSizeElement()) { 15349 composeUnsignedInt("size", element.getSizeElement()); 15350 } 15351 if (element.hasHashElement()) { 15352 composeBase64Binary("hash", element.getHashElement()); 15353 } 15354 if (element.hasTitleElement()) { 15355 composeString("title", element.getTitleElement()); 15356 } 15357 if (element.hasCreationElement()) { 15358 composeDateTime("creation", element.getCreationElement()); 15359 } 15360 composeElementClose(element); 15361 xml.exit(FHIR_NS, name); 15362 } 15363 } 15364 15365 protected void composeRatio(String name, Ratio element) throws IOException { 15366 if (element != null) { 15367 composeTypeAttributes(element); 15368 xml.enter(FHIR_NS, name); 15369 composeElementElements(element); 15370 if (element.hasNumerator()) { 15371 composeQuantity("numerator", element.getNumerator()); 15372 } 15373 if (element.hasDenominator()) { 15374 composeQuantity("denominator", element.getDenominator()); 15375 } 15376 composeElementClose(element); 15377 xml.exit(FHIR_NS, name); 15378 } 15379 } 15380 15381 protected void composeAnnotation(String name, Annotation element) throws IOException { 15382 if (element != null) { 15383 composeTypeAttributes(element); 15384 xml.enter(FHIR_NS, name); 15385 composeElementElements(element); 15386 if (element.hasAuthor()) { 15387 composeType("author", element.getAuthor()); 15388 } if (element.hasTimeElement()) { 15389 composeDateTime("time", element.getTimeElement()); 15390 } 15391 if (element.hasTextElement()) { 15392 composeString("text", element.getTextElement()); 15393 } 15394 composeElementClose(element); 15395 xml.exit(FHIR_NS, name); 15396 } 15397 } 15398 15399 protected void composeSampledData(String name, SampledData element) throws IOException { 15400 if (element != null) { 15401 composeTypeAttributes(element); 15402 xml.enter(FHIR_NS, name); 15403 composeElementElements(element); 15404 if (element.hasOrigin()) { 15405 composeSimpleQuantity("origin", element.getOrigin()); 15406 } 15407 if (element.hasPeriodElement()) { 15408 composeDecimal("period", element.getPeriodElement()); 15409 } 15410 if (element.hasFactorElement()) { 15411 composeDecimal("factor", element.getFactorElement()); 15412 } 15413 if (element.hasLowerLimitElement()) { 15414 composeDecimal("lowerLimit", element.getLowerLimitElement()); 15415 } 15416 if (element.hasUpperLimitElement()) { 15417 composeDecimal("upperLimit", element.getUpperLimitElement()); 15418 } 15419 if (element.hasDimensionsElement()) { 15420 composePositiveInt("dimensions", element.getDimensionsElement()); 15421 } 15422 if (element.hasDataElement()) { 15423 composeString("data", element.getDataElement()); 15424 } 15425 composeElementClose(element); 15426 xml.exit(FHIR_NS, name); 15427 } 15428 } 15429 15430 protected void composeReference(String name, Reference element) throws IOException { 15431 if (element != null) { 15432 composeTypeAttributes(element); 15433 xml.enter(FHIR_NS, name); 15434 composeElementElements(element); 15435 if (element.hasReferenceElement()) { 15436 composeString("reference", element.getReferenceElement()); 15437 } 15438 if (element.hasDisplayElement()) { 15439 composeString("display", element.getDisplayElement()); 15440 } 15441 composeElementClose(element); 15442 xml.exit(FHIR_NS, name); 15443 } 15444 } 15445 15446 protected void composeCodeableConcept(String name, CodeableConcept element) throws IOException { 15447 if (element != null) { 15448 composeTypeAttributes(element); 15449 xml.enter(FHIR_NS, name); 15450 composeElementElements(element); 15451 if (element.hasCoding()) { 15452 for (Coding e : element.getCoding()) 15453 composeCoding("coding", e); 15454 } 15455 if (element.hasTextElement()) { 15456 composeString("text", element.getTextElement()); 15457 } 15458 composeElementClose(element); 15459 xml.exit(FHIR_NS, name); 15460 } 15461 } 15462 15463 protected void composeIdentifier(String name, Identifier element) throws IOException { 15464 if (element != null) { 15465 composeTypeAttributes(element); 15466 xml.enter(FHIR_NS, name); 15467 composeElementElements(element); 15468 if (element.hasUseElement()) 15469 composeEnumeration("use", element.getUseElement(), new Identifier.IdentifierUseEnumFactory()); 15470 if (element.hasType()) { 15471 composeCodeableConcept("type", element.getType()); 15472 } 15473 if (element.hasSystemElement()) { 15474 composeUri("system", element.getSystemElement()); 15475 } 15476 if (element.hasValueElement()) { 15477 composeString("value", element.getValueElement()); 15478 } 15479 if (element.hasPeriod()) { 15480 composePeriod("period", element.getPeriod()); 15481 } 15482 if (element.hasAssigner()) { 15483 composeReference("assigner", element.getAssigner()); 15484 } 15485 composeElementClose(element); 15486 xml.exit(FHIR_NS, name); 15487 } 15488 } 15489 15490 protected void composeSignature(String name, Signature element) throws IOException { 15491 if (element != null) { 15492 composeTypeAttributes(element); 15493 xml.enter(FHIR_NS, name); 15494 composeElementElements(element); 15495 if (element.hasType()) { 15496 for (Coding e : element.getType()) 15497 composeCoding("type", e); 15498 } 15499 if (element.hasWhenElement()) { 15500 composeInstant("when", element.getWhenElement()); 15501 } 15502 if (element.hasWho()) { 15503 composeType("who", element.getWho()); 15504 } if (element.hasContentTypeElement()) { 15505 composeCode("contentType", element.getContentTypeElement()); 15506 } 15507 if (element.hasBlobElement()) { 15508 composeBase64Binary("blob", element.getBlobElement()); 15509 } 15510 composeElementClose(element); 15511 xml.exit(FHIR_NS, name); 15512 } 15513 } 15514 15515 protected void composeAge(String name, Age element) throws IOException { 15516 if (element != null) { 15517 composeTypeAttributes(element); 15518 xml.enter(FHIR_NS, name); 15519 composeElementElements(element); 15520 if (element.hasValueElement()) { 15521 composeDecimal("value", element.getValueElement()); 15522 } 15523 if (element.hasComparatorElement()) 15524 composeEnumeration("comparator", element.getComparatorElement(), new Age.QuantityComparatorEnumFactory()); 15525 if (element.hasUnitElement()) { 15526 composeString("unit", element.getUnitElement()); 15527 } 15528 if (element.hasSystemElement()) { 15529 composeUri("system", element.getSystemElement()); 15530 } 15531 if (element.hasCodeElement()) { 15532 composeCode("code", element.getCodeElement()); 15533 } 15534 composeElementClose(element); 15535 xml.exit(FHIR_NS, name); 15536 } 15537 } 15538 15539 protected void composeCount(String name, Count element) throws IOException { 15540 if (element != null) { 15541 composeTypeAttributes(element); 15542 xml.enter(FHIR_NS, name); 15543 composeElementElements(element); 15544 if (element.hasValueElement()) { 15545 composeDecimal("value", element.getValueElement()); 15546 } 15547 if (element.hasComparatorElement()) 15548 composeEnumeration("comparator", element.getComparatorElement(), new Count.QuantityComparatorEnumFactory()); 15549 if (element.hasUnitElement()) { 15550 composeString("unit", element.getUnitElement()); 15551 } 15552 if (element.hasSystemElement()) { 15553 composeUri("system", element.getSystemElement()); 15554 } 15555 if (element.hasCodeElement()) { 15556 composeCode("code", element.getCodeElement()); 15557 } 15558 composeElementClose(element); 15559 xml.exit(FHIR_NS, name); 15560 } 15561 } 15562 15563 protected void composeMoney(String name, Money element) throws IOException { 15564 if (element != null) { 15565 composeTypeAttributes(element); 15566 xml.enter(FHIR_NS, name); 15567 composeElementElements(element); 15568 if (element.hasValueElement()) { 15569 composeDecimal("value", element.getValueElement()); 15570 } 15571 if (element.hasComparatorElement()) 15572 composeEnumeration("comparator", element.getComparatorElement(), new Money.QuantityComparatorEnumFactory()); 15573 if (element.hasUnitElement()) { 15574 composeString("unit", element.getUnitElement()); 15575 } 15576 if (element.hasSystemElement()) { 15577 composeUri("system", element.getSystemElement()); 15578 } 15579 if (element.hasCodeElement()) { 15580 composeCode("code", element.getCodeElement()); 15581 } 15582 composeElementClose(element); 15583 xml.exit(FHIR_NS, name); 15584 } 15585 } 15586 15587 protected void composeDistance(String name, Distance element) throws IOException { 15588 if (element != null) { 15589 composeTypeAttributes(element); 15590 xml.enter(FHIR_NS, name); 15591 composeElementElements(element); 15592 if (element.hasValueElement()) { 15593 composeDecimal("value", element.getValueElement()); 15594 } 15595 if (element.hasComparatorElement()) 15596 composeEnumeration("comparator", element.getComparatorElement(), new Distance.QuantityComparatorEnumFactory()); 15597 if (element.hasUnitElement()) { 15598 composeString("unit", element.getUnitElement()); 15599 } 15600 if (element.hasSystemElement()) { 15601 composeUri("system", element.getSystemElement()); 15602 } 15603 if (element.hasCodeElement()) { 15604 composeCode("code", element.getCodeElement()); 15605 } 15606 composeElementClose(element); 15607 xml.exit(FHIR_NS, name); 15608 } 15609 } 15610 15611 protected void composeDuration(String name, Duration element) throws IOException { 15612 if (element != null) { 15613 composeTypeAttributes(element); 15614 xml.enter(FHIR_NS, name); 15615 composeElementElements(element); 15616 if (element.hasValueElement()) { 15617 composeDecimal("value", element.getValueElement()); 15618 } 15619 if (element.hasComparatorElement()) 15620 composeEnumeration("comparator", element.getComparatorElement(), new Duration.QuantityComparatorEnumFactory()); 15621 if (element.hasUnitElement()) { 15622 composeString("unit", element.getUnitElement()); 15623 } 15624 if (element.hasSystemElement()) { 15625 composeUri("system", element.getSystemElement()); 15626 } 15627 if (element.hasCodeElement()) { 15628 composeCode("code", element.getCodeElement()); 15629 } 15630 composeElementClose(element); 15631 xml.exit(FHIR_NS, name); 15632 } 15633 } 15634 15635 protected void composeSimpleQuantity(String name, SimpleQuantity element) throws IOException { 15636 if (element != null) { 15637 composeTypeAttributes(element); 15638 xml.enter(FHIR_NS, name); 15639 composeElementElements(element); 15640 if (element.hasValueElement()) { 15641 composeDecimal("value", element.getValueElement()); 15642 } 15643 if (element.hasComparatorElement()) 15644 composeEnumeration("comparator", element.getComparatorElement(), new SimpleQuantity.QuantityComparatorEnumFactory()); 15645 if (element.hasUnitElement()) { 15646 composeString("unit", element.getUnitElement()); 15647 } 15648 if (element.hasSystemElement()) { 15649 composeUri("system", element.getSystemElement()); 15650 } 15651 if (element.hasCodeElement()) { 15652 composeCode("code", element.getCodeElement()); 15653 } 15654 composeElementClose(element); 15655 xml.exit(FHIR_NS, name); 15656 } 15657 } 15658 15659 protected void composeTriggerDefinition(String name, TriggerDefinition element) throws IOException { 15660 if (element != null) { 15661 composeElementAttributes(element); 15662 xml.enter(FHIR_NS, name); 15663 composeElementElements(element); 15664 if (element.hasTypeElement()) 15665 composeEnumeration("type", element.getTypeElement(), new TriggerDefinition.TriggerTypeEnumFactory()); 15666 if (element.hasEventNameElement()) { 15667 composeString("eventName", element.getEventNameElement()); 15668 } 15669 if (element.hasEventTiming()) { 15670 composeType("eventTiming", element.getEventTiming()); 15671 } if (element.hasEventData()) { 15672 composeDataRequirement("eventData", element.getEventData()); 15673 } 15674 composeElementClose(element); 15675 xml.exit(FHIR_NS, name); 15676 } 15677 } 15678 15679 protected void composeElementDefinition(String name, ElementDefinition element) throws IOException { 15680 if (element != null) { 15681 composeElementAttributes(element); 15682 xml.enter(FHIR_NS, name); 15683 composeElementElements(element); 15684 if (element.hasPathElement()) { 15685 composeString("path", element.getPathElement()); 15686 } 15687 if (element.hasRepresentation()) 15688 for (Enumeration<ElementDefinition.PropertyRepresentation> e : element.getRepresentation()) 15689 composeEnumeration("representation", e, new ElementDefinition.PropertyRepresentationEnumFactory()); 15690 if (element.hasNameElement()) { 15691 composeString("name", element.getNameElement()); 15692 } 15693 if (element.hasLabelElement()) { 15694 composeString("label", element.getLabelElement()); 15695 } 15696 if (element.hasCode()) { 15697 for (Coding e : element.getCode()) 15698 composeCoding("code", e); 15699 } 15700 if (element.hasSlicing()) { 15701 composeElementDefinitionElementDefinitionSlicingComponent("slicing", element.getSlicing()); 15702 } 15703 if (element.hasShortElement()) { 15704 composeString("short", element.getShortElement()); 15705 } 15706 if (element.hasDefinitionElement()) { 15707 composeMarkdown("definition", element.getDefinitionElement()); 15708 } 15709 if (element.hasCommentsElement()) { 15710 composeMarkdown("comments", element.getCommentsElement()); 15711 } 15712 if (element.hasRequirementsElement()) { 15713 composeMarkdown("requirements", element.getRequirementsElement()); 15714 } 15715 if (element.hasAlias()) { 15716 for (StringType e : element.getAlias()) 15717 composeString("alias", e); 15718 } 15719 if (element.hasMinElement()) { 15720 composeInteger("min", element.getMinElement()); 15721 } 15722 if (element.hasMaxElement()) { 15723 composeString("max", element.getMaxElement()); 15724 } 15725 if (element.hasBase()) { 15726 composeElementDefinitionElementDefinitionBaseComponent("base", element.getBase()); 15727 } 15728 if (element.hasContentReferenceElement()) { 15729 composeUri("contentReference", element.getContentReferenceElement()); 15730 } 15731 if (element.hasType()) { 15732 for (ElementDefinition.TypeRefComponent e : element.getType()) 15733 composeElementDefinitionTypeRefComponent("type", e); 15734 } 15735 if (element.hasDefaultValue()) { 15736 composeType("defaultValue", element.getDefaultValue()); 15737 } if (element.hasMeaningWhenMissingElement()) { 15738 composeMarkdown("meaningWhenMissing", element.getMeaningWhenMissingElement()); 15739 } 15740 if (element.hasFixed()) { 15741 composeType("fixed", element.getFixed()); 15742 } if (element.hasPattern()) { 15743 composeType("pattern", element.getPattern()); 15744 } if (element.hasExample()) { 15745 composeType("example", element.getExample()); 15746 } if (element.hasMinValue()) { 15747 composeType("minValue", element.getMinValue()); 15748 } if (element.hasMaxValue()) { 15749 composeType("maxValue", element.getMaxValue()); 15750 } if (element.hasMaxLengthElement()) { 15751 composeInteger("maxLength", element.getMaxLengthElement()); 15752 } 15753 if (element.hasCondition()) { 15754 for (IdType e : element.getCondition()) 15755 composeId("condition", e); 15756 } 15757 if (element.hasConstraint()) { 15758 for (ElementDefinition.ElementDefinitionConstraintComponent e : element.getConstraint()) 15759 composeElementDefinitionElementDefinitionConstraintComponent("constraint", e); 15760 } 15761 if (element.hasMustSupportElement()) { 15762 composeBoolean("mustSupport", element.getMustSupportElement()); 15763 } 15764 if (element.hasIsModifierElement()) { 15765 composeBoolean("isModifier", element.getIsModifierElement()); 15766 } 15767 if (element.hasIsSummaryElement()) { 15768 composeBoolean("isSummary", element.getIsSummaryElement()); 15769 } 15770 if (element.hasBinding()) { 15771 composeElementDefinitionElementDefinitionBindingComponent("binding", element.getBinding()); 15772 } 15773 if (element.hasMapping()) { 15774 for (ElementDefinition.ElementDefinitionMappingComponent e : element.getMapping()) 15775 composeElementDefinitionElementDefinitionMappingComponent("mapping", e); 15776 } 15777 composeElementClose(element); 15778 xml.exit(FHIR_NS, name); 15779 } 15780 } 15781 15782 protected void composeElementDefinitionElementDefinitionSlicingComponent(String name, ElementDefinition.ElementDefinitionSlicingComponent element) throws IOException { 15783 if (element != null) { 15784 composeElementAttributes(element); 15785 xml.enter(FHIR_NS, name); 15786 composeElementElements(element); 15787 if (element.hasDiscriminator()) { 15788 for (StringType e : element.getDiscriminator()) 15789 composeString("discriminator", e); 15790 } 15791 if (element.hasDescriptionElement()) { 15792 composeString("description", element.getDescriptionElement()); 15793 } 15794 if (element.hasOrderedElement()) { 15795 composeBoolean("ordered", element.getOrderedElement()); 15796 } 15797 if (element.hasRulesElement()) 15798 composeEnumeration("rules", element.getRulesElement(), new ElementDefinition.SlicingRulesEnumFactory()); 15799 composeElementClose(element); 15800 xml.exit(FHIR_NS, name); 15801 } 15802 } 15803 15804 protected void composeElementDefinitionElementDefinitionBaseComponent(String name, ElementDefinition.ElementDefinitionBaseComponent element) throws IOException { 15805 if (element != null) { 15806 composeElementAttributes(element); 15807 xml.enter(FHIR_NS, name); 15808 composeElementElements(element); 15809 if (element.hasPathElement()) { 15810 composeString("path", element.getPathElement()); 15811 } 15812 if (element.hasMinElement()) { 15813 composeInteger("min", element.getMinElement()); 15814 } 15815 if (element.hasMaxElement()) { 15816 composeString("max", element.getMaxElement()); 15817 } 15818 composeElementClose(element); 15819 xml.exit(FHIR_NS, name); 15820 } 15821 } 15822 15823 protected void composeElementDefinitionTypeRefComponent(String name, ElementDefinition.TypeRefComponent element) throws IOException { 15824 if (element != null) { 15825 composeElementAttributes(element); 15826 xml.enter(FHIR_NS, name); 15827 composeElementElements(element); 15828 if (element.hasCodeElement()) { 15829 composeCode("code", element.getCodeElement()); 15830 } 15831 if (element.hasProfile()) { 15832 for (UriType e : element.getProfile()) 15833 composeUri("profile", e); 15834 } 15835 if (element.hasAggregation()) 15836 for (Enumeration<ElementDefinition.AggregationMode> e : element.getAggregation()) 15837 composeEnumeration("aggregation", e, new ElementDefinition.AggregationModeEnumFactory()); 15838 if (element.hasVersioningElement()) 15839 composeEnumeration("versioning", element.getVersioningElement(), new ElementDefinition.ReferenceVersionRulesEnumFactory()); 15840 composeElementClose(element); 15841 xml.exit(FHIR_NS, name); 15842 } 15843 } 15844 15845 protected void composeElementDefinitionElementDefinitionConstraintComponent(String name, ElementDefinition.ElementDefinitionConstraintComponent element) throws IOException { 15846 if (element != null) { 15847 composeElementAttributes(element); 15848 xml.enter(FHIR_NS, name); 15849 composeElementElements(element); 15850 if (element.hasKeyElement()) { 15851 composeId("key", element.getKeyElement()); 15852 } 15853 if (element.hasRequirementsElement()) { 15854 composeString("requirements", element.getRequirementsElement()); 15855 } 15856 if (element.hasSeverityElement()) 15857 composeEnumeration("severity", element.getSeverityElement(), new ElementDefinition.ConstraintSeverityEnumFactory()); 15858 if (element.hasHumanElement()) { 15859 composeString("human", element.getHumanElement()); 15860 } 15861 if (element.hasExpressionElement()) { 15862 composeString("expression", element.getExpressionElement()); 15863 } 15864 if (element.hasXpathElement()) { 15865 composeString("xpath", element.getXpathElement()); 15866 } 15867 composeElementClose(element); 15868 xml.exit(FHIR_NS, name); 15869 } 15870 } 15871 15872 protected void composeElementDefinitionElementDefinitionBindingComponent(String name, ElementDefinition.ElementDefinitionBindingComponent element) throws IOException { 15873 if (element != null) { 15874 composeElementAttributes(element); 15875 xml.enter(FHIR_NS, name); 15876 composeElementElements(element); 15877 if (element.hasStrengthElement()) 15878 composeEnumeration("strength", element.getStrengthElement(), new Enumerations.BindingStrengthEnumFactory()); 15879 if (element.hasDescriptionElement()) { 15880 composeString("description", element.getDescriptionElement()); 15881 } 15882 if (element.hasValueSet()) { 15883 composeType("valueSet", element.getValueSet()); 15884 } composeElementClose(element); 15885 xml.exit(FHIR_NS, name); 15886 } 15887 } 15888 15889 protected void composeElementDefinitionElementDefinitionMappingComponent(String name, ElementDefinition.ElementDefinitionMappingComponent element) throws IOException { 15890 if (element != null) { 15891 composeElementAttributes(element); 15892 xml.enter(FHIR_NS, name); 15893 composeElementElements(element); 15894 if (element.hasIdentityElement()) { 15895 composeId("identity", element.getIdentityElement()); 15896 } 15897 if (element.hasLanguageElement()) { 15898 composeCode("language", element.getLanguageElement()); 15899 } 15900 if (element.hasMapElement()) { 15901 composeString("map", element.getMapElement()); 15902 } 15903 composeElementClose(element); 15904 xml.exit(FHIR_NS, name); 15905 } 15906 } 15907 15908 protected void composeTiming(String name, Timing element) throws IOException { 15909 if (element != null) { 15910 composeElementAttributes(element); 15911 xml.enter(FHIR_NS, name); 15912 composeElementElements(element); 15913 if (element.hasEvent()) { 15914 for (DateTimeType e : element.getEvent()) 15915 composeDateTime("event", e); 15916 } 15917 if (element.hasRepeat()) { 15918 composeTimingTimingRepeatComponent("repeat", element.getRepeat()); 15919 } 15920 if (element.hasCode()) { 15921 composeCodeableConcept("code", element.getCode()); 15922 } 15923 composeElementClose(element); 15924 xml.exit(FHIR_NS, name); 15925 } 15926 } 15927 15928 protected void composeTimingTimingRepeatComponent(String name, Timing.TimingRepeatComponent element) throws IOException { 15929 if (element != null) { 15930 composeElementAttributes(element); 15931 xml.enter(FHIR_NS, name); 15932 composeElementElements(element); 15933 if (element.hasBounds()) { 15934 composeType("bounds", element.getBounds()); 15935 } if (element.hasCountElement()) { 15936 composeInteger("count", element.getCountElement()); 15937 } 15938 if (element.hasCountMaxElement()) { 15939 composeInteger("countMax", element.getCountMaxElement()); 15940 } 15941 if (element.hasDurationElement()) { 15942 composeDecimal("duration", element.getDurationElement()); 15943 } 15944 if (element.hasDurationMaxElement()) { 15945 composeDecimal("durationMax", element.getDurationMaxElement()); 15946 } 15947 if (element.hasDurationUnitElement()) 15948 composeEnumeration("durationUnit", element.getDurationUnitElement(), new Timing.UnitsOfTimeEnumFactory()); 15949 if (element.hasFrequencyElement()) { 15950 composeInteger("frequency", element.getFrequencyElement()); 15951 } 15952 if (element.hasFrequencyMaxElement()) { 15953 composeInteger("frequencyMax", element.getFrequencyMaxElement()); 15954 } 15955 if (element.hasPeriodElement()) { 15956 composeDecimal("period", element.getPeriodElement()); 15957 } 15958 if (element.hasPeriodMaxElement()) { 15959 composeDecimal("periodMax", element.getPeriodMaxElement()); 15960 } 15961 if (element.hasPeriodUnitElement()) 15962 composeEnumeration("periodUnit", element.getPeriodUnitElement(), new Timing.UnitsOfTimeEnumFactory()); 15963 if (element.hasWhenElement()) 15964 composeEnumeration("when", element.getWhenElement(), new Timing.EventTimingEnumFactory()); 15965 if (element.hasOffsetElement()) { 15966 composeUnsignedInt("offset", element.getOffsetElement()); 15967 } 15968 composeElementClose(element); 15969 xml.exit(FHIR_NS, name); 15970 } 15971 } 15972 15973 protected void composeModuleMetadata(String name, ModuleMetadata element) throws IOException { 15974 if (element != null) { 15975 composeElementAttributes(element); 15976 xml.enter(FHIR_NS, name); 15977 composeElementElements(element); 15978 if (element.hasUrlElement()) { 15979 composeUri("url", element.getUrlElement()); 15980 } 15981 if (element.hasIdentifier()) { 15982 for (Identifier e : element.getIdentifier()) 15983 composeIdentifier("identifier", e); 15984 } 15985 if (element.hasVersionElement()) { 15986 composeString("version", element.getVersionElement()); 15987 } 15988 if (element.hasNameElement()) { 15989 composeString("name", element.getNameElement()); 15990 } 15991 if (element.hasTitleElement()) { 15992 composeString("title", element.getTitleElement()); 15993 } 15994 if (element.hasTypeElement()) 15995 composeEnumeration("type", element.getTypeElement(), new ModuleMetadata.ModuleMetadataTypeEnumFactory()); 15996 if (element.hasStatusElement()) 15997 composeEnumeration("status", element.getStatusElement(), new ModuleMetadata.ModuleMetadataStatusEnumFactory()); 15998 if (element.hasExperimentalElement()) { 15999 composeBoolean("experimental", element.getExperimentalElement()); 16000 } 16001 if (element.hasDescriptionElement()) { 16002 composeString("description", element.getDescriptionElement()); 16003 } 16004 if (element.hasPurposeElement()) { 16005 composeString("purpose", element.getPurposeElement()); 16006 } 16007 if (element.hasUsageElement()) { 16008 composeString("usage", element.getUsageElement()); 16009 } 16010 if (element.hasPublicationDateElement()) { 16011 composeDate("publicationDate", element.getPublicationDateElement()); 16012 } 16013 if (element.hasLastReviewDateElement()) { 16014 composeDate("lastReviewDate", element.getLastReviewDateElement()); 16015 } 16016 if (element.hasEffectivePeriod()) { 16017 composePeriod("effectivePeriod", element.getEffectivePeriod()); 16018 } 16019 if (element.hasCoverage()) { 16020 for (ModuleMetadata.ModuleMetadataCoverageComponent e : element.getCoverage()) 16021 composeModuleMetadataModuleMetadataCoverageComponent("coverage", e); 16022 } 16023 if (element.hasTopic()) { 16024 for (CodeableConcept e : element.getTopic()) 16025 composeCodeableConcept("topic", e); 16026 } 16027 if (element.hasContributor()) { 16028 for (ModuleMetadata.ModuleMetadataContributorComponent e : element.getContributor()) 16029 composeModuleMetadataModuleMetadataContributorComponent("contributor", e); 16030 } 16031 if (element.hasPublisherElement()) { 16032 composeString("publisher", element.getPublisherElement()); 16033 } 16034 if (element.hasContact()) { 16035 for (ModuleMetadata.ModuleMetadataContactComponent e : element.getContact()) 16036 composeModuleMetadataModuleMetadataContactComponent("contact", e); 16037 } 16038 if (element.hasCopyrightElement()) { 16039 composeString("copyright", element.getCopyrightElement()); 16040 } 16041 if (element.hasRelatedResource()) { 16042 for (ModuleMetadata.ModuleMetadataRelatedResourceComponent e : element.getRelatedResource()) 16043 composeModuleMetadataModuleMetadataRelatedResourceComponent("relatedResource", e); 16044 } 16045 composeElementClose(element); 16046 xml.exit(FHIR_NS, name); 16047 } 16048 } 16049 16050 protected void composeModuleMetadataModuleMetadataCoverageComponent(String name, ModuleMetadata.ModuleMetadataCoverageComponent element) throws IOException { 16051 if (element != null) { 16052 composeElementAttributes(element); 16053 xml.enter(FHIR_NS, name); 16054 composeElementElements(element); 16055 if (element.hasFocus()) { 16056 composeCoding("focus", element.getFocus()); 16057 } 16058 if (element.hasValue()) { 16059 composeCodeableConcept("value", element.getValue()); 16060 } 16061 composeElementClose(element); 16062 xml.exit(FHIR_NS, name); 16063 } 16064 } 16065 16066 protected void composeModuleMetadataModuleMetadataContributorComponent(String name, ModuleMetadata.ModuleMetadataContributorComponent element) throws IOException { 16067 if (element != null) { 16068 composeElementAttributes(element); 16069 xml.enter(FHIR_NS, name); 16070 composeElementElements(element); 16071 if (element.hasTypeElement()) 16072 composeEnumeration("type", element.getTypeElement(), new ModuleMetadata.ModuleMetadataContributorTypeEnumFactory()); 16073 if (element.hasNameElement()) { 16074 composeString("name", element.getNameElement()); 16075 } 16076 if (element.hasContact()) { 16077 for (ModuleMetadata.ModuleMetadataContributorContactComponent e : element.getContact()) 16078 composeModuleMetadataModuleMetadataContributorContactComponent("contact", e); 16079 } 16080 composeElementClose(element); 16081 xml.exit(FHIR_NS, name); 16082 } 16083 } 16084 16085 protected void composeModuleMetadataModuleMetadataContributorContactComponent(String name, ModuleMetadata.ModuleMetadataContributorContactComponent element) throws IOException { 16086 if (element != null) { 16087 composeElementAttributes(element); 16088 xml.enter(FHIR_NS, name); 16089 composeElementElements(element); 16090 if (element.hasNameElement()) { 16091 composeString("name", element.getNameElement()); 16092 } 16093 if (element.hasTelecom()) { 16094 for (ContactPoint e : element.getTelecom()) 16095 composeContactPoint("telecom", e); 16096 } 16097 composeElementClose(element); 16098 xml.exit(FHIR_NS, name); 16099 } 16100 } 16101 16102 protected void composeModuleMetadataModuleMetadataContactComponent(String name, ModuleMetadata.ModuleMetadataContactComponent element) throws IOException { 16103 if (element != null) { 16104 composeElementAttributes(element); 16105 xml.enter(FHIR_NS, name); 16106 composeElementElements(element); 16107 if (element.hasNameElement()) { 16108 composeString("name", element.getNameElement()); 16109 } 16110 if (element.hasTelecom()) { 16111 for (ContactPoint e : element.getTelecom()) 16112 composeContactPoint("telecom", e); 16113 } 16114 composeElementClose(element); 16115 xml.exit(FHIR_NS, name); 16116 } 16117 } 16118 16119 protected void composeModuleMetadataModuleMetadataRelatedResourceComponent(String name, ModuleMetadata.ModuleMetadataRelatedResourceComponent element) throws IOException { 16120 if (element != null) { 16121 composeElementAttributes(element); 16122 xml.enter(FHIR_NS, name); 16123 composeElementElements(element); 16124 if (element.hasTypeElement()) 16125 composeEnumeration("type", element.getTypeElement(), new ModuleMetadata.ModuleMetadataResourceTypeEnumFactory()); 16126 if (element.hasDocument()) { 16127 composeAttachment("document", element.getDocument()); 16128 } 16129 if (element.hasResource()) { 16130 composeReference("resource", element.getResource()); 16131 } 16132 composeElementClose(element); 16133 xml.exit(FHIR_NS, name); 16134 } 16135 } 16136 16137 protected void composeActionDefinition(String name, ActionDefinition element) throws IOException { 16138 if (element != null) { 16139 composeElementAttributes(element); 16140 xml.enter(FHIR_NS, name); 16141 composeElementElements(element); 16142 if (element.hasActionIdentifier()) { 16143 composeIdentifier("actionIdentifier", element.getActionIdentifier()); 16144 } 16145 if (element.hasLabelElement()) { 16146 composeString("label", element.getLabelElement()); 16147 } 16148 if (element.hasTitleElement()) { 16149 composeString("title", element.getTitleElement()); 16150 } 16151 if (element.hasDescriptionElement()) { 16152 composeString("description", element.getDescriptionElement()); 16153 } 16154 if (element.hasTextEquivalentElement()) { 16155 composeString("textEquivalent", element.getTextEquivalentElement()); 16156 } 16157 if (element.hasConcept()) { 16158 for (CodeableConcept e : element.getConcept()) 16159 composeCodeableConcept("concept", e); 16160 } 16161 if (element.hasSupportingEvidence()) { 16162 for (Attachment e : element.getSupportingEvidence()) 16163 composeAttachment("supportingEvidence", e); 16164 } 16165 if (element.hasDocumentation()) { 16166 for (Attachment e : element.getDocumentation()) 16167 composeAttachment("documentation", e); 16168 } 16169 if (element.hasRelatedAction()) { 16170 composeActionDefinitionActionDefinitionRelatedActionComponent("relatedAction", element.getRelatedAction()); 16171 } 16172 if (element.hasParticipantType()) 16173 for (Enumeration<ActionDefinition.ParticipantType> e : element.getParticipantType()) 16174 composeEnumeration("participantType", e, new ActionDefinition.ParticipantTypeEnumFactory()); 16175 if (element.hasTypeElement()) 16176 composeEnumeration("type", element.getTypeElement(), new ActionDefinition.ActionTypeEnumFactory()); 16177 if (element.hasBehavior()) { 16178 for (ActionDefinition.ActionDefinitionBehaviorComponent e : element.getBehavior()) 16179 composeActionDefinitionActionDefinitionBehaviorComponent("behavior", e); 16180 } 16181 if (element.hasResource()) { 16182 composeReference("resource", element.getResource()); 16183 } 16184 if (element.hasCustomization()) { 16185 for (ActionDefinition.ActionDefinitionCustomizationComponent e : element.getCustomization()) 16186 composeActionDefinitionActionDefinitionCustomizationComponent("customization", e); 16187 } 16188 if (element.hasAction()) { 16189 for (ActionDefinition e : element.getAction()) 16190 composeActionDefinition("action", e); 16191 } 16192 composeElementClose(element); 16193 xml.exit(FHIR_NS, name); 16194 } 16195 } 16196 16197 protected void composeActionDefinitionActionDefinitionRelatedActionComponent(String name, ActionDefinition.ActionDefinitionRelatedActionComponent element) throws IOException { 16198 if (element != null) { 16199 composeElementAttributes(element); 16200 xml.enter(FHIR_NS, name); 16201 composeElementElements(element); 16202 if (element.hasActionIdentifier()) { 16203 composeIdentifier("actionIdentifier", element.getActionIdentifier()); 16204 } 16205 if (element.hasRelationshipElement()) 16206 composeEnumeration("relationship", element.getRelationshipElement(), new ActionDefinition.ActionRelationshipTypeEnumFactory()); 16207 if (element.hasOffset()) { 16208 composeType("offset", element.getOffset()); 16209 } if (element.hasAnchorElement()) 16210 composeEnumeration("anchor", element.getAnchorElement(), new ActionDefinition.ActionRelationshipAnchorEnumFactory()); 16211 composeElementClose(element); 16212 xml.exit(FHIR_NS, name); 16213 } 16214 } 16215 16216 protected void composeActionDefinitionActionDefinitionBehaviorComponent(String name, ActionDefinition.ActionDefinitionBehaviorComponent element) throws IOException { 16217 if (element != null) { 16218 composeElementAttributes(element); 16219 xml.enter(FHIR_NS, name); 16220 composeElementElements(element); 16221 if (element.hasType()) { 16222 composeCoding("type", element.getType()); 16223 } 16224 if (element.hasValue()) { 16225 composeCoding("value", element.getValue()); 16226 } 16227 composeElementClose(element); 16228 xml.exit(FHIR_NS, name); 16229 } 16230 } 16231 16232 protected void composeActionDefinitionActionDefinitionCustomizationComponent(String name, ActionDefinition.ActionDefinitionCustomizationComponent element) throws IOException { 16233 if (element != null) { 16234 composeElementAttributes(element); 16235 xml.enter(FHIR_NS, name); 16236 composeElementElements(element); 16237 if (element.hasPathElement()) { 16238 composeString("path", element.getPathElement()); 16239 } 16240 if (element.hasExpressionElement()) { 16241 composeString("expression", element.getExpressionElement()); 16242 } 16243 composeElementClose(element); 16244 xml.exit(FHIR_NS, name); 16245 } 16246 } 16247 16248 protected void composeAddress(String name, Address element) throws IOException { 16249 if (element != null) { 16250 composeElementAttributes(element); 16251 xml.enter(FHIR_NS, name); 16252 composeElementElements(element); 16253 if (element.hasUseElement()) 16254 composeEnumeration("use", element.getUseElement(), new Address.AddressUseEnumFactory()); 16255 if (element.hasTypeElement()) 16256 composeEnumeration("type", element.getTypeElement(), new Address.AddressTypeEnumFactory()); 16257 if (element.hasTextElement()) { 16258 composeString("text", element.getTextElement()); 16259 } 16260 if (element.hasLine()) { 16261 for (StringType e : element.getLine()) 16262 composeString("line", e); 16263 } 16264 if (element.hasCityElement()) { 16265 composeString("city", element.getCityElement()); 16266 } 16267 if (element.hasDistrictElement()) { 16268 composeString("district", element.getDistrictElement()); 16269 } 16270 if (element.hasStateElement()) { 16271 composeString("state", element.getStateElement()); 16272 } 16273 if (element.hasPostalCodeElement()) { 16274 composeString("postalCode", element.getPostalCodeElement()); 16275 } 16276 if (element.hasCountryElement()) { 16277 composeString("country", element.getCountryElement()); 16278 } 16279 if (element.hasPeriod()) { 16280 composePeriod("period", element.getPeriod()); 16281 } 16282 composeElementClose(element); 16283 xml.exit(FHIR_NS, name); 16284 } 16285 } 16286 16287 protected void composeHumanName(String name, HumanName element) throws IOException { 16288 if (element != null) { 16289 composeElementAttributes(element); 16290 xml.enter(FHIR_NS, name); 16291 composeElementElements(element); 16292 if (element.hasUseElement()) 16293 composeEnumeration("use", element.getUseElement(), new HumanName.NameUseEnumFactory()); 16294 if (element.hasTextElement()) { 16295 composeString("text", element.getTextElement()); 16296 } 16297 if (element.hasFamily()) { 16298 for (StringType e : element.getFamily()) 16299 composeString("family", e); 16300 } 16301 if (element.hasGiven()) { 16302 for (StringType e : element.getGiven()) 16303 composeString("given", e); 16304 } 16305 if (element.hasPrefix()) { 16306 for (StringType e : element.getPrefix()) 16307 composeString("prefix", e); 16308 } 16309 if (element.hasSuffix()) { 16310 for (StringType e : element.getSuffix()) 16311 composeString("suffix", e); 16312 } 16313 if (element.hasPeriod()) { 16314 composePeriod("period", element.getPeriod()); 16315 } 16316 composeElementClose(element); 16317 xml.exit(FHIR_NS, name); 16318 } 16319 } 16320 16321 protected void composeDataRequirement(String name, DataRequirement element) throws IOException { 16322 if (element != null) { 16323 composeElementAttributes(element); 16324 xml.enter(FHIR_NS, name); 16325 composeElementElements(element); 16326 if (element.hasTypeElement()) { 16327 composeCode("type", element.getTypeElement()); 16328 } 16329 if (element.hasProfile()) { 16330 composeReference("profile", element.getProfile()); 16331 } 16332 if (element.hasMustSupport()) { 16333 for (StringType e : element.getMustSupport()) 16334 composeString("mustSupport", e); 16335 } 16336 if (element.hasCodeFilter()) { 16337 for (DataRequirement.DataRequirementCodeFilterComponent e : element.getCodeFilter()) 16338 composeDataRequirementDataRequirementCodeFilterComponent("codeFilter", e); 16339 } 16340 if (element.hasDateFilter()) { 16341 for (DataRequirement.DataRequirementDateFilterComponent e : element.getDateFilter()) 16342 composeDataRequirementDataRequirementDateFilterComponent("dateFilter", e); 16343 } 16344 composeElementClose(element); 16345 xml.exit(FHIR_NS, name); 16346 } 16347 } 16348 16349 protected void composeDataRequirementDataRequirementCodeFilterComponent(String name, DataRequirement.DataRequirementCodeFilterComponent element) throws IOException { 16350 if (element != null) { 16351 composeElementAttributes(element); 16352 xml.enter(FHIR_NS, name); 16353 composeElementElements(element); 16354 if (element.hasPathElement()) { 16355 composeString("path", element.getPathElement()); 16356 } 16357 if (element.hasValueSet()) { 16358 composeType("valueSet", element.getValueSet()); 16359 } if (element.hasValueCode()) { 16360 for (CodeType e : element.getValueCode()) 16361 composeCode("valueCode", e); 16362 } 16363 if (element.hasValueCoding()) { 16364 for (Coding e : element.getValueCoding()) 16365 composeCoding("valueCoding", e); 16366 } 16367 if (element.hasValueCodeableConcept()) { 16368 for (CodeableConcept e : element.getValueCodeableConcept()) 16369 composeCodeableConcept("valueCodeableConcept", e); 16370 } 16371 composeElementClose(element); 16372 xml.exit(FHIR_NS, name); 16373 } 16374 } 16375 16376 protected void composeDataRequirementDataRequirementDateFilterComponent(String name, DataRequirement.DataRequirementDateFilterComponent element) throws IOException { 16377 if (element != null) { 16378 composeElementAttributes(element); 16379 xml.enter(FHIR_NS, name); 16380 composeElementElements(element); 16381 if (element.hasPathElement()) { 16382 composeString("path", element.getPathElement()); 16383 } 16384 if (element.hasValue()) { 16385 composeType("value", element.getValue()); 16386 } composeElementClose(element); 16387 xml.exit(FHIR_NS, name); 16388 } 16389 } 16390 16391 protected void composeMeta(String name, Meta element) throws IOException { 16392 if (element != null) { 16393 composeElementAttributes(element); 16394 xml.enter(FHIR_NS, name); 16395 composeElementElements(element); 16396 if (element.hasVersionIdElement()) { 16397 composeId("versionId", element.getVersionIdElement()); 16398 } 16399 if (element.hasLastUpdatedElement()) { 16400 composeInstant("lastUpdated", element.getLastUpdatedElement()); 16401 } 16402 if (element.hasProfile()) { 16403 for (UriType e : element.getProfile()) 16404 composeUri("profile", e); 16405 } 16406 if (element.hasSecurity()) { 16407 for (Coding e : element.getSecurity()) 16408 composeCoding("security", e); 16409 } 16410 if (element.hasTag()) { 16411 for (Coding e : element.getTag()) 16412 composeCoding("tag", e); 16413 } 16414 composeElementClose(element); 16415 xml.exit(FHIR_NS, name); 16416 } 16417 } 16418 16419 protected void composeParameterDefinition(String name, ParameterDefinition element) throws IOException { 16420 if (element != null) { 16421 composeElementAttributes(element); 16422 xml.enter(FHIR_NS, name); 16423 composeElementElements(element); 16424 if (element.hasNameElement()) { 16425 composeCode("name", element.getNameElement()); 16426 } 16427 if (element.hasUseElement()) { 16428 composeCode("use", element.getUseElement()); 16429 } 16430 if (element.hasMinElement()) { 16431 composeInteger("min", element.getMinElement()); 16432 } 16433 if (element.hasMaxElement()) { 16434 composeString("max", element.getMaxElement()); 16435 } 16436 if (element.hasDocumentationElement()) { 16437 composeString("documentation", element.getDocumentationElement()); 16438 } 16439 if (element.hasTypeElement()) { 16440 composeCode("type", element.getTypeElement()); 16441 } 16442 if (element.hasProfile()) { 16443 composeReference("profile", element.getProfile()); 16444 } 16445 composeElementClose(element); 16446 xml.exit(FHIR_NS, name); 16447 } 16448 } 16449 16450 protected void composeContactPoint(String name, ContactPoint element) throws IOException { 16451 if (element != null) { 16452 composeElementAttributes(element); 16453 xml.enter(FHIR_NS, name); 16454 composeElementElements(element); 16455 if (element.hasSystemElement()) 16456 composeEnumeration("system", element.getSystemElement(), new ContactPoint.ContactPointSystemEnumFactory()); 16457 if (element.hasValueElement()) { 16458 composeString("value", element.getValueElement()); 16459 } 16460 if (element.hasUseElement()) 16461 composeEnumeration("use", element.getUseElement(), new ContactPoint.ContactPointUseEnumFactory()); 16462 if (element.hasRankElement()) { 16463 composePositiveInt("rank", element.getRankElement()); 16464 } 16465 if (element.hasPeriod()) { 16466 composePeriod("period", element.getPeriod()); 16467 } 16468 composeElementClose(element); 16469 xml.exit(FHIR_NS, name); 16470 } 16471 } 16472 16473 protected void composeParameters(String name, Parameters element) throws IOException { 16474 if (element != null) { 16475 composeResourceAttributes(element); 16476 xml.enter(FHIR_NS, name); 16477 composeResourceElements(element); 16478 if (element.hasParameter()) { 16479 for (Parameters.ParametersParameterComponent e : element.getParameter()) 16480 composeParametersParametersParameterComponent("parameter", e); 16481 } 16482 composeElementClose(element); 16483 xml.exit(FHIR_NS, name); 16484 } 16485 } 16486 16487 protected void composeParametersParametersParameterComponent(String name, Parameters.ParametersParameterComponent element) throws IOException { 16488 if (element != null) { 16489 composeElementAttributes(element); 16490 xml.enter(FHIR_NS, name); 16491 composeBackboneElements(element); 16492 if (element.hasNameElement()) { 16493 composeString("name", element.getNameElement()); 16494 } 16495 if (element.hasValue()) { 16496 composeType("value", element.getValue()); 16497 } if (element.hasResource()) { 16498 xml.enter(FHIR_NS, "resource"); 16499 composeResource(element.getResource()); 16500 xml.exit(FHIR_NS, "resource"); 16501 } 16502 if (element.hasPart()) { 16503 for (Parameters.ParametersParameterComponent e : element.getPart()) 16504 composeParametersParametersParameterComponent("part", e); 16505 } 16506 composeElementClose(element); 16507 xml.exit(FHIR_NS, name); 16508 } 16509 } 16510 16511 protected void composeResourceAttributes(Resource element) throws IOException { 16512 if (style != OutputStyle.CANONICAL) 16513 for (String comment : element.getFormatCommentsPre()) 16514 xml.comment(comment, getOutputStyle() == OutputStyle.PRETTY); 16515 } 16516 16517 protected void composeResourceElements(Resource element) throws IOException { 16518 if (element.hasIdElement()) { 16519 composeId("id", element.getIdElement()); 16520 } 16521 if (element.hasMeta()) { 16522 composeMeta("meta", element.getMeta()); 16523 } 16524 if (element.hasImplicitRulesElement()) { 16525 composeUri("implicitRules", element.getImplicitRulesElement()); 16526 } 16527 if (element.hasLanguageElement()) { 16528 composeCode("language", element.getLanguageElement()); 16529 } 16530 } 16531 16532 protected void composeDomainResourceAttributes(DomainResource element) throws IOException { 16533 composeResourceAttributes(element); 16534 } 16535 16536 protected void composeDomainResourceElements(DomainResource element) throws IOException { 16537 composeResourceElements(element); 16538 if (element.hasText()) { 16539 composeNarrative("text", element.getText()); 16540 } 16541 if (element.hasContained()) { 16542 for (Resource e : element.getContained()) 16543 { 16544 xml.enter(FHIR_NS, "contained"); 16545 composeResource(e); 16546 xml.exit(FHIR_NS, "contained"); 16547 } 16548 } 16549 if (element.hasExtension()) 16550 for (Extension e : element.getExtension()) 16551 composeExtension("extension", e); 16552 if (element.hasModifierExtension()) { 16553 for (Extension e : element.getModifierExtension()) 16554 composeExtension("modifierExtension", e); 16555 } 16556 } 16557 16558 protected void composeAccount(String name, Account element) throws IOException { 16559 if (element != null) { 16560 composeDomainResourceAttributes(element); 16561 xml.enter(FHIR_NS, name); 16562 composeDomainResourceElements(element); 16563 if (element.hasIdentifier()) { 16564 for (Identifier e : element.getIdentifier()) 16565 composeIdentifier("identifier", e); 16566 } 16567 if (element.hasNameElement()) { 16568 composeString("name", element.getNameElement()); 16569 } 16570 if (element.hasType()) { 16571 composeCodeableConcept("type", element.getType()); 16572 } 16573 if (element.hasStatusElement()) 16574 composeEnumeration("status", element.getStatusElement(), new Account.AccountStatusEnumFactory()); 16575 if (element.hasActivePeriod()) { 16576 composePeriod("activePeriod", element.getActivePeriod()); 16577 } 16578 if (element.hasCurrency()) { 16579 composeCoding("currency", element.getCurrency()); 16580 } 16581 if (element.hasBalance()) { 16582 composeMoney("balance", element.getBalance()); 16583 } 16584 if (element.hasCoveragePeriod()) { 16585 composePeriod("coveragePeriod", element.getCoveragePeriod()); 16586 } 16587 if (element.hasSubject()) { 16588 composeReference("subject", element.getSubject()); 16589 } 16590 if (element.hasOwner()) { 16591 composeReference("owner", element.getOwner()); 16592 } 16593 if (element.hasDescriptionElement()) { 16594 composeString("description", element.getDescriptionElement()); 16595 } 16596 composeElementClose(element); 16597 xml.exit(FHIR_NS, name); 16598 } 16599 } 16600 16601 protected void composeAllergyIntolerance(String name, AllergyIntolerance element) throws IOException { 16602 if (element != null) { 16603 composeDomainResourceAttributes(element); 16604 xml.enter(FHIR_NS, name); 16605 composeDomainResourceElements(element); 16606 if (element.hasIdentifier()) { 16607 for (Identifier e : element.getIdentifier()) 16608 composeIdentifier("identifier", e); 16609 } 16610 if (element.hasStatusElement()) 16611 composeEnumeration("status", element.getStatusElement(), new AllergyIntolerance.AllergyIntoleranceStatusEnumFactory()); 16612 if (element.hasTypeElement()) 16613 composeEnumeration("type", element.getTypeElement(), new AllergyIntolerance.AllergyIntoleranceTypeEnumFactory()); 16614 if (element.hasCategoryElement()) 16615 composeEnumeration("category", element.getCategoryElement(), new AllergyIntolerance.AllergyIntoleranceCategoryEnumFactory()); 16616 if (element.hasCriticalityElement()) 16617 composeEnumeration("criticality", element.getCriticalityElement(), new AllergyIntolerance.AllergyIntoleranceCriticalityEnumFactory()); 16618 if (element.hasSubstance()) { 16619 composeCodeableConcept("substance", element.getSubstance()); 16620 } 16621 if (element.hasPatient()) { 16622 composeReference("patient", element.getPatient()); 16623 } 16624 if (element.hasRecordedDateElement()) { 16625 composeDateTime("recordedDate", element.getRecordedDateElement()); 16626 } 16627 if (element.hasRecorder()) { 16628 composeReference("recorder", element.getRecorder()); 16629 } 16630 if (element.hasReporter()) { 16631 composeReference("reporter", element.getReporter()); 16632 } 16633 if (element.hasOnsetElement()) { 16634 composeDateTime("onset", element.getOnsetElement()); 16635 } 16636 if (element.hasLastOccurenceElement()) { 16637 composeDateTime("lastOccurence", element.getLastOccurenceElement()); 16638 } 16639 if (element.hasNote()) { 16640 for (Annotation e : element.getNote()) 16641 composeAnnotation("note", e); 16642 } 16643 if (element.hasReaction()) { 16644 for (AllergyIntolerance.AllergyIntoleranceReactionComponent e : element.getReaction()) 16645 composeAllergyIntoleranceAllergyIntoleranceReactionComponent("reaction", e); 16646 } 16647 composeElementClose(element); 16648 xml.exit(FHIR_NS, name); 16649 } 16650 } 16651 16652 protected void composeAllergyIntoleranceAllergyIntoleranceReactionComponent(String name, AllergyIntolerance.AllergyIntoleranceReactionComponent element) throws IOException { 16653 if (element != null) { 16654 composeElementAttributes(element); 16655 xml.enter(FHIR_NS, name); 16656 composeBackboneElements(element); 16657 if (element.hasSubstance()) { 16658 composeCodeableConcept("substance", element.getSubstance()); 16659 } 16660 if (element.hasCertaintyElement()) 16661 composeEnumeration("certainty", element.getCertaintyElement(), new AllergyIntolerance.AllergyIntoleranceCertaintyEnumFactory()); 16662 if (element.hasManifestation()) { 16663 for (CodeableConcept e : element.getManifestation()) 16664 composeCodeableConcept("manifestation", e); 16665 } 16666 if (element.hasDescriptionElement()) { 16667 composeString("description", element.getDescriptionElement()); 16668 } 16669 if (element.hasOnsetElement()) { 16670 composeDateTime("onset", element.getOnsetElement()); 16671 } 16672 if (element.hasSeverityElement()) 16673 composeEnumeration("severity", element.getSeverityElement(), new AllergyIntolerance.AllergyIntoleranceSeverityEnumFactory()); 16674 if (element.hasExposureRoute()) { 16675 composeCodeableConcept("exposureRoute", element.getExposureRoute()); 16676 } 16677 if (element.hasNote()) { 16678 for (Annotation e : element.getNote()) 16679 composeAnnotation("note", e); 16680 } 16681 composeElementClose(element); 16682 xml.exit(FHIR_NS, name); 16683 } 16684 } 16685 16686 protected void composeAppointment(String name, Appointment element) throws IOException { 16687 if (element != null) { 16688 composeDomainResourceAttributes(element); 16689 xml.enter(FHIR_NS, name); 16690 composeDomainResourceElements(element); 16691 if (element.hasIdentifier()) { 16692 for (Identifier e : element.getIdentifier()) 16693 composeIdentifier("identifier", e); 16694 } 16695 if (element.hasStatusElement()) 16696 composeEnumeration("status", element.getStatusElement(), new Appointment.AppointmentStatusEnumFactory()); 16697 if (element.hasServiceCategory()) { 16698 composeCodeableConcept("serviceCategory", element.getServiceCategory()); 16699 } 16700 if (element.hasServiceType()) { 16701 for (CodeableConcept e : element.getServiceType()) 16702 composeCodeableConcept("serviceType", e); 16703 } 16704 if (element.hasSpecialty()) { 16705 for (CodeableConcept e : element.getSpecialty()) 16706 composeCodeableConcept("specialty", e); 16707 } 16708 if (element.hasAppointmentType()) { 16709 composeCodeableConcept("appointmentType", element.getAppointmentType()); 16710 } 16711 if (element.hasReason()) { 16712 composeCodeableConcept("reason", element.getReason()); 16713 } 16714 if (element.hasPriorityElement()) { 16715 composeUnsignedInt("priority", element.getPriorityElement()); 16716 } 16717 if (element.hasDescriptionElement()) { 16718 composeString("description", element.getDescriptionElement()); 16719 } 16720 if (element.hasStartElement()) { 16721 composeInstant("start", element.getStartElement()); 16722 } 16723 if (element.hasEndElement()) { 16724 composeInstant("end", element.getEndElement()); 16725 } 16726 if (element.hasMinutesDurationElement()) { 16727 composePositiveInt("minutesDuration", element.getMinutesDurationElement()); 16728 } 16729 if (element.hasSlot()) { 16730 for (Reference e : element.getSlot()) 16731 composeReference("slot", e); 16732 } 16733 if (element.hasCreatedElement()) { 16734 composeDateTime("created", element.getCreatedElement()); 16735 } 16736 if (element.hasCommentElement()) { 16737 composeString("comment", element.getCommentElement()); 16738 } 16739 if (element.hasParticipant()) { 16740 for (Appointment.AppointmentParticipantComponent e : element.getParticipant()) 16741 composeAppointmentAppointmentParticipantComponent("participant", e); 16742 } 16743 composeElementClose(element); 16744 xml.exit(FHIR_NS, name); 16745 } 16746 } 16747 16748 protected void composeAppointmentAppointmentParticipantComponent(String name, Appointment.AppointmentParticipantComponent element) throws IOException { 16749 if (element != null) { 16750 composeElementAttributes(element); 16751 xml.enter(FHIR_NS, name); 16752 composeBackboneElements(element); 16753 if (element.hasType()) { 16754 for (CodeableConcept e : element.getType()) 16755 composeCodeableConcept("type", e); 16756 } 16757 if (element.hasActor()) { 16758 composeReference("actor", element.getActor()); 16759 } 16760 if (element.hasRequiredElement()) 16761 composeEnumeration("required", element.getRequiredElement(), new Appointment.ParticipantRequiredEnumFactory()); 16762 if (element.hasStatusElement()) 16763 composeEnumeration("status", element.getStatusElement(), new Appointment.ParticipationStatusEnumFactory()); 16764 composeElementClose(element); 16765 xml.exit(FHIR_NS, name); 16766 } 16767 } 16768 16769 protected void composeAppointmentResponse(String name, AppointmentResponse element) throws IOException { 16770 if (element != null) { 16771 composeDomainResourceAttributes(element); 16772 xml.enter(FHIR_NS, name); 16773 composeDomainResourceElements(element); 16774 if (element.hasIdentifier()) { 16775 for (Identifier e : element.getIdentifier()) 16776 composeIdentifier("identifier", e); 16777 } 16778 if (element.hasAppointment()) { 16779 composeReference("appointment", element.getAppointment()); 16780 } 16781 if (element.hasStartElement()) { 16782 composeInstant("start", element.getStartElement()); 16783 } 16784 if (element.hasEndElement()) { 16785 composeInstant("end", element.getEndElement()); 16786 } 16787 if (element.hasParticipantType()) { 16788 for (CodeableConcept e : element.getParticipantType()) 16789 composeCodeableConcept("participantType", e); 16790 } 16791 if (element.hasActor()) { 16792 composeReference("actor", element.getActor()); 16793 } 16794 if (element.hasParticipantStatusElement()) { 16795 composeCode("participantStatus", element.getParticipantStatusElement()); 16796 } 16797 if (element.hasCommentElement()) { 16798 composeString("comment", element.getCommentElement()); 16799 } 16800 composeElementClose(element); 16801 xml.exit(FHIR_NS, name); 16802 } 16803 } 16804 16805 protected void composeAuditEvent(String name, AuditEvent element) throws IOException { 16806 if (element != null) { 16807 composeDomainResourceAttributes(element); 16808 xml.enter(FHIR_NS, name); 16809 composeDomainResourceElements(element); 16810 if (element.hasType()) { 16811 composeCoding("type", element.getType()); 16812 } 16813 if (element.hasSubtype()) { 16814 for (Coding e : element.getSubtype()) 16815 composeCoding("subtype", e); 16816 } 16817 if (element.hasActionElement()) 16818 composeEnumeration("action", element.getActionElement(), new AuditEvent.AuditEventActionEnumFactory()); 16819 if (element.hasRecordedElement()) { 16820 composeInstant("recorded", element.getRecordedElement()); 16821 } 16822 if (element.hasOutcomeElement()) 16823 composeEnumeration("outcome", element.getOutcomeElement(), new AuditEvent.AuditEventOutcomeEnumFactory()); 16824 if (element.hasOutcomeDescElement()) { 16825 composeString("outcomeDesc", element.getOutcomeDescElement()); 16826 } 16827 if (element.hasPurposeOfEvent()) { 16828 for (Coding e : element.getPurposeOfEvent()) 16829 composeCoding("purposeOfEvent", e); 16830 } 16831 if (element.hasAgent()) { 16832 for (AuditEvent.AuditEventAgentComponent e : element.getAgent()) 16833 composeAuditEventAuditEventAgentComponent("agent", e); 16834 } 16835 if (element.hasSource()) { 16836 composeAuditEventAuditEventSourceComponent("source", element.getSource()); 16837 } 16838 if (element.hasEntity()) { 16839 for (AuditEvent.AuditEventEntityComponent e : element.getEntity()) 16840 composeAuditEventAuditEventEntityComponent("entity", e); 16841 } 16842 composeElementClose(element); 16843 xml.exit(FHIR_NS, name); 16844 } 16845 } 16846 16847 protected void composeAuditEventAuditEventAgentComponent(String name, AuditEvent.AuditEventAgentComponent element) throws IOException { 16848 if (element != null) { 16849 composeElementAttributes(element); 16850 xml.enter(FHIR_NS, name); 16851 composeBackboneElements(element); 16852 if (element.hasRole()) { 16853 for (CodeableConcept e : element.getRole()) 16854 composeCodeableConcept("role", e); 16855 } 16856 if (element.hasReference()) { 16857 composeReference("reference", element.getReference()); 16858 } 16859 if (element.hasUserId()) { 16860 composeIdentifier("userId", element.getUserId()); 16861 } 16862 if (element.hasAltIdElement()) { 16863 composeString("altId", element.getAltIdElement()); 16864 } 16865 if (element.hasNameElement()) { 16866 composeString("name", element.getNameElement()); 16867 } 16868 if (element.hasRequestorElement()) { 16869 composeBoolean("requestor", element.getRequestorElement()); 16870 } 16871 if (element.hasLocation()) { 16872 composeReference("location", element.getLocation()); 16873 } 16874 if (element.hasPolicy()) { 16875 for (UriType e : element.getPolicy()) 16876 composeUri("policy", e); 16877 } 16878 if (element.hasMedia()) { 16879 composeCoding("media", element.getMedia()); 16880 } 16881 if (element.hasNetwork()) { 16882 composeAuditEventAuditEventAgentNetworkComponent("network", element.getNetwork()); 16883 } 16884 if (element.hasPurposeOfUse()) { 16885 for (Coding e : element.getPurposeOfUse()) 16886 composeCoding("purposeOfUse", e); 16887 } 16888 composeElementClose(element); 16889 xml.exit(FHIR_NS, name); 16890 } 16891 } 16892 16893 protected void composeAuditEventAuditEventAgentNetworkComponent(String name, AuditEvent.AuditEventAgentNetworkComponent element) throws IOException { 16894 if (element != null) { 16895 composeElementAttributes(element); 16896 xml.enter(FHIR_NS, name); 16897 composeBackboneElements(element); 16898 if (element.hasAddressElement()) { 16899 composeString("address", element.getAddressElement()); 16900 } 16901 if (element.hasTypeElement()) 16902 composeEnumeration("type", element.getTypeElement(), new AuditEvent.AuditEventParticipantNetworkTypeEnumFactory()); 16903 composeElementClose(element); 16904 xml.exit(FHIR_NS, name); 16905 } 16906 } 16907 16908 protected void composeAuditEventAuditEventSourceComponent(String name, AuditEvent.AuditEventSourceComponent element) throws IOException { 16909 if (element != null) { 16910 composeElementAttributes(element); 16911 xml.enter(FHIR_NS, name); 16912 composeBackboneElements(element); 16913 if (element.hasSiteElement()) { 16914 composeString("site", element.getSiteElement()); 16915 } 16916 if (element.hasIdentifier()) { 16917 composeIdentifier("identifier", element.getIdentifier()); 16918 } 16919 if (element.hasType()) { 16920 for (Coding e : element.getType()) 16921 composeCoding("type", e); 16922 } 16923 composeElementClose(element); 16924 xml.exit(FHIR_NS, name); 16925 } 16926 } 16927 16928 protected void composeAuditEventAuditEventEntityComponent(String name, AuditEvent.AuditEventEntityComponent element) throws IOException { 16929 if (element != null) { 16930 composeElementAttributes(element); 16931 xml.enter(FHIR_NS, name); 16932 composeBackboneElements(element); 16933 if (element.hasIdentifier()) { 16934 composeIdentifier("identifier", element.getIdentifier()); 16935 } 16936 if (element.hasReference()) { 16937 composeReference("reference", element.getReference()); 16938 } 16939 if (element.hasType()) { 16940 composeCoding("type", element.getType()); 16941 } 16942 if (element.hasRole()) { 16943 composeCoding("role", element.getRole()); 16944 } 16945 if (element.hasLifecycle()) { 16946 composeCoding("lifecycle", element.getLifecycle()); 16947 } 16948 if (element.hasSecurityLabel()) { 16949 for (Coding e : element.getSecurityLabel()) 16950 composeCoding("securityLabel", e); 16951 } 16952 if (element.hasNameElement()) { 16953 composeString("name", element.getNameElement()); 16954 } 16955 if (element.hasDescriptionElement()) { 16956 composeString("description", element.getDescriptionElement()); 16957 } 16958 if (element.hasQueryElement()) { 16959 composeBase64Binary("query", element.getQueryElement()); 16960 } 16961 if (element.hasDetail()) { 16962 for (AuditEvent.AuditEventEntityDetailComponent e : element.getDetail()) 16963 composeAuditEventAuditEventEntityDetailComponent("detail", e); 16964 } 16965 composeElementClose(element); 16966 xml.exit(FHIR_NS, name); 16967 } 16968 } 16969 16970 protected void composeAuditEventAuditEventEntityDetailComponent(String name, AuditEvent.AuditEventEntityDetailComponent element) throws IOException { 16971 if (element != null) { 16972 composeElementAttributes(element); 16973 xml.enter(FHIR_NS, name); 16974 composeBackboneElements(element); 16975 if (element.hasTypeElement()) { 16976 composeString("type", element.getTypeElement()); 16977 } 16978 if (element.hasValueElement()) { 16979 composeBase64Binary("value", element.getValueElement()); 16980 } 16981 composeElementClose(element); 16982 xml.exit(FHIR_NS, name); 16983 } 16984 } 16985 16986 protected void composeBasic(String name, Basic element) throws IOException { 16987 if (element != null) { 16988 composeDomainResourceAttributes(element); 16989 xml.enter(FHIR_NS, name); 16990 composeDomainResourceElements(element); 16991 if (element.hasIdentifier()) { 16992 for (Identifier e : element.getIdentifier()) 16993 composeIdentifier("identifier", e); 16994 } 16995 if (element.hasCode()) { 16996 composeCodeableConcept("code", element.getCode()); 16997 } 16998 if (element.hasSubject()) { 16999 composeReference("subject", element.getSubject()); 17000 } 17001 if (element.hasCreatedElement()) { 17002 composeDate("created", element.getCreatedElement()); 17003 } 17004 if (element.hasAuthor()) { 17005 composeReference("author", element.getAuthor()); 17006 } 17007 composeElementClose(element); 17008 xml.exit(FHIR_NS, name); 17009 } 17010 } 17011 17012 protected void composeBinary(String name, Binary element) throws IOException { 17013 if (element != null) { 17014 composeResourceAttributes(element); 17015 xml.enter(FHIR_NS, name); 17016 composeResourceElements(element); 17017 if (element.hasContentTypeElement()) { 17018 composeCode("contentType", element.getContentTypeElement()); 17019 } 17020 if (element.hasContentElement()) { 17021 composeBase64Binary("content", element.getContentElement()); 17022 } 17023 composeElementClose(element); 17024 xml.exit(FHIR_NS, name); 17025 } 17026 } 17027 17028 protected void composeBodySite(String name, BodySite element) throws IOException { 17029 if (element != null) { 17030 composeDomainResourceAttributes(element); 17031 xml.enter(FHIR_NS, name); 17032 composeDomainResourceElements(element); 17033 if (element.hasPatient()) { 17034 composeReference("patient", element.getPatient()); 17035 } 17036 if (element.hasIdentifier()) { 17037 for (Identifier e : element.getIdentifier()) 17038 composeIdentifier("identifier", e); 17039 } 17040 if (element.hasCode()) { 17041 composeCodeableConcept("code", element.getCode()); 17042 } 17043 if (element.hasModifier()) { 17044 for (CodeableConcept e : element.getModifier()) 17045 composeCodeableConcept("modifier", e); 17046 } 17047 if (element.hasDescriptionElement()) { 17048 composeString("description", element.getDescriptionElement()); 17049 } 17050 if (element.hasImage()) { 17051 for (Attachment e : element.getImage()) 17052 composeAttachment("image", e); 17053 } 17054 composeElementClose(element); 17055 xml.exit(FHIR_NS, name); 17056 } 17057 } 17058 17059 protected void composeBundle(String name, Bundle element) throws IOException { 17060 if (element != null) { 17061 composeResourceAttributes(element); 17062 xml.enter(FHIR_NS, name); 17063 composeResourceElements(element); 17064 if (element.hasTypeElement()) 17065 composeEnumeration("type", element.getTypeElement(), new Bundle.BundleTypeEnumFactory()); 17066 if (element.hasTotalElement()) { 17067 composeUnsignedInt("total", element.getTotalElement()); 17068 } 17069 if (element.hasLink()) { 17070 for (Bundle.BundleLinkComponent e : element.getLink()) 17071 composeBundleBundleLinkComponent("link", e); 17072 } 17073 if (element.hasEntry()) { 17074 for (Bundle.BundleEntryComponent e : element.getEntry()) 17075 composeBundleBundleEntryComponent("entry", e); 17076 } 17077 if (element.hasSignature()) { 17078 composeSignature("signature", element.getSignature()); 17079 } 17080 composeElementClose(element); 17081 xml.exit(FHIR_NS, name); 17082 } 17083 } 17084 17085 protected void composeBundleBundleLinkComponent(String name, Bundle.BundleLinkComponent element) throws IOException { 17086 if (element != null) { 17087 composeElementAttributes(element); 17088 xml.enter(FHIR_NS, name); 17089 composeBackboneElements(element); 17090 if (element.hasRelationElement()) { 17091 composeString("relation", element.getRelationElement()); 17092 } 17093 if (element.hasUrlElement()) { 17094 composeUri("url", element.getUrlElement()); 17095 } 17096 composeElementClose(element); 17097 xml.exit(FHIR_NS, name); 17098 } 17099 } 17100 17101 protected void composeBundleBundleEntryComponent(String name, Bundle.BundleEntryComponent element) throws IOException { 17102 if (element != null) { 17103 composeElementAttributes(element); 17104 xml.enter(FHIR_NS, name); 17105 composeBackboneElements(element); 17106 if (element.hasLink()) { 17107 for (Bundle.BundleLinkComponent e : element.getLink()) 17108 composeBundleBundleLinkComponent("link", e); 17109 } 17110 if (element.hasFullUrlElement()) { 17111 composeUri("fullUrl", element.getFullUrlElement()); 17112 } 17113 if (element.hasResource()) { 17114 xml.enter(FHIR_NS, "resource"); 17115 composeResource(element.getResource()); 17116 xml.exit(FHIR_NS, "resource"); 17117 } 17118 if (element.hasSearch()) { 17119 composeBundleBundleEntrySearchComponent("search", element.getSearch()); 17120 } 17121 if (element.hasRequest()) { 17122 composeBundleBundleEntryRequestComponent("request", element.getRequest()); 17123 } 17124 if (element.hasResponse()) { 17125 composeBundleBundleEntryResponseComponent("response", element.getResponse()); 17126 } 17127 composeElementClose(element); 17128 xml.exit(FHIR_NS, name); 17129 } 17130 } 17131 17132 protected void composeBundleBundleEntrySearchComponent(String name, Bundle.BundleEntrySearchComponent element) throws IOException { 17133 if (element != null) { 17134 composeElementAttributes(element); 17135 xml.enter(FHIR_NS, name); 17136 composeBackboneElements(element); 17137 if (element.hasModeElement()) 17138 composeEnumeration("mode", element.getModeElement(), new Bundle.SearchEntryModeEnumFactory()); 17139 if (element.hasScoreElement()) { 17140 composeDecimal("score", element.getScoreElement()); 17141 } 17142 composeElementClose(element); 17143 xml.exit(FHIR_NS, name); 17144 } 17145 } 17146 17147 protected void composeBundleBundleEntryRequestComponent(String name, Bundle.BundleEntryRequestComponent element) throws IOException { 17148 if (element != null) { 17149 composeElementAttributes(element); 17150 xml.enter(FHIR_NS, name); 17151 composeBackboneElements(element); 17152 if (element.hasMethodElement()) 17153 composeEnumeration("method", element.getMethodElement(), new Bundle.HTTPVerbEnumFactory()); 17154 if (element.hasUrlElement()) { 17155 composeUri("url", element.getUrlElement()); 17156 } 17157 if (element.hasIfNoneMatchElement()) { 17158 composeString("ifNoneMatch", element.getIfNoneMatchElement()); 17159 } 17160 if (element.hasIfModifiedSinceElement()) { 17161 composeInstant("ifModifiedSince", element.getIfModifiedSinceElement()); 17162 } 17163 if (element.hasIfMatchElement()) { 17164 composeString("ifMatch", element.getIfMatchElement()); 17165 } 17166 if (element.hasIfNoneExistElement()) { 17167 composeString("ifNoneExist", element.getIfNoneExistElement()); 17168 } 17169 composeElementClose(element); 17170 xml.exit(FHIR_NS, name); 17171 } 17172 } 17173 17174 protected void composeBundleBundleEntryResponseComponent(String name, Bundle.BundleEntryResponseComponent element) throws IOException { 17175 if (element != null) { 17176 composeElementAttributes(element); 17177 xml.enter(FHIR_NS, name); 17178 composeBackboneElements(element); 17179 if (element.hasStatusElement()) { 17180 composeString("status", element.getStatusElement()); 17181 } 17182 if (element.hasLocationElement()) { 17183 composeUri("location", element.getLocationElement()); 17184 } 17185 if (element.hasEtagElement()) { 17186 composeString("etag", element.getEtagElement()); 17187 } 17188 if (element.hasLastModifiedElement()) { 17189 composeInstant("lastModified", element.getLastModifiedElement()); 17190 } 17191 composeElementClose(element); 17192 xml.exit(FHIR_NS, name); 17193 } 17194 } 17195 17196 protected void composeCarePlan(String name, CarePlan element) throws IOException { 17197 if (element != null) { 17198 composeDomainResourceAttributes(element); 17199 xml.enter(FHIR_NS, name); 17200 composeDomainResourceElements(element); 17201 if (element.hasIdentifier()) { 17202 for (Identifier e : element.getIdentifier()) 17203 composeIdentifier("identifier", e); 17204 } 17205 if (element.hasSubject()) { 17206 composeReference("subject", element.getSubject()); 17207 } 17208 if (element.hasStatusElement()) 17209 composeEnumeration("status", element.getStatusElement(), new CarePlan.CarePlanStatusEnumFactory()); 17210 if (element.hasContext()) { 17211 composeReference("context", element.getContext()); 17212 } 17213 if (element.hasPeriod()) { 17214 composePeriod("period", element.getPeriod()); 17215 } 17216 if (element.hasAuthor()) { 17217 for (Reference e : element.getAuthor()) 17218 composeReference("author", e); 17219 } 17220 if (element.hasModifiedElement()) { 17221 composeDateTime("modified", element.getModifiedElement()); 17222 } 17223 if (element.hasCategory()) { 17224 for (CodeableConcept e : element.getCategory()) 17225 composeCodeableConcept("category", e); 17226 } 17227 if (element.hasDescriptionElement()) { 17228 composeString("description", element.getDescriptionElement()); 17229 } 17230 if (element.hasAddresses()) { 17231 for (Reference e : element.getAddresses()) 17232 composeReference("addresses", e); 17233 } 17234 if (element.hasSupport()) { 17235 for (Reference e : element.getSupport()) 17236 composeReference("support", e); 17237 } 17238 if (element.hasRelatedPlan()) { 17239 for (CarePlan.CarePlanRelatedPlanComponent e : element.getRelatedPlan()) 17240 composeCarePlanCarePlanRelatedPlanComponent("relatedPlan", e); 17241 } 17242 if (element.hasParticipant()) { 17243 for (CarePlan.CarePlanParticipantComponent e : element.getParticipant()) 17244 composeCarePlanCarePlanParticipantComponent("participant", e); 17245 } 17246 if (element.hasGoal()) { 17247 for (Reference e : element.getGoal()) 17248 composeReference("goal", e); 17249 } 17250 if (element.hasActivity()) { 17251 for (CarePlan.CarePlanActivityComponent e : element.getActivity()) 17252 composeCarePlanCarePlanActivityComponent("activity", e); 17253 } 17254 if (element.hasNote()) { 17255 composeAnnotation("note", element.getNote()); 17256 } 17257 composeElementClose(element); 17258 xml.exit(FHIR_NS, name); 17259 } 17260 } 17261 17262 protected void composeCarePlanCarePlanRelatedPlanComponent(String name, CarePlan.CarePlanRelatedPlanComponent element) throws IOException { 17263 if (element != null) { 17264 composeElementAttributes(element); 17265 xml.enter(FHIR_NS, name); 17266 composeBackboneElements(element); 17267 if (element.hasCodeElement()) 17268 composeEnumeration("code", element.getCodeElement(), new CarePlan.CarePlanRelationshipEnumFactory()); 17269 if (element.hasPlan()) { 17270 composeReference("plan", element.getPlan()); 17271 } 17272 composeElementClose(element); 17273 xml.exit(FHIR_NS, name); 17274 } 17275 } 17276 17277 protected void composeCarePlanCarePlanParticipantComponent(String name, CarePlan.CarePlanParticipantComponent element) throws IOException { 17278 if (element != null) { 17279 composeElementAttributes(element); 17280 xml.enter(FHIR_NS, name); 17281 composeBackboneElements(element); 17282 if (element.hasRole()) { 17283 composeCodeableConcept("role", element.getRole()); 17284 } 17285 if (element.hasMember()) { 17286 composeReference("member", element.getMember()); 17287 } 17288 composeElementClose(element); 17289 xml.exit(FHIR_NS, name); 17290 } 17291 } 17292 17293 protected void composeCarePlanCarePlanActivityComponent(String name, CarePlan.CarePlanActivityComponent element) throws IOException { 17294 if (element != null) { 17295 composeElementAttributes(element); 17296 xml.enter(FHIR_NS, name); 17297 composeBackboneElements(element); 17298 if (element.hasActionResulting()) { 17299 for (Reference e : element.getActionResulting()) 17300 composeReference("actionResulting", e); 17301 } 17302 if (element.hasProgress()) { 17303 for (Annotation e : element.getProgress()) 17304 composeAnnotation("progress", e); 17305 } 17306 if (element.hasReference()) { 17307 composeReference("reference", element.getReference()); 17308 } 17309 if (element.hasDetail()) { 17310 composeCarePlanCarePlanActivityDetailComponent("detail", element.getDetail()); 17311 } 17312 composeElementClose(element); 17313 xml.exit(FHIR_NS, name); 17314 } 17315 } 17316 17317 protected void composeCarePlanCarePlanActivityDetailComponent(String name, CarePlan.CarePlanActivityDetailComponent element) throws IOException { 17318 if (element != null) { 17319 composeElementAttributes(element); 17320 xml.enter(FHIR_NS, name); 17321 composeBackboneElements(element); 17322 if (element.hasCategory()) { 17323 composeCodeableConcept("category", element.getCategory()); 17324 } 17325 if (element.hasCode()) { 17326 composeCodeableConcept("code", element.getCode()); 17327 } 17328 if (element.hasReasonCode()) { 17329 for (CodeableConcept e : element.getReasonCode()) 17330 composeCodeableConcept("reasonCode", e); 17331 } 17332 if (element.hasReasonReference()) { 17333 for (Reference e : element.getReasonReference()) 17334 composeReference("reasonReference", e); 17335 } 17336 if (element.hasGoal()) { 17337 for (Reference e : element.getGoal()) 17338 composeReference("goal", e); 17339 } 17340 if (element.hasStatusElement()) 17341 composeEnumeration("status", element.getStatusElement(), new CarePlan.CarePlanActivityStatusEnumFactory()); 17342 if (element.hasStatusReason()) { 17343 composeCodeableConcept("statusReason", element.getStatusReason()); 17344 } 17345 if (element.hasProhibitedElement()) { 17346 composeBoolean("prohibited", element.getProhibitedElement()); 17347 } 17348 if (element.hasScheduled()) { 17349 composeType("scheduled", element.getScheduled()); 17350 } if (element.hasLocation()) { 17351 composeReference("location", element.getLocation()); 17352 } 17353 if (element.hasPerformer()) { 17354 for (Reference e : element.getPerformer()) 17355 composeReference("performer", e); 17356 } 17357 if (element.hasProduct()) { 17358 composeType("product", element.getProduct()); 17359 } if (element.hasDailyAmount()) { 17360 composeSimpleQuantity("dailyAmount", element.getDailyAmount()); 17361 } 17362 if (element.hasQuantity()) { 17363 composeSimpleQuantity("quantity", element.getQuantity()); 17364 } 17365 if (element.hasDescriptionElement()) { 17366 composeString("description", element.getDescriptionElement()); 17367 } 17368 composeElementClose(element); 17369 xml.exit(FHIR_NS, name); 17370 } 17371 } 17372 17373 protected void composeCareTeam(String name, CareTeam element) throws IOException { 17374 if (element != null) { 17375 composeDomainResourceAttributes(element); 17376 xml.enter(FHIR_NS, name); 17377 composeDomainResourceElements(element); 17378 if (element.hasIdentifier()) { 17379 for (Identifier e : element.getIdentifier()) 17380 composeIdentifier("identifier", e); 17381 } 17382 if (element.hasStatus()) { 17383 composeCodeableConcept("status", element.getStatus()); 17384 } 17385 if (element.hasType()) { 17386 for (CodeableConcept e : element.getType()) 17387 composeCodeableConcept("type", e); 17388 } 17389 if (element.hasNameElement()) { 17390 composeString("name", element.getNameElement()); 17391 } 17392 if (element.hasSubject()) { 17393 composeReference("subject", element.getSubject()); 17394 } 17395 if (element.hasPeriod()) { 17396 composePeriod("period", element.getPeriod()); 17397 } 17398 if (element.hasParticipant()) { 17399 for (CareTeam.CareTeamParticipantComponent e : element.getParticipant()) 17400 composeCareTeamCareTeamParticipantComponent("participant", e); 17401 } 17402 if (element.hasManagingOrganization()) { 17403 composeReference("managingOrganization", element.getManagingOrganization()); 17404 } 17405 composeElementClose(element); 17406 xml.exit(FHIR_NS, name); 17407 } 17408 } 17409 17410 protected void composeCareTeamCareTeamParticipantComponent(String name, CareTeam.CareTeamParticipantComponent element) throws IOException { 17411 if (element != null) { 17412 composeElementAttributes(element); 17413 xml.enter(FHIR_NS, name); 17414 composeBackboneElements(element); 17415 if (element.hasRole()) { 17416 composeCodeableConcept("role", element.getRole()); 17417 } 17418 if (element.hasMember()) { 17419 composeReference("member", element.getMember()); 17420 } 17421 if (element.hasPeriod()) { 17422 composePeriod("period", element.getPeriod()); 17423 } 17424 composeElementClose(element); 17425 xml.exit(FHIR_NS, name); 17426 } 17427 } 17428 17429 protected void composeClaim(String name, Claim element) throws IOException { 17430 if (element != null) { 17431 composeDomainResourceAttributes(element); 17432 xml.enter(FHIR_NS, name); 17433 composeDomainResourceElements(element); 17434 if (element.hasTypeElement()) 17435 composeEnumeration("type", element.getTypeElement(), new Claim.ClaimTypeEnumFactory()); 17436 if (element.hasSubType()) { 17437 for (Coding e : element.getSubType()) 17438 composeCoding("subType", e); 17439 } 17440 if (element.hasIdentifier()) { 17441 for (Identifier e : element.getIdentifier()) 17442 composeIdentifier("identifier", e); 17443 } 17444 if (element.hasRuleset()) { 17445 composeCoding("ruleset", element.getRuleset()); 17446 } 17447 if (element.hasOriginalRuleset()) { 17448 composeCoding("originalRuleset", element.getOriginalRuleset()); 17449 } 17450 if (element.hasCreatedElement()) { 17451 composeDateTime("created", element.getCreatedElement()); 17452 } 17453 if (element.hasBillablePeriod()) { 17454 composePeriod("billablePeriod", element.getBillablePeriod()); 17455 } 17456 if (element.hasTarget()) { 17457 composeType("target", element.getTarget()); 17458 } if (element.hasProvider()) { 17459 composeType("provider", element.getProvider()); 17460 } if (element.hasOrganization()) { 17461 composeType("organization", element.getOrganization()); 17462 } if (element.hasUseElement()) 17463 composeEnumeration("use", element.getUseElement(), new Claim.UseEnumFactory()); 17464 if (element.hasPriority()) { 17465 composeCoding("priority", element.getPriority()); 17466 } 17467 if (element.hasFundsReserve()) { 17468 composeCoding("fundsReserve", element.getFundsReserve()); 17469 } 17470 if (element.hasEnterer()) { 17471 composeType("enterer", element.getEnterer()); 17472 } if (element.hasFacility()) { 17473 composeType("facility", element.getFacility()); 17474 } if (element.hasRelated()) { 17475 for (Claim.RelatedClaimsComponent e : element.getRelated()) 17476 composeClaimRelatedClaimsComponent("related", e); 17477 } 17478 if (element.hasPrescription()) { 17479 composeType("prescription", element.getPrescription()); 17480 } if (element.hasOriginalPrescription()) { 17481 composeType("originalPrescription", element.getOriginalPrescription()); 17482 } if (element.hasPayee()) { 17483 composeClaimPayeeComponent("payee", element.getPayee()); 17484 } 17485 if (element.hasReferral()) { 17486 composeType("referral", element.getReferral()); 17487 } if (element.hasOccurrenceCode()) { 17488 for (Coding e : element.getOccurrenceCode()) 17489 composeCoding("occurrenceCode", e); 17490 } 17491 if (element.hasOccurenceSpanCode()) { 17492 for (Coding e : element.getOccurenceSpanCode()) 17493 composeCoding("occurenceSpanCode", e); 17494 } 17495 if (element.hasValueCode()) { 17496 for (Coding e : element.getValueCode()) 17497 composeCoding("valueCode", e); 17498 } 17499 if (element.hasDiagnosis()) { 17500 for (Claim.DiagnosisComponent e : element.getDiagnosis()) 17501 composeClaimDiagnosisComponent("diagnosis", e); 17502 } 17503 if (element.hasProcedure()) { 17504 for (Claim.ProcedureComponent e : element.getProcedure()) 17505 composeClaimProcedureComponent("procedure", e); 17506 } 17507 if (element.hasSpecialCondition()) { 17508 for (Coding e : element.getSpecialCondition()) 17509 composeCoding("specialCondition", e); 17510 } 17511 if (element.hasPatient()) { 17512 composeType("patient", element.getPatient()); 17513 } if (element.hasCoverage()) { 17514 for (Claim.CoverageComponent e : element.getCoverage()) 17515 composeClaimCoverageComponent("coverage", e); 17516 } 17517 if (element.hasAccidentDateElement()) { 17518 composeDate("accidentDate", element.getAccidentDateElement()); 17519 } 17520 if (element.hasAccidentType()) { 17521 composeCoding("accidentType", element.getAccidentType()); 17522 } 17523 if (element.hasAccidentLocation()) { 17524 composeType("accidentLocation", element.getAccidentLocation()); 17525 } if (element.hasInterventionException()) { 17526 for (Coding e : element.getInterventionException()) 17527 composeCoding("interventionException", e); 17528 } 17529 if (element.hasOnset()) { 17530 for (Claim.OnsetComponent e : element.getOnset()) 17531 composeClaimOnsetComponent("onset", e); 17532 } 17533 if (element.hasEmploymentImpacted()) { 17534 composePeriod("employmentImpacted", element.getEmploymentImpacted()); 17535 } 17536 if (element.hasHospitalization()) { 17537 composePeriod("hospitalization", element.getHospitalization()); 17538 } 17539 if (element.hasItem()) { 17540 for (Claim.ItemsComponent e : element.getItem()) 17541 composeClaimItemsComponent("item", e); 17542 } 17543 if (element.hasTotal()) { 17544 composeMoney("total", element.getTotal()); 17545 } 17546 if (element.hasAdditionalMaterial()) { 17547 for (Coding e : element.getAdditionalMaterial()) 17548 composeCoding("additionalMaterial", e); 17549 } 17550 if (element.hasMissingTeeth()) { 17551 for (Claim.MissingTeethComponent e : element.getMissingTeeth()) 17552 composeClaimMissingTeethComponent("missingTeeth", e); 17553 } 17554 composeElementClose(element); 17555 xml.exit(FHIR_NS, name); 17556 } 17557 } 17558 17559 protected void composeClaimRelatedClaimsComponent(String name, Claim.RelatedClaimsComponent element) throws IOException { 17560 if (element != null) { 17561 composeElementAttributes(element); 17562 xml.enter(FHIR_NS, name); 17563 composeBackboneElements(element); 17564 if (element.hasClaim()) { 17565 composeType("claim", element.getClaim()); 17566 } if (element.hasRelationship()) { 17567 composeCoding("relationship", element.getRelationship()); 17568 } 17569 if (element.hasReference()) { 17570 composeIdentifier("reference", element.getReference()); 17571 } 17572 composeElementClose(element); 17573 xml.exit(FHIR_NS, name); 17574 } 17575 } 17576 17577 protected void composeClaimPayeeComponent(String name, Claim.PayeeComponent element) throws IOException { 17578 if (element != null) { 17579 composeElementAttributes(element); 17580 xml.enter(FHIR_NS, name); 17581 composeBackboneElements(element); 17582 if (element.hasType()) { 17583 composeCoding("type", element.getType()); 17584 } 17585 if (element.hasParty()) { 17586 composeType("party", element.getParty()); 17587 } composeElementClose(element); 17588 xml.exit(FHIR_NS, name); 17589 } 17590 } 17591 17592 protected void composeClaimDiagnosisComponent(String name, Claim.DiagnosisComponent element) throws IOException { 17593 if (element != null) { 17594 composeElementAttributes(element); 17595 xml.enter(FHIR_NS, name); 17596 composeBackboneElements(element); 17597 if (element.hasSequenceElement()) { 17598 composePositiveInt("sequence", element.getSequenceElement()); 17599 } 17600 if (element.hasDiagnosis()) { 17601 composeCoding("diagnosis", element.getDiagnosis()); 17602 } 17603 composeElementClose(element); 17604 xml.exit(FHIR_NS, name); 17605 } 17606 } 17607 17608 protected void composeClaimProcedureComponent(String name, Claim.ProcedureComponent element) throws IOException { 17609 if (element != null) { 17610 composeElementAttributes(element); 17611 xml.enter(FHIR_NS, name); 17612 composeBackboneElements(element); 17613 if (element.hasSequenceElement()) { 17614 composePositiveInt("sequence", element.getSequenceElement()); 17615 } 17616 if (element.hasDateElement()) { 17617 composeDateTime("date", element.getDateElement()); 17618 } 17619 if (element.hasProcedure()) { 17620 composeType("procedure", element.getProcedure()); 17621 } composeElementClose(element); 17622 xml.exit(FHIR_NS, name); 17623 } 17624 } 17625 17626 protected void composeClaimCoverageComponent(String name, Claim.CoverageComponent element) throws IOException { 17627 if (element != null) { 17628 composeElementAttributes(element); 17629 xml.enter(FHIR_NS, name); 17630 composeBackboneElements(element); 17631 if (element.hasSequenceElement()) { 17632 composePositiveInt("sequence", element.getSequenceElement()); 17633 } 17634 if (element.hasFocalElement()) { 17635 composeBoolean("focal", element.getFocalElement()); 17636 } 17637 if (element.hasCoverage()) { 17638 composeType("coverage", element.getCoverage()); 17639 } if (element.hasBusinessArrangementElement()) { 17640 composeString("businessArrangement", element.getBusinessArrangementElement()); 17641 } 17642 if (element.hasPreAuthRef()) { 17643 for (StringType e : element.getPreAuthRef()) 17644 composeString("preAuthRef", e); 17645 } 17646 if (element.hasClaimResponse()) { 17647 composeReference("claimResponse", element.getClaimResponse()); 17648 } 17649 if (element.hasOriginalRuleset()) { 17650 composeCoding("originalRuleset", element.getOriginalRuleset()); 17651 } 17652 composeElementClose(element); 17653 xml.exit(FHIR_NS, name); 17654 } 17655 } 17656 17657 protected void composeClaimOnsetComponent(String name, Claim.OnsetComponent element) throws IOException { 17658 if (element != null) { 17659 composeElementAttributes(element); 17660 xml.enter(FHIR_NS, name); 17661 composeBackboneElements(element); 17662 if (element.hasTime()) { 17663 composeType("time", element.getTime()); 17664 } if (element.hasType()) { 17665 composeCoding("type", element.getType()); 17666 } 17667 composeElementClose(element); 17668 xml.exit(FHIR_NS, name); 17669 } 17670 } 17671 17672 protected void composeClaimItemsComponent(String name, Claim.ItemsComponent element) throws IOException { 17673 if (element != null) { 17674 composeElementAttributes(element); 17675 xml.enter(FHIR_NS, name); 17676 composeBackboneElements(element); 17677 if (element.hasSequenceElement()) { 17678 composePositiveInt("sequence", element.getSequenceElement()); 17679 } 17680 if (element.hasType()) { 17681 composeCoding("type", element.getType()); 17682 } 17683 if (element.hasProvider()) { 17684 composeType("provider", element.getProvider()); 17685 } if (element.hasSupervisor()) { 17686 composeType("supervisor", element.getSupervisor()); 17687 } if (element.hasProviderQualification()) { 17688 composeCoding("providerQualification", element.getProviderQualification()); 17689 } 17690 if (element.hasDiagnosisLinkId()) { 17691 for (PositiveIntType e : element.getDiagnosisLinkId()) 17692 composePositiveInt("diagnosisLinkId", e); 17693 } 17694 if (element.hasService()) { 17695 composeCoding("service", element.getService()); 17696 } 17697 if (element.hasServiceModifier()) { 17698 for (Coding e : element.getServiceModifier()) 17699 composeCoding("serviceModifier", e); 17700 } 17701 if (element.hasModifier()) { 17702 for (Coding e : element.getModifier()) 17703 composeCoding("modifier", e); 17704 } 17705 if (element.hasProgramCode()) { 17706 for (Coding e : element.getProgramCode()) 17707 composeCoding("programCode", e); 17708 } 17709 if (element.hasServiced()) { 17710 composeType("serviced", element.getServiced()); 17711 } if (element.hasPlace()) { 17712 composeCoding("place", element.getPlace()); 17713 } 17714 if (element.hasQuantity()) { 17715 composeSimpleQuantity("quantity", element.getQuantity()); 17716 } 17717 if (element.hasUnitPrice()) { 17718 composeMoney("unitPrice", element.getUnitPrice()); 17719 } 17720 if (element.hasFactorElement()) { 17721 composeDecimal("factor", element.getFactorElement()); 17722 } 17723 if (element.hasPointsElement()) { 17724 composeDecimal("points", element.getPointsElement()); 17725 } 17726 if (element.hasNet()) { 17727 composeMoney("net", element.getNet()); 17728 } 17729 if (element.hasUdi()) { 17730 for (Reference e : element.getUdi()) 17731 composeReference("udi", e); 17732 } 17733 if (element.hasBodySite()) { 17734 composeCoding("bodySite", element.getBodySite()); 17735 } 17736 if (element.hasSubSite()) { 17737 for (Coding e : element.getSubSite()) 17738 composeCoding("subSite", e); 17739 } 17740 if (element.hasDetail()) { 17741 for (Claim.DetailComponent e : element.getDetail()) 17742 composeClaimDetailComponent("detail", e); 17743 } 17744 if (element.hasProsthesis()) { 17745 composeClaimProsthesisComponent("prosthesis", element.getProsthesis()); 17746 } 17747 composeElementClose(element); 17748 xml.exit(FHIR_NS, name); 17749 } 17750 } 17751 17752 protected void composeClaimDetailComponent(String name, Claim.DetailComponent element) throws IOException { 17753 if (element != null) { 17754 composeElementAttributes(element); 17755 xml.enter(FHIR_NS, name); 17756 composeBackboneElements(element); 17757 if (element.hasSequenceElement()) { 17758 composePositiveInt("sequence", element.getSequenceElement()); 17759 } 17760 if (element.hasType()) { 17761 composeCoding("type", element.getType()); 17762 } 17763 if (element.hasService()) { 17764 composeCoding("service", element.getService()); 17765 } 17766 if (element.hasProgramCode()) { 17767 for (Coding e : element.getProgramCode()) 17768 composeCoding("programCode", e); 17769 } 17770 if (element.hasQuantity()) { 17771 composeSimpleQuantity("quantity", element.getQuantity()); 17772 } 17773 if (element.hasUnitPrice()) { 17774 composeMoney("unitPrice", element.getUnitPrice()); 17775 } 17776 if (element.hasFactorElement()) { 17777 composeDecimal("factor", element.getFactorElement()); 17778 } 17779 if (element.hasPointsElement()) { 17780 composeDecimal("points", element.getPointsElement()); 17781 } 17782 if (element.hasNet()) { 17783 composeMoney("net", element.getNet()); 17784 } 17785 if (element.hasUdi()) { 17786 for (Reference e : element.getUdi()) 17787 composeReference("udi", e); 17788 } 17789 if (element.hasSubDetail()) { 17790 for (Claim.SubDetailComponent e : element.getSubDetail()) 17791 composeClaimSubDetailComponent("subDetail", e); 17792 } 17793 composeElementClose(element); 17794 xml.exit(FHIR_NS, name); 17795 } 17796 } 17797 17798 protected void composeClaimSubDetailComponent(String name, Claim.SubDetailComponent element) throws IOException { 17799 if (element != null) { 17800 composeElementAttributes(element); 17801 xml.enter(FHIR_NS, name); 17802 composeBackboneElements(element); 17803 if (element.hasSequenceElement()) { 17804 composePositiveInt("sequence", element.getSequenceElement()); 17805 } 17806 if (element.hasType()) { 17807 composeCoding("type", element.getType()); 17808 } 17809 if (element.hasService()) { 17810 composeCoding("service", element.getService()); 17811 } 17812 if (element.hasProgramCode()) { 17813 for (Coding e : element.getProgramCode()) 17814 composeCoding("programCode", e); 17815 } 17816 if (element.hasQuantity()) { 17817 composeSimpleQuantity("quantity", element.getQuantity()); 17818 } 17819 if (element.hasUnitPrice()) { 17820 composeMoney("unitPrice", element.getUnitPrice()); 17821 } 17822 if (element.hasFactorElement()) { 17823 composeDecimal("factor", element.getFactorElement()); 17824 } 17825 if (element.hasPointsElement()) { 17826 composeDecimal("points", element.getPointsElement()); 17827 } 17828 if (element.hasNet()) { 17829 composeMoney("net", element.getNet()); 17830 } 17831 if (element.hasUdi()) { 17832 for (Reference e : element.getUdi()) 17833 composeReference("udi", e); 17834 } 17835 composeElementClose(element); 17836 xml.exit(FHIR_NS, name); 17837 } 17838 } 17839 17840 protected void composeClaimProsthesisComponent(String name, Claim.ProsthesisComponent element) throws IOException { 17841 if (element != null) { 17842 composeElementAttributes(element); 17843 xml.enter(FHIR_NS, name); 17844 composeBackboneElements(element); 17845 if (element.hasInitialElement()) { 17846 composeBoolean("initial", element.getInitialElement()); 17847 } 17848 if (element.hasPriorDateElement()) { 17849 composeDate("priorDate", element.getPriorDateElement()); 17850 } 17851 if (element.hasPriorMaterial()) { 17852 composeCoding("priorMaterial", element.getPriorMaterial()); 17853 } 17854 composeElementClose(element); 17855 xml.exit(FHIR_NS, name); 17856 } 17857 } 17858 17859 protected void composeClaimMissingTeethComponent(String name, Claim.MissingTeethComponent element) throws IOException { 17860 if (element != null) { 17861 composeElementAttributes(element); 17862 xml.enter(FHIR_NS, name); 17863 composeBackboneElements(element); 17864 if (element.hasTooth()) { 17865 composeCoding("tooth", element.getTooth()); 17866 } 17867 if (element.hasReason()) { 17868 composeCoding("reason", element.getReason()); 17869 } 17870 if (element.hasExtractionDateElement()) { 17871 composeDate("extractionDate", element.getExtractionDateElement()); 17872 } 17873 composeElementClose(element); 17874 xml.exit(FHIR_NS, name); 17875 } 17876 } 17877 17878 protected void composeClaimResponse(String name, ClaimResponse element) throws IOException { 17879 if (element != null) { 17880 composeDomainResourceAttributes(element); 17881 xml.enter(FHIR_NS, name); 17882 composeDomainResourceElements(element); 17883 if (element.hasIdentifier()) { 17884 for (Identifier e : element.getIdentifier()) 17885 composeIdentifier("identifier", e); 17886 } 17887 if (element.hasRequest()) { 17888 composeType("request", element.getRequest()); 17889 } if (element.hasRuleset()) { 17890 composeCoding("ruleset", element.getRuleset()); 17891 } 17892 if (element.hasOriginalRuleset()) { 17893 composeCoding("originalRuleset", element.getOriginalRuleset()); 17894 } 17895 if (element.hasCreatedElement()) { 17896 composeDateTime("created", element.getCreatedElement()); 17897 } 17898 if (element.hasOrganization()) { 17899 composeType("organization", element.getOrganization()); 17900 } if (element.hasRequestProvider()) { 17901 composeType("requestProvider", element.getRequestProvider()); 17902 } if (element.hasRequestOrganization()) { 17903 composeType("requestOrganization", element.getRequestOrganization()); 17904 } if (element.hasOutcomeElement()) 17905 composeEnumeration("outcome", element.getOutcomeElement(), new Enumerations.RemittanceOutcomeEnumFactory()); 17906 if (element.hasDispositionElement()) { 17907 composeString("disposition", element.getDispositionElement()); 17908 } 17909 if (element.hasPayeeType()) { 17910 composeCoding("payeeType", element.getPayeeType()); 17911 } 17912 if (element.hasItem()) { 17913 for (ClaimResponse.ItemsComponent e : element.getItem()) 17914 composeClaimResponseItemsComponent("item", e); 17915 } 17916 if (element.hasAddItem()) { 17917 for (ClaimResponse.AddedItemComponent e : element.getAddItem()) 17918 composeClaimResponseAddedItemComponent("addItem", e); 17919 } 17920 if (element.hasError()) { 17921 for (ClaimResponse.ErrorsComponent e : element.getError()) 17922 composeClaimResponseErrorsComponent("error", e); 17923 } 17924 if (element.hasTotalCost()) { 17925 composeMoney("totalCost", element.getTotalCost()); 17926 } 17927 if (element.hasUnallocDeductable()) { 17928 composeMoney("unallocDeductable", element.getUnallocDeductable()); 17929 } 17930 if (element.hasTotalBenefit()) { 17931 composeMoney("totalBenefit", element.getTotalBenefit()); 17932 } 17933 if (element.hasPaymentAdjustment()) { 17934 composeMoney("paymentAdjustment", element.getPaymentAdjustment()); 17935 } 17936 if (element.hasPaymentAdjustmentReason()) { 17937 composeCoding("paymentAdjustmentReason", element.getPaymentAdjustmentReason()); 17938 } 17939 if (element.hasPaymentDateElement()) { 17940 composeDate("paymentDate", element.getPaymentDateElement()); 17941 } 17942 if (element.hasPaymentAmount()) { 17943 composeMoney("paymentAmount", element.getPaymentAmount()); 17944 } 17945 if (element.hasPaymentRef()) { 17946 composeIdentifier("paymentRef", element.getPaymentRef()); 17947 } 17948 if (element.hasReserved()) { 17949 composeCoding("reserved", element.getReserved()); 17950 } 17951 if (element.hasForm()) { 17952 composeCoding("form", element.getForm()); 17953 } 17954 if (element.hasNote()) { 17955 for (ClaimResponse.NotesComponent e : element.getNote()) 17956 composeClaimResponseNotesComponent("note", e); 17957 } 17958 if (element.hasCoverage()) { 17959 for (ClaimResponse.CoverageComponent e : element.getCoverage()) 17960 composeClaimResponseCoverageComponent("coverage", e); 17961 } 17962 composeElementClose(element); 17963 xml.exit(FHIR_NS, name); 17964 } 17965 } 17966 17967 protected void composeClaimResponseItemsComponent(String name, ClaimResponse.ItemsComponent element) throws IOException { 17968 if (element != null) { 17969 composeElementAttributes(element); 17970 xml.enter(FHIR_NS, name); 17971 composeBackboneElements(element); 17972 if (element.hasSequenceLinkIdElement()) { 17973 composePositiveInt("sequenceLinkId", element.getSequenceLinkIdElement()); 17974 } 17975 if (element.hasNoteNumber()) { 17976 for (PositiveIntType e : element.getNoteNumber()) 17977 composePositiveInt("noteNumber", e); 17978 } 17979 if (element.hasAdjudication()) { 17980 for (ClaimResponse.ItemAdjudicationComponent e : element.getAdjudication()) 17981 composeClaimResponseItemAdjudicationComponent("adjudication", e); 17982 } 17983 if (element.hasDetail()) { 17984 for (ClaimResponse.ItemDetailComponent e : element.getDetail()) 17985 composeClaimResponseItemDetailComponent("detail", e); 17986 } 17987 composeElementClose(element); 17988 xml.exit(FHIR_NS, name); 17989 } 17990 } 17991 17992 protected void composeClaimResponseItemAdjudicationComponent(String name, ClaimResponse.ItemAdjudicationComponent element) throws IOException { 17993 if (element != null) { 17994 composeElementAttributes(element); 17995 xml.enter(FHIR_NS, name); 17996 composeBackboneElements(element); 17997 if (element.hasCategory()) { 17998 composeCoding("category", element.getCategory()); 17999 } 18000 if (element.hasReason()) { 18001 composeCoding("reason", element.getReason()); 18002 } 18003 if (element.hasAmount()) { 18004 composeMoney("amount", element.getAmount()); 18005 } 18006 if (element.hasValueElement()) { 18007 composeDecimal("value", element.getValueElement()); 18008 } 18009 composeElementClose(element); 18010 xml.exit(FHIR_NS, name); 18011 } 18012 } 18013 18014 protected void composeClaimResponseItemDetailComponent(String name, ClaimResponse.ItemDetailComponent element) throws IOException { 18015 if (element != null) { 18016 composeElementAttributes(element); 18017 xml.enter(FHIR_NS, name); 18018 composeBackboneElements(element); 18019 if (element.hasSequenceLinkIdElement()) { 18020 composePositiveInt("sequenceLinkId", element.getSequenceLinkIdElement()); 18021 } 18022 if (element.hasAdjudication()) { 18023 for (ClaimResponse.DetailAdjudicationComponent e : element.getAdjudication()) 18024 composeClaimResponseDetailAdjudicationComponent("adjudication", e); 18025 } 18026 if (element.hasSubDetail()) { 18027 for (ClaimResponse.SubDetailComponent e : element.getSubDetail()) 18028 composeClaimResponseSubDetailComponent("subDetail", e); 18029 } 18030 composeElementClose(element); 18031 xml.exit(FHIR_NS, name); 18032 } 18033 } 18034 18035 protected void composeClaimResponseDetailAdjudicationComponent(String name, ClaimResponse.DetailAdjudicationComponent element) throws IOException { 18036 if (element != null) { 18037 composeElementAttributes(element); 18038 xml.enter(FHIR_NS, name); 18039 composeBackboneElements(element); 18040 if (element.hasCategory()) { 18041 composeCoding("category", element.getCategory()); 18042 } 18043 if (element.hasReason()) { 18044 composeCoding("reason", element.getReason()); 18045 } 18046 if (element.hasAmount()) { 18047 composeMoney("amount", element.getAmount()); 18048 } 18049 if (element.hasValueElement()) { 18050 composeDecimal("value", element.getValueElement()); 18051 } 18052 composeElementClose(element); 18053 xml.exit(FHIR_NS, name); 18054 } 18055 } 18056 18057 protected void composeClaimResponseSubDetailComponent(String name, ClaimResponse.SubDetailComponent element) throws IOException { 18058 if (element != null) { 18059 composeElementAttributes(element); 18060 xml.enter(FHIR_NS, name); 18061 composeBackboneElements(element); 18062 if (element.hasSequenceLinkIdElement()) { 18063 composePositiveInt("sequenceLinkId", element.getSequenceLinkIdElement()); 18064 } 18065 if (element.hasAdjudication()) { 18066 for (ClaimResponse.SubdetailAdjudicationComponent e : element.getAdjudication()) 18067 composeClaimResponseSubdetailAdjudicationComponent("adjudication", e); 18068 } 18069 composeElementClose(element); 18070 xml.exit(FHIR_NS, name); 18071 } 18072 } 18073 18074 protected void composeClaimResponseSubdetailAdjudicationComponent(String name, ClaimResponse.SubdetailAdjudicationComponent element) throws IOException { 18075 if (element != null) { 18076 composeElementAttributes(element); 18077 xml.enter(FHIR_NS, name); 18078 composeBackboneElements(element); 18079 if (element.hasCategory()) { 18080 composeCoding("category", element.getCategory()); 18081 } 18082 if (element.hasReason()) { 18083 composeCoding("reason", element.getReason()); 18084 } 18085 if (element.hasAmount()) { 18086 composeMoney("amount", element.getAmount()); 18087 } 18088 if (element.hasValueElement()) { 18089 composeDecimal("value", element.getValueElement()); 18090 } 18091 composeElementClose(element); 18092 xml.exit(FHIR_NS, name); 18093 } 18094 } 18095 18096 protected void composeClaimResponseAddedItemComponent(String name, ClaimResponse.AddedItemComponent element) throws IOException { 18097 if (element != null) { 18098 composeElementAttributes(element); 18099 xml.enter(FHIR_NS, name); 18100 composeBackboneElements(element); 18101 if (element.hasSequenceLinkId()) { 18102 for (PositiveIntType e : element.getSequenceLinkId()) 18103 composePositiveInt("sequenceLinkId", e); 18104 } 18105 if (element.hasService()) { 18106 composeCoding("service", element.getService()); 18107 } 18108 if (element.hasFee()) { 18109 composeMoney("fee", element.getFee()); 18110 } 18111 if (element.hasNoteNumberLinkId()) { 18112 for (PositiveIntType e : element.getNoteNumberLinkId()) 18113 composePositiveInt("noteNumberLinkId", e); 18114 } 18115 if (element.hasAdjudication()) { 18116 for (ClaimResponse.AddedItemAdjudicationComponent e : element.getAdjudication()) 18117 composeClaimResponseAddedItemAdjudicationComponent("adjudication", e); 18118 } 18119 if (element.hasDetail()) { 18120 for (ClaimResponse.AddedItemsDetailComponent e : element.getDetail()) 18121 composeClaimResponseAddedItemsDetailComponent("detail", e); 18122 } 18123 composeElementClose(element); 18124 xml.exit(FHIR_NS, name); 18125 } 18126 } 18127 18128 protected void composeClaimResponseAddedItemAdjudicationComponent(String name, ClaimResponse.AddedItemAdjudicationComponent element) throws IOException { 18129 if (element != null) { 18130 composeElementAttributes(element); 18131 xml.enter(FHIR_NS, name); 18132 composeBackboneElements(element); 18133 if (element.hasCategory()) { 18134 composeCoding("category", element.getCategory()); 18135 } 18136 if (element.hasReason()) { 18137 composeCoding("reason", element.getReason()); 18138 } 18139 if (element.hasAmount()) { 18140 composeMoney("amount", element.getAmount()); 18141 } 18142 if (element.hasValueElement()) { 18143 composeDecimal("value", element.getValueElement()); 18144 } 18145 composeElementClose(element); 18146 xml.exit(FHIR_NS, name); 18147 } 18148 } 18149 18150 protected void composeClaimResponseAddedItemsDetailComponent(String name, ClaimResponse.AddedItemsDetailComponent element) throws IOException { 18151 if (element != null) { 18152 composeElementAttributes(element); 18153 xml.enter(FHIR_NS, name); 18154 composeBackboneElements(element); 18155 if (element.hasService()) { 18156 composeCoding("service", element.getService()); 18157 } 18158 if (element.hasFee()) { 18159 composeMoney("fee", element.getFee()); 18160 } 18161 if (element.hasAdjudication()) { 18162 for (ClaimResponse.AddedItemDetailAdjudicationComponent e : element.getAdjudication()) 18163 composeClaimResponseAddedItemDetailAdjudicationComponent("adjudication", e); 18164 } 18165 composeElementClose(element); 18166 xml.exit(FHIR_NS, name); 18167 } 18168 } 18169 18170 protected void composeClaimResponseAddedItemDetailAdjudicationComponent(String name, ClaimResponse.AddedItemDetailAdjudicationComponent element) throws IOException { 18171 if (element != null) { 18172 composeElementAttributes(element); 18173 xml.enter(FHIR_NS, name); 18174 composeBackboneElements(element); 18175 if (element.hasCategory()) { 18176 composeCoding("category", element.getCategory()); 18177 } 18178 if (element.hasReason()) { 18179 composeCoding("reason", element.getReason()); 18180 } 18181 if (element.hasAmount()) { 18182 composeMoney("amount", element.getAmount()); 18183 } 18184 if (element.hasValueElement()) { 18185 composeDecimal("value", element.getValueElement()); 18186 } 18187 composeElementClose(element); 18188 xml.exit(FHIR_NS, name); 18189 } 18190 } 18191 18192 protected void composeClaimResponseErrorsComponent(String name, ClaimResponse.ErrorsComponent element) throws IOException { 18193 if (element != null) { 18194 composeElementAttributes(element); 18195 xml.enter(FHIR_NS, name); 18196 composeBackboneElements(element); 18197 if (element.hasSequenceLinkIdElement()) { 18198 composePositiveInt("sequenceLinkId", element.getSequenceLinkIdElement()); 18199 } 18200 if (element.hasDetailSequenceLinkIdElement()) { 18201 composePositiveInt("detailSequenceLinkId", element.getDetailSequenceLinkIdElement()); 18202 } 18203 if (element.hasSubdetailSequenceLinkIdElement()) { 18204 composePositiveInt("subdetailSequenceLinkId", element.getSubdetailSequenceLinkIdElement()); 18205 } 18206 if (element.hasCode()) { 18207 composeCoding("code", element.getCode()); 18208 } 18209 composeElementClose(element); 18210 xml.exit(FHIR_NS, name); 18211 } 18212 } 18213 18214 protected void composeClaimResponseNotesComponent(String name, ClaimResponse.NotesComponent element) throws IOException { 18215 if (element != null) { 18216 composeElementAttributes(element); 18217 xml.enter(FHIR_NS, name); 18218 composeBackboneElements(element); 18219 if (element.hasNumberElement()) { 18220 composePositiveInt("number", element.getNumberElement()); 18221 } 18222 if (element.hasType()) { 18223 composeCoding("type", element.getType()); 18224 } 18225 if (element.hasTextElement()) { 18226 composeString("text", element.getTextElement()); 18227 } 18228 composeElementClose(element); 18229 xml.exit(FHIR_NS, name); 18230 } 18231 } 18232 18233 protected void composeClaimResponseCoverageComponent(String name, ClaimResponse.CoverageComponent element) throws IOException { 18234 if (element != null) { 18235 composeElementAttributes(element); 18236 xml.enter(FHIR_NS, name); 18237 composeBackboneElements(element); 18238 if (element.hasSequenceElement()) { 18239 composePositiveInt("sequence", element.getSequenceElement()); 18240 } 18241 if (element.hasFocalElement()) { 18242 composeBoolean("focal", element.getFocalElement()); 18243 } 18244 if (element.hasCoverage()) { 18245 composeType("coverage", element.getCoverage()); 18246 } if (element.hasBusinessArrangementElement()) { 18247 composeString("businessArrangement", element.getBusinessArrangementElement()); 18248 } 18249 if (element.hasPreAuthRef()) { 18250 for (StringType e : element.getPreAuthRef()) 18251 composeString("preAuthRef", e); 18252 } 18253 if (element.hasClaimResponse()) { 18254 composeReference("claimResponse", element.getClaimResponse()); 18255 } 18256 composeElementClose(element); 18257 xml.exit(FHIR_NS, name); 18258 } 18259 } 18260 18261 protected void composeClinicalImpression(String name, ClinicalImpression element) throws IOException { 18262 if (element != null) { 18263 composeDomainResourceAttributes(element); 18264 xml.enter(FHIR_NS, name); 18265 composeDomainResourceElements(element); 18266 if (element.hasPatient()) { 18267 composeReference("patient", element.getPatient()); 18268 } 18269 if (element.hasAssessor()) { 18270 composeReference("assessor", element.getAssessor()); 18271 } 18272 if (element.hasStatusElement()) 18273 composeEnumeration("status", element.getStatusElement(), new ClinicalImpression.ClinicalImpressionStatusEnumFactory()); 18274 if (element.hasDateElement()) { 18275 composeDateTime("date", element.getDateElement()); 18276 } 18277 if (element.hasDescriptionElement()) { 18278 composeString("description", element.getDescriptionElement()); 18279 } 18280 if (element.hasPrevious()) { 18281 composeReference("previous", element.getPrevious()); 18282 } 18283 if (element.hasProblem()) { 18284 for (Reference e : element.getProblem()) 18285 composeReference("problem", e); 18286 } 18287 if (element.hasTrigger()) { 18288 composeType("trigger", element.getTrigger()); 18289 } if (element.hasInvestigations()) { 18290 for (ClinicalImpression.ClinicalImpressionInvestigationsComponent e : element.getInvestigations()) 18291 composeClinicalImpressionClinicalImpressionInvestigationsComponent("investigations", e); 18292 } 18293 if (element.hasProtocolElement()) { 18294 composeUri("protocol", element.getProtocolElement()); 18295 } 18296 if (element.hasSummaryElement()) { 18297 composeString("summary", element.getSummaryElement()); 18298 } 18299 if (element.hasFinding()) { 18300 for (ClinicalImpression.ClinicalImpressionFindingComponent e : element.getFinding()) 18301 composeClinicalImpressionClinicalImpressionFindingComponent("finding", e); 18302 } 18303 if (element.hasResolved()) { 18304 for (CodeableConcept e : element.getResolved()) 18305 composeCodeableConcept("resolved", e); 18306 } 18307 if (element.hasRuledOut()) { 18308 for (ClinicalImpression.ClinicalImpressionRuledOutComponent e : element.getRuledOut()) 18309 composeClinicalImpressionClinicalImpressionRuledOutComponent("ruledOut", e); 18310 } 18311 if (element.hasPrognosisElement()) { 18312 composeString("prognosis", element.getPrognosisElement()); 18313 } 18314 if (element.hasPlan()) { 18315 for (Reference e : element.getPlan()) 18316 composeReference("plan", e); 18317 } 18318 if (element.hasAction()) { 18319 for (Reference e : element.getAction()) 18320 composeReference("action", e); 18321 } 18322 composeElementClose(element); 18323 xml.exit(FHIR_NS, name); 18324 } 18325 } 18326 18327 protected void composeClinicalImpressionClinicalImpressionInvestigationsComponent(String name, ClinicalImpression.ClinicalImpressionInvestigationsComponent element) throws IOException { 18328 if (element != null) { 18329 composeElementAttributes(element); 18330 xml.enter(FHIR_NS, name); 18331 composeBackboneElements(element); 18332 if (element.hasCode()) { 18333 composeCodeableConcept("code", element.getCode()); 18334 } 18335 if (element.hasItem()) { 18336 for (Reference e : element.getItem()) 18337 composeReference("item", e); 18338 } 18339 composeElementClose(element); 18340 xml.exit(FHIR_NS, name); 18341 } 18342 } 18343 18344 protected void composeClinicalImpressionClinicalImpressionFindingComponent(String name, ClinicalImpression.ClinicalImpressionFindingComponent element) throws IOException { 18345 if (element != null) { 18346 composeElementAttributes(element); 18347 xml.enter(FHIR_NS, name); 18348 composeBackboneElements(element); 18349 if (element.hasItem()) { 18350 composeCodeableConcept("item", element.getItem()); 18351 } 18352 if (element.hasCauseElement()) { 18353 composeString("cause", element.getCauseElement()); 18354 } 18355 composeElementClose(element); 18356 xml.exit(FHIR_NS, name); 18357 } 18358 } 18359 18360 protected void composeClinicalImpressionClinicalImpressionRuledOutComponent(String name, ClinicalImpression.ClinicalImpressionRuledOutComponent element) throws IOException { 18361 if (element != null) { 18362 composeElementAttributes(element); 18363 xml.enter(FHIR_NS, name); 18364 composeBackboneElements(element); 18365 if (element.hasItem()) { 18366 composeCodeableConcept("item", element.getItem()); 18367 } 18368 if (element.hasReasonElement()) { 18369 composeString("reason", element.getReasonElement()); 18370 } 18371 composeElementClose(element); 18372 xml.exit(FHIR_NS, name); 18373 } 18374 } 18375 18376 protected void composeCodeSystem(String name, CodeSystem element) throws IOException { 18377 if (element != null) { 18378 composeDomainResourceAttributes(element); 18379 xml.enter(FHIR_NS, name); 18380 composeDomainResourceElements(element); 18381 if (element.hasUrlElement()) { 18382 composeUri("url", element.getUrlElement()); 18383 } 18384 if (element.hasIdentifier()) { 18385 composeIdentifier("identifier", element.getIdentifier()); 18386 } 18387 if (element.hasVersionElement()) { 18388 composeString("version", element.getVersionElement()); 18389 } 18390 if (element.hasNameElement()) { 18391 composeString("name", element.getNameElement()); 18392 } 18393 if (element.hasStatusElement()) 18394 composeEnumeration("status", element.getStatusElement(), new Enumerations.ConformanceResourceStatusEnumFactory()); 18395 if (element.hasExperimentalElement()) { 18396 composeBoolean("experimental", element.getExperimentalElement()); 18397 } 18398 if (element.hasPublisherElement()) { 18399 composeString("publisher", element.getPublisherElement()); 18400 } 18401 if (element.hasContact()) { 18402 for (CodeSystem.CodeSystemContactComponent e : element.getContact()) 18403 composeCodeSystemCodeSystemContactComponent("contact", e); 18404 } 18405 if (element.hasDateElement()) { 18406 composeDateTime("date", element.getDateElement()); 18407 } 18408 if (element.hasDescriptionElement()) { 18409 composeString("description", element.getDescriptionElement()); 18410 } 18411 if (element.hasUseContext()) { 18412 for (CodeableConcept e : element.getUseContext()) 18413 composeCodeableConcept("useContext", e); 18414 } 18415 if (element.hasRequirementsElement()) { 18416 composeString("requirements", element.getRequirementsElement()); 18417 } 18418 if (element.hasCopyrightElement()) { 18419 composeString("copyright", element.getCopyrightElement()); 18420 } 18421 if (element.hasCaseSensitiveElement()) { 18422 composeBoolean("caseSensitive", element.getCaseSensitiveElement()); 18423 } 18424 if (element.hasValueSetElement()) { 18425 composeUri("valueSet", element.getValueSetElement()); 18426 } 18427 if (element.hasCompositionalElement()) { 18428 composeBoolean("compositional", element.getCompositionalElement()); 18429 } 18430 if (element.hasVersionNeededElement()) { 18431 composeBoolean("versionNeeded", element.getVersionNeededElement()); 18432 } 18433 if (element.hasContentElement()) 18434 composeEnumeration("content", element.getContentElement(), new CodeSystem.CodeSystemContentModeEnumFactory()); 18435 if (element.hasCountElement()) { 18436 composeUnsignedInt("count", element.getCountElement()); 18437 } 18438 if (element.hasFilter()) { 18439 for (CodeSystem.CodeSystemFilterComponent e : element.getFilter()) 18440 composeCodeSystemCodeSystemFilterComponent("filter", e); 18441 } 18442 if (element.hasProperty()) { 18443 for (CodeSystem.CodeSystemPropertyComponent e : element.getProperty()) 18444 composeCodeSystemCodeSystemPropertyComponent("property", e); 18445 } 18446 if (element.hasConcept()) { 18447 for (CodeSystem.ConceptDefinitionComponent e : element.getConcept()) 18448 composeCodeSystemConceptDefinitionComponent("concept", e); 18449 } 18450 composeElementClose(element); 18451 xml.exit(FHIR_NS, name); 18452 } 18453 } 18454 18455 protected void composeCodeSystemCodeSystemContactComponent(String name, CodeSystem.CodeSystemContactComponent element) throws IOException { 18456 if (element != null) { 18457 composeElementAttributes(element); 18458 xml.enter(FHIR_NS, name); 18459 composeBackboneElements(element); 18460 if (element.hasNameElement()) { 18461 composeString("name", element.getNameElement()); 18462 } 18463 if (element.hasTelecom()) { 18464 for (ContactPoint e : element.getTelecom()) 18465 composeContactPoint("telecom", e); 18466 } 18467 composeElementClose(element); 18468 xml.exit(FHIR_NS, name); 18469 } 18470 } 18471 18472 protected void composeCodeSystemCodeSystemFilterComponent(String name, CodeSystem.CodeSystemFilterComponent element) throws IOException { 18473 if (element != null) { 18474 composeElementAttributes(element); 18475 xml.enter(FHIR_NS, name); 18476 composeBackboneElements(element); 18477 if (element.hasCodeElement()) { 18478 composeCode("code", element.getCodeElement()); 18479 } 18480 if (element.hasDescriptionElement()) { 18481 composeString("description", element.getDescriptionElement()); 18482 } 18483 if (element.hasOperator()) { 18484 for (CodeType e : element.getOperator()) 18485 composeCode("operator", e); 18486 } 18487 if (element.hasValueElement()) { 18488 composeString("value", element.getValueElement()); 18489 } 18490 composeElementClose(element); 18491 xml.exit(FHIR_NS, name); 18492 } 18493 } 18494 18495 protected void composeCodeSystemCodeSystemPropertyComponent(String name, CodeSystem.CodeSystemPropertyComponent element) throws IOException { 18496 if (element != null) { 18497 composeElementAttributes(element); 18498 xml.enter(FHIR_NS, name); 18499 composeBackboneElements(element); 18500 if (element.hasCodeElement()) { 18501 composeCode("code", element.getCodeElement()); 18502 } 18503 if (element.hasDescriptionElement()) { 18504 composeString("description", element.getDescriptionElement()); 18505 } 18506 if (element.hasTypeElement()) 18507 composeEnumeration("type", element.getTypeElement(), new CodeSystem.PropertyTypeEnumFactory()); 18508 composeElementClose(element); 18509 xml.exit(FHIR_NS, name); 18510 } 18511 } 18512 18513 protected void composeCodeSystemConceptDefinitionComponent(String name, CodeSystem.ConceptDefinitionComponent element) throws IOException { 18514 if (element != null) { 18515 composeElementAttributes(element); 18516 xml.enter(FHIR_NS, name); 18517 composeBackboneElements(element); 18518 if (element.hasCodeElement()) { 18519 composeCode("code", element.getCodeElement()); 18520 } 18521 if (element.hasDisplayElement()) { 18522 composeString("display", element.getDisplayElement()); 18523 } 18524 if (element.hasDefinitionElement()) { 18525 composeString("definition", element.getDefinitionElement()); 18526 } 18527 if (element.hasDesignation()) { 18528 for (CodeSystem.ConceptDefinitionDesignationComponent e : element.getDesignation()) 18529 composeCodeSystemConceptDefinitionDesignationComponent("designation", e); 18530 } 18531 if (element.hasProperty()) { 18532 for (CodeSystem.ConceptDefinitionPropertyComponent e : element.getProperty()) 18533 composeCodeSystemConceptDefinitionPropertyComponent("property", e); 18534 } 18535 if (element.hasConcept()) { 18536 for (CodeSystem.ConceptDefinitionComponent e : element.getConcept()) 18537 composeCodeSystemConceptDefinitionComponent("concept", e); 18538 } 18539 composeElementClose(element); 18540 xml.exit(FHIR_NS, name); 18541 } 18542 } 18543 18544 protected void composeCodeSystemConceptDefinitionDesignationComponent(String name, CodeSystem.ConceptDefinitionDesignationComponent element) throws IOException { 18545 if (element != null) { 18546 composeElementAttributes(element); 18547 xml.enter(FHIR_NS, name); 18548 composeBackboneElements(element); 18549 if (element.hasLanguageElement()) { 18550 composeCode("language", element.getLanguageElement()); 18551 } 18552 if (element.hasUse()) { 18553 composeCoding("use", element.getUse()); 18554 } 18555 if (element.hasValueElement()) { 18556 composeString("value", element.getValueElement()); 18557 } 18558 composeElementClose(element); 18559 xml.exit(FHIR_NS, name); 18560 } 18561 } 18562 18563 protected void composeCodeSystemConceptDefinitionPropertyComponent(String name, CodeSystem.ConceptDefinitionPropertyComponent element) throws IOException { 18564 if (element != null) { 18565 composeElementAttributes(element); 18566 xml.enter(FHIR_NS, name); 18567 composeBackboneElements(element); 18568 if (element.hasCodeElement()) { 18569 composeCode("code", element.getCodeElement()); 18570 } 18571 if (element.hasValue()) { 18572 composeType("value", element.getValue()); 18573 } composeElementClose(element); 18574 xml.exit(FHIR_NS, name); 18575 } 18576 } 18577 18578 protected void composeCommunication(String name, Communication element) throws IOException { 18579 if (element != null) { 18580 composeDomainResourceAttributes(element); 18581 xml.enter(FHIR_NS, name); 18582 composeDomainResourceElements(element); 18583 if (element.hasIdentifier()) { 18584 for (Identifier e : element.getIdentifier()) 18585 composeIdentifier("identifier", e); 18586 } 18587 if (element.hasCategory()) { 18588 composeCodeableConcept("category", element.getCategory()); 18589 } 18590 if (element.hasSender()) { 18591 composeReference("sender", element.getSender()); 18592 } 18593 if (element.hasRecipient()) { 18594 for (Reference e : element.getRecipient()) 18595 composeReference("recipient", e); 18596 } 18597 if (element.hasPayload()) { 18598 for (Communication.CommunicationPayloadComponent e : element.getPayload()) 18599 composeCommunicationCommunicationPayloadComponent("payload", e); 18600 } 18601 if (element.hasMedium()) { 18602 for (CodeableConcept e : element.getMedium()) 18603 composeCodeableConcept("medium", e); 18604 } 18605 if (element.hasStatusElement()) 18606 composeEnumeration("status", element.getStatusElement(), new Communication.CommunicationStatusEnumFactory()); 18607 if (element.hasEncounter()) { 18608 composeReference("encounter", element.getEncounter()); 18609 } 18610 if (element.hasSentElement()) { 18611 composeDateTime("sent", element.getSentElement()); 18612 } 18613 if (element.hasReceivedElement()) { 18614 composeDateTime("received", element.getReceivedElement()); 18615 } 18616 if (element.hasReason()) { 18617 for (CodeableConcept e : element.getReason()) 18618 composeCodeableConcept("reason", e); 18619 } 18620 if (element.hasSubject()) { 18621 composeReference("subject", element.getSubject()); 18622 } 18623 if (element.hasRequestDetail()) { 18624 composeReference("requestDetail", element.getRequestDetail()); 18625 } 18626 composeElementClose(element); 18627 xml.exit(FHIR_NS, name); 18628 } 18629 } 18630 18631 protected void composeCommunicationCommunicationPayloadComponent(String name, Communication.CommunicationPayloadComponent element) throws IOException { 18632 if (element != null) { 18633 composeElementAttributes(element); 18634 xml.enter(FHIR_NS, name); 18635 composeBackboneElements(element); 18636 if (element.hasContent()) { 18637 composeType("content", element.getContent()); 18638 } composeElementClose(element); 18639 xml.exit(FHIR_NS, name); 18640 } 18641 } 18642 18643 protected void composeCommunicationRequest(String name, CommunicationRequest element) throws IOException { 18644 if (element != null) { 18645 composeDomainResourceAttributes(element); 18646 xml.enter(FHIR_NS, name); 18647 composeDomainResourceElements(element); 18648 if (element.hasIdentifier()) { 18649 for (Identifier e : element.getIdentifier()) 18650 composeIdentifier("identifier", e); 18651 } 18652 if (element.hasCategory()) { 18653 composeCodeableConcept("category", element.getCategory()); 18654 } 18655 if (element.hasSender()) { 18656 composeReference("sender", element.getSender()); 18657 } 18658 if (element.hasRecipient()) { 18659 for (Reference e : element.getRecipient()) 18660 composeReference("recipient", e); 18661 } 18662 if (element.hasPayload()) { 18663 for (CommunicationRequest.CommunicationRequestPayloadComponent e : element.getPayload()) 18664 composeCommunicationRequestCommunicationRequestPayloadComponent("payload", e); 18665 } 18666 if (element.hasMedium()) { 18667 for (CodeableConcept e : element.getMedium()) 18668 composeCodeableConcept("medium", e); 18669 } 18670 if (element.hasRequester()) { 18671 composeReference("requester", element.getRequester()); 18672 } 18673 if (element.hasStatusElement()) 18674 composeEnumeration("status", element.getStatusElement(), new CommunicationRequest.CommunicationRequestStatusEnumFactory()); 18675 if (element.hasEncounter()) { 18676 composeReference("encounter", element.getEncounter()); 18677 } 18678 if (element.hasScheduled()) { 18679 composeType("scheduled", element.getScheduled()); 18680 } if (element.hasReason()) { 18681 for (CodeableConcept e : element.getReason()) 18682 composeCodeableConcept("reason", e); 18683 } 18684 if (element.hasRequestedOnElement()) { 18685 composeDateTime("requestedOn", element.getRequestedOnElement()); 18686 } 18687 if (element.hasSubject()) { 18688 composeReference("subject", element.getSubject()); 18689 } 18690 if (element.hasPriority()) { 18691 composeCodeableConcept("priority", element.getPriority()); 18692 } 18693 composeElementClose(element); 18694 xml.exit(FHIR_NS, name); 18695 } 18696 } 18697 18698 protected void composeCommunicationRequestCommunicationRequestPayloadComponent(String name, CommunicationRequest.CommunicationRequestPayloadComponent element) throws IOException { 18699 if (element != null) { 18700 composeElementAttributes(element); 18701 xml.enter(FHIR_NS, name); 18702 composeBackboneElements(element); 18703 if (element.hasContent()) { 18704 composeType("content", element.getContent()); 18705 } composeElementClose(element); 18706 xml.exit(FHIR_NS, name); 18707 } 18708 } 18709 18710 protected void composeCompartmentDefinition(String name, CompartmentDefinition element) throws IOException { 18711 if (element != null) { 18712 composeDomainResourceAttributes(element); 18713 xml.enter(FHIR_NS, name); 18714 composeDomainResourceElements(element); 18715 if (element.hasUrlElement()) { 18716 composeUri("url", element.getUrlElement()); 18717 } 18718 if (element.hasNameElement()) { 18719 composeString("name", element.getNameElement()); 18720 } 18721 if (element.hasStatusElement()) 18722 composeEnumeration("status", element.getStatusElement(), new Enumerations.ConformanceResourceStatusEnumFactory()); 18723 if (element.hasExperimentalElement()) { 18724 composeBoolean("experimental", element.getExperimentalElement()); 18725 } 18726 if (element.hasPublisherElement()) { 18727 composeString("publisher", element.getPublisherElement()); 18728 } 18729 if (element.hasContact()) { 18730 for (CompartmentDefinition.CompartmentDefinitionContactComponent e : element.getContact()) 18731 composeCompartmentDefinitionCompartmentDefinitionContactComponent("contact", e); 18732 } 18733 if (element.hasDateElement()) { 18734 composeDateTime("date", element.getDateElement()); 18735 } 18736 if (element.hasDescriptionElement()) { 18737 composeString("description", element.getDescriptionElement()); 18738 } 18739 if (element.hasRequirementsElement()) { 18740 composeString("requirements", element.getRequirementsElement()); 18741 } 18742 if (element.hasCodeElement()) 18743 composeEnumeration("code", element.getCodeElement(), new CompartmentDefinition.CompartmentTypeEnumFactory()); 18744 if (element.hasSearchElement()) { 18745 composeBoolean("search", element.getSearchElement()); 18746 } 18747 if (element.hasResource()) { 18748 for (CompartmentDefinition.CompartmentDefinitionResourceComponent e : element.getResource()) 18749 composeCompartmentDefinitionCompartmentDefinitionResourceComponent("resource", e); 18750 } 18751 composeElementClose(element); 18752 xml.exit(FHIR_NS, name); 18753 } 18754 } 18755 18756 protected void composeCompartmentDefinitionCompartmentDefinitionContactComponent(String name, CompartmentDefinition.CompartmentDefinitionContactComponent element) throws IOException { 18757 if (element != null) { 18758 composeElementAttributes(element); 18759 xml.enter(FHIR_NS, name); 18760 composeBackboneElements(element); 18761 if (element.hasNameElement()) { 18762 composeString("name", element.getNameElement()); 18763 } 18764 if (element.hasTelecom()) { 18765 for (ContactPoint e : element.getTelecom()) 18766 composeContactPoint("telecom", e); 18767 } 18768 composeElementClose(element); 18769 xml.exit(FHIR_NS, name); 18770 } 18771 } 18772 18773 protected void composeCompartmentDefinitionCompartmentDefinitionResourceComponent(String name, CompartmentDefinition.CompartmentDefinitionResourceComponent element) throws IOException { 18774 if (element != null) { 18775 composeElementAttributes(element); 18776 xml.enter(FHIR_NS, name); 18777 composeBackboneElements(element); 18778 if (element.hasCodeElement()) { 18779 composeCode("code", element.getCodeElement()); 18780 } 18781 if (element.hasParam()) { 18782 for (StringType e : element.getParam()) 18783 composeString("param", e); 18784 } 18785 if (element.hasDocumentationElement()) { 18786 composeString("documentation", element.getDocumentationElement()); 18787 } 18788 composeElementClose(element); 18789 xml.exit(FHIR_NS, name); 18790 } 18791 } 18792 18793 protected void composeComposition(String name, Composition element) throws IOException { 18794 if (element != null) { 18795 composeDomainResourceAttributes(element); 18796 xml.enter(FHIR_NS, name); 18797 composeDomainResourceElements(element); 18798 if (element.hasIdentifier()) { 18799 composeIdentifier("identifier", element.getIdentifier()); 18800 } 18801 if (element.hasDateElement()) { 18802 composeDateTime("date", element.getDateElement()); 18803 } 18804 if (element.hasType()) { 18805 composeCodeableConcept("type", element.getType()); 18806 } 18807 if (element.hasClass_()) { 18808 composeCodeableConcept("class", element.getClass_()); 18809 } 18810 if (element.hasTitleElement()) { 18811 composeString("title", element.getTitleElement()); 18812 } 18813 if (element.hasStatusElement()) 18814 composeEnumeration("status", element.getStatusElement(), new Composition.CompositionStatusEnumFactory()); 18815 if (element.hasConfidentialityElement()) { 18816 composeCode("confidentiality", element.getConfidentialityElement()); 18817 } 18818 if (element.hasSubject()) { 18819 composeReference("subject", element.getSubject()); 18820 } 18821 if (element.hasAuthor()) { 18822 for (Reference e : element.getAuthor()) 18823 composeReference("author", e); 18824 } 18825 if (element.hasAttester()) { 18826 for (Composition.CompositionAttesterComponent e : element.getAttester()) 18827 composeCompositionCompositionAttesterComponent("attester", e); 18828 } 18829 if (element.hasCustodian()) { 18830 composeReference("custodian", element.getCustodian()); 18831 } 18832 if (element.hasEvent()) { 18833 for (Composition.CompositionEventComponent e : element.getEvent()) 18834 composeCompositionCompositionEventComponent("event", e); 18835 } 18836 if (element.hasEncounter()) { 18837 composeReference("encounter", element.getEncounter()); 18838 } 18839 if (element.hasSection()) { 18840 for (Composition.SectionComponent e : element.getSection()) 18841 composeCompositionSectionComponent("section", e); 18842 } 18843 composeElementClose(element); 18844 xml.exit(FHIR_NS, name); 18845 } 18846 } 18847 18848 protected void composeCompositionCompositionAttesterComponent(String name, Composition.CompositionAttesterComponent element) throws IOException { 18849 if (element != null) { 18850 composeElementAttributes(element); 18851 xml.enter(FHIR_NS, name); 18852 composeBackboneElements(element); 18853 if (element.hasMode()) 18854 for (Enumeration<Composition.CompositionAttestationMode> e : element.getMode()) 18855 composeEnumeration("mode", e, new Composition.CompositionAttestationModeEnumFactory()); 18856 if (element.hasTimeElement()) { 18857 composeDateTime("time", element.getTimeElement()); 18858 } 18859 if (element.hasParty()) { 18860 composeReference("party", element.getParty()); 18861 } 18862 composeElementClose(element); 18863 xml.exit(FHIR_NS, name); 18864 } 18865 } 18866 18867 protected void composeCompositionCompositionEventComponent(String name, Composition.CompositionEventComponent element) throws IOException { 18868 if (element != null) { 18869 composeElementAttributes(element); 18870 xml.enter(FHIR_NS, name); 18871 composeBackboneElements(element); 18872 if (element.hasCode()) { 18873 for (CodeableConcept e : element.getCode()) 18874 composeCodeableConcept("code", e); 18875 } 18876 if (element.hasPeriod()) { 18877 composePeriod("period", element.getPeriod()); 18878 } 18879 if (element.hasDetail()) { 18880 for (Reference e : element.getDetail()) 18881 composeReference("detail", e); 18882 } 18883 composeElementClose(element); 18884 xml.exit(FHIR_NS, name); 18885 } 18886 } 18887 18888 protected void composeCompositionSectionComponent(String name, Composition.SectionComponent element) throws IOException { 18889 if (element != null) { 18890 composeElementAttributes(element); 18891 xml.enter(FHIR_NS, name); 18892 composeBackboneElements(element); 18893 if (element.hasTitleElement()) { 18894 composeString("title", element.getTitleElement()); 18895 } 18896 if (element.hasCode()) { 18897 composeCodeableConcept("code", element.getCode()); 18898 } 18899 if (element.hasText()) { 18900 composeNarrative("text", element.getText()); 18901 } 18902 if (element.hasModeElement()) { 18903 composeCode("mode", element.getModeElement()); 18904 } 18905 if (element.hasOrderedBy()) { 18906 composeCodeableConcept("orderedBy", element.getOrderedBy()); 18907 } 18908 if (element.hasEntry()) { 18909 for (Reference e : element.getEntry()) 18910 composeReference("entry", e); 18911 } 18912 if (element.hasEmptyReason()) { 18913 composeCodeableConcept("emptyReason", element.getEmptyReason()); 18914 } 18915 if (element.hasSection()) { 18916 for (Composition.SectionComponent e : element.getSection()) 18917 composeCompositionSectionComponent("section", e); 18918 } 18919 composeElementClose(element); 18920 xml.exit(FHIR_NS, name); 18921 } 18922 } 18923 18924 protected void composeConceptMap(String name, ConceptMap element) throws IOException { 18925 if (element != null) { 18926 composeDomainResourceAttributes(element); 18927 xml.enter(FHIR_NS, name); 18928 composeDomainResourceElements(element); 18929 if (element.hasUrlElement()) { 18930 composeUri("url", element.getUrlElement()); 18931 } 18932 if (element.hasIdentifier()) { 18933 composeIdentifier("identifier", element.getIdentifier()); 18934 } 18935 if (element.hasVersionElement()) { 18936 composeString("version", element.getVersionElement()); 18937 } 18938 if (element.hasNameElement()) { 18939 composeString("name", element.getNameElement()); 18940 } 18941 if (element.hasStatusElement()) 18942 composeEnumeration("status", element.getStatusElement(), new Enumerations.ConformanceResourceStatusEnumFactory()); 18943 if (element.hasExperimentalElement()) { 18944 composeBoolean("experimental", element.getExperimentalElement()); 18945 } 18946 if (element.hasPublisherElement()) { 18947 composeString("publisher", element.getPublisherElement()); 18948 } 18949 if (element.hasContact()) { 18950 for (ConceptMap.ConceptMapContactComponent e : element.getContact()) 18951 composeConceptMapConceptMapContactComponent("contact", e); 18952 } 18953 if (element.hasDateElement()) { 18954 composeDateTime("date", element.getDateElement()); 18955 } 18956 if (element.hasDescriptionElement()) { 18957 composeString("description", element.getDescriptionElement()); 18958 } 18959 if (element.hasUseContext()) { 18960 for (CodeableConcept e : element.getUseContext()) 18961 composeCodeableConcept("useContext", e); 18962 } 18963 if (element.hasRequirementsElement()) { 18964 composeString("requirements", element.getRequirementsElement()); 18965 } 18966 if (element.hasCopyrightElement()) { 18967 composeString("copyright", element.getCopyrightElement()); 18968 } 18969 if (element.hasSource()) { 18970 composeType("source", element.getSource()); 18971 } if (element.hasTarget()) { 18972 composeType("target", element.getTarget()); 18973 } if (element.hasElement()) { 18974 for (ConceptMap.SourceElementComponent e : element.getElement()) 18975 composeConceptMapSourceElementComponent("element", e); 18976 } 18977 composeElementClose(element); 18978 xml.exit(FHIR_NS, name); 18979 } 18980 } 18981 18982 protected void composeConceptMapConceptMapContactComponent(String name, ConceptMap.ConceptMapContactComponent element) throws IOException { 18983 if (element != null) { 18984 composeElementAttributes(element); 18985 xml.enter(FHIR_NS, name); 18986 composeBackboneElements(element); 18987 if (element.hasNameElement()) { 18988 composeString("name", element.getNameElement()); 18989 } 18990 if (element.hasTelecom()) { 18991 for (ContactPoint e : element.getTelecom()) 18992 composeContactPoint("telecom", e); 18993 } 18994 composeElementClose(element); 18995 xml.exit(FHIR_NS, name); 18996 } 18997 } 18998 18999 protected void composeConceptMapSourceElementComponent(String name, ConceptMap.SourceElementComponent element) throws IOException { 19000 if (element != null) { 19001 composeElementAttributes(element); 19002 xml.enter(FHIR_NS, name); 19003 composeBackboneElements(element); 19004 if (element.hasSystemElement()) { 19005 composeUri("system", element.getSystemElement()); 19006 } 19007 if (element.hasVersionElement()) { 19008 composeString("version", element.getVersionElement()); 19009 } 19010 if (element.hasCodeElement()) { 19011 composeCode("code", element.getCodeElement()); 19012 } 19013 if (element.hasTarget()) { 19014 for (ConceptMap.TargetElementComponent e : element.getTarget()) 19015 composeConceptMapTargetElementComponent("target", e); 19016 } 19017 composeElementClose(element); 19018 xml.exit(FHIR_NS, name); 19019 } 19020 } 19021 19022 protected void composeConceptMapTargetElementComponent(String name, ConceptMap.TargetElementComponent element) throws IOException { 19023 if (element != null) { 19024 composeElementAttributes(element); 19025 xml.enter(FHIR_NS, name); 19026 composeBackboneElements(element); 19027 if (element.hasSystemElement()) { 19028 composeUri("system", element.getSystemElement()); 19029 } 19030 if (element.hasVersionElement()) { 19031 composeString("version", element.getVersionElement()); 19032 } 19033 if (element.hasCodeElement()) { 19034 composeCode("code", element.getCodeElement()); 19035 } 19036 if (element.hasEquivalenceElement()) 19037 composeEnumeration("equivalence", element.getEquivalenceElement(), new Enumerations.ConceptMapEquivalenceEnumFactory()); 19038 if (element.hasCommentsElement()) { 19039 composeString("comments", element.getCommentsElement()); 19040 } 19041 if (element.hasDependsOn()) { 19042 for (ConceptMap.OtherElementComponent e : element.getDependsOn()) 19043 composeConceptMapOtherElementComponent("dependsOn", e); 19044 } 19045 if (element.hasProduct()) { 19046 for (ConceptMap.OtherElementComponent e : element.getProduct()) 19047 composeConceptMapOtherElementComponent("product", e); 19048 } 19049 composeElementClose(element); 19050 xml.exit(FHIR_NS, name); 19051 } 19052 } 19053 19054 protected void composeConceptMapOtherElementComponent(String name, ConceptMap.OtherElementComponent element) throws IOException { 19055 if (element != null) { 19056 composeElementAttributes(element); 19057 xml.enter(FHIR_NS, name); 19058 composeBackboneElements(element); 19059 if (element.hasElementElement()) { 19060 composeUri("element", element.getElementElement()); 19061 } 19062 if (element.hasSystemElement()) { 19063 composeUri("system", element.getSystemElement()); 19064 } 19065 if (element.hasCodeElement()) { 19066 composeString("code", element.getCodeElement()); 19067 } 19068 composeElementClose(element); 19069 xml.exit(FHIR_NS, name); 19070 } 19071 } 19072 19073 protected void composeCondition(String name, Condition element) throws IOException { 19074 if (element != null) { 19075 composeDomainResourceAttributes(element); 19076 xml.enter(FHIR_NS, name); 19077 composeDomainResourceElements(element); 19078 if (element.hasIdentifier()) { 19079 for (Identifier e : element.getIdentifier()) 19080 composeIdentifier("identifier", e); 19081 } 19082 if (element.hasPatient()) { 19083 composeReference("patient", element.getPatient()); 19084 } 19085 if (element.hasEncounter()) { 19086 composeReference("encounter", element.getEncounter()); 19087 } 19088 if (element.hasAsserter()) { 19089 composeReference("asserter", element.getAsserter()); 19090 } 19091 if (element.hasDateRecordedElement()) { 19092 composeDate("dateRecorded", element.getDateRecordedElement()); 19093 } 19094 if (element.hasCode()) { 19095 composeCodeableConcept("code", element.getCode()); 19096 } 19097 if (element.hasCategory()) { 19098 composeCodeableConcept("category", element.getCategory()); 19099 } 19100 if (element.hasClinicalStatusElement()) { 19101 composeCode("clinicalStatus", element.getClinicalStatusElement()); 19102 } 19103 if (element.hasVerificationStatusElement()) 19104 composeEnumeration("verificationStatus", element.getVerificationStatusElement(), new Condition.ConditionVerificationStatusEnumFactory()); 19105 if (element.hasSeverity()) { 19106 composeCodeableConcept("severity", element.getSeverity()); 19107 } 19108 if (element.hasOnset()) { 19109 composeType("onset", element.getOnset()); 19110 } if (element.hasAbatement()) { 19111 composeType("abatement", element.getAbatement()); 19112 } if (element.hasStage()) { 19113 composeConditionConditionStageComponent("stage", element.getStage()); 19114 } 19115 if (element.hasEvidence()) { 19116 for (Condition.ConditionEvidenceComponent e : element.getEvidence()) 19117 composeConditionConditionEvidenceComponent("evidence", e); 19118 } 19119 if (element.hasBodySite()) { 19120 for (CodeableConcept e : element.getBodySite()) 19121 composeCodeableConcept("bodySite", e); 19122 } 19123 if (element.hasNotesElement()) { 19124 composeString("notes", element.getNotesElement()); 19125 } 19126 composeElementClose(element); 19127 xml.exit(FHIR_NS, name); 19128 } 19129 } 19130 19131 protected void composeConditionConditionStageComponent(String name, Condition.ConditionStageComponent element) throws IOException { 19132 if (element != null) { 19133 composeElementAttributes(element); 19134 xml.enter(FHIR_NS, name); 19135 composeBackboneElements(element); 19136 if (element.hasSummary()) { 19137 composeCodeableConcept("summary", element.getSummary()); 19138 } 19139 if (element.hasAssessment()) { 19140 for (Reference e : element.getAssessment()) 19141 composeReference("assessment", e); 19142 } 19143 composeElementClose(element); 19144 xml.exit(FHIR_NS, name); 19145 } 19146 } 19147 19148 protected void composeConditionConditionEvidenceComponent(String name, Condition.ConditionEvidenceComponent element) throws IOException { 19149 if (element != null) { 19150 composeElementAttributes(element); 19151 xml.enter(FHIR_NS, name); 19152 composeBackboneElements(element); 19153 if (element.hasCode()) { 19154 composeCodeableConcept("code", element.getCode()); 19155 } 19156 if (element.hasDetail()) { 19157 for (Reference e : element.getDetail()) 19158 composeReference("detail", e); 19159 } 19160 composeElementClose(element); 19161 xml.exit(FHIR_NS, name); 19162 } 19163 } 19164 19165 protected void composeConformance(String name, Conformance element) throws IOException { 19166 if (element != null) { 19167 composeDomainResourceAttributes(element); 19168 xml.enter(FHIR_NS, name); 19169 composeDomainResourceElements(element); 19170 if (element.hasUrlElement()) { 19171 composeUri("url", element.getUrlElement()); 19172 } 19173 if (element.hasVersionElement()) { 19174 composeString("version", element.getVersionElement()); 19175 } 19176 if (element.hasNameElement()) { 19177 composeString("name", element.getNameElement()); 19178 } 19179 if (element.hasStatusElement()) 19180 composeEnumeration("status", element.getStatusElement(), new Enumerations.ConformanceResourceStatusEnumFactory()); 19181 if (element.hasExperimentalElement()) { 19182 composeBoolean("experimental", element.getExperimentalElement()); 19183 } 19184 if (element.hasDateElement()) { 19185 composeDateTime("date", element.getDateElement()); 19186 } 19187 if (element.hasPublisherElement()) { 19188 composeString("publisher", element.getPublisherElement()); 19189 } 19190 if (element.hasContact()) { 19191 for (Conformance.ConformanceContactComponent e : element.getContact()) 19192 composeConformanceConformanceContactComponent("contact", e); 19193 } 19194 if (element.hasDescriptionElement()) { 19195 composeString("description", element.getDescriptionElement()); 19196 } 19197 if (element.hasUseContext()) { 19198 for (CodeableConcept e : element.getUseContext()) 19199 composeCodeableConcept("useContext", e); 19200 } 19201 if (element.hasRequirementsElement()) { 19202 composeString("requirements", element.getRequirementsElement()); 19203 } 19204 if (element.hasCopyrightElement()) { 19205 composeString("copyright", element.getCopyrightElement()); 19206 } 19207 if (element.hasKindElement()) 19208 composeEnumeration("kind", element.getKindElement(), new Conformance.ConformanceStatementKindEnumFactory()); 19209 if (element.hasSoftware()) { 19210 composeConformanceConformanceSoftwareComponent("software", element.getSoftware()); 19211 } 19212 if (element.hasImplementation()) { 19213 composeConformanceConformanceImplementationComponent("implementation", element.getImplementation()); 19214 } 19215 if (element.hasFhirVersionElement()) { 19216 composeId("fhirVersion", element.getFhirVersionElement()); 19217 } 19218 if (element.hasAcceptUnknownElement()) 19219 composeEnumeration("acceptUnknown", element.getAcceptUnknownElement(), new Conformance.UnknownContentCodeEnumFactory()); 19220 if (element.hasFormat()) { 19221 for (CodeType e : element.getFormat()) 19222 composeCode("format", e); 19223 } 19224 if (element.hasProfile()) { 19225 for (Reference e : element.getProfile()) 19226 composeReference("profile", e); 19227 } 19228 if (element.hasRest()) { 19229 for (Conformance.ConformanceRestComponent e : element.getRest()) 19230 composeConformanceConformanceRestComponent("rest", e); 19231 } 19232 if (element.hasMessaging()) { 19233 for (Conformance.ConformanceMessagingComponent e : element.getMessaging()) 19234 composeConformanceConformanceMessagingComponent("messaging", e); 19235 } 19236 if (element.hasDocument()) { 19237 for (Conformance.ConformanceDocumentComponent e : element.getDocument()) 19238 composeConformanceConformanceDocumentComponent("document", e); 19239 } 19240 composeElementClose(element); 19241 xml.exit(FHIR_NS, name); 19242 } 19243 } 19244 19245 protected void composeConformanceConformanceContactComponent(String name, Conformance.ConformanceContactComponent element) throws IOException { 19246 if (element != null) { 19247 composeElementAttributes(element); 19248 xml.enter(FHIR_NS, name); 19249 composeBackboneElements(element); 19250 if (element.hasNameElement()) { 19251 composeString("name", element.getNameElement()); 19252 } 19253 if (element.hasTelecom()) { 19254 for (ContactPoint e : element.getTelecom()) 19255 composeContactPoint("telecom", e); 19256 } 19257 composeElementClose(element); 19258 xml.exit(FHIR_NS, name); 19259 } 19260 } 19261 19262 protected void composeConformanceConformanceSoftwareComponent(String name, Conformance.ConformanceSoftwareComponent element) throws IOException { 19263 if (element != null) { 19264 composeElementAttributes(element); 19265 xml.enter(FHIR_NS, name); 19266 composeBackboneElements(element); 19267 if (element.hasNameElement()) { 19268 composeString("name", element.getNameElement()); 19269 } 19270 if (element.hasVersionElement()) { 19271 composeString("version", element.getVersionElement()); 19272 } 19273 if (element.hasReleaseDateElement()) { 19274 composeDateTime("releaseDate", element.getReleaseDateElement()); 19275 } 19276 composeElementClose(element); 19277 xml.exit(FHIR_NS, name); 19278 } 19279 } 19280 19281 protected void composeConformanceConformanceImplementationComponent(String name, Conformance.ConformanceImplementationComponent element) throws IOException { 19282 if (element != null) { 19283 composeElementAttributes(element); 19284 xml.enter(FHIR_NS, name); 19285 composeBackboneElements(element); 19286 if (element.hasDescriptionElement()) { 19287 composeString("description", element.getDescriptionElement()); 19288 } 19289 if (element.hasUrlElement()) { 19290 composeUri("url", element.getUrlElement()); 19291 } 19292 composeElementClose(element); 19293 xml.exit(FHIR_NS, name); 19294 } 19295 } 19296 19297 protected void composeConformanceConformanceRestComponent(String name, Conformance.ConformanceRestComponent element) throws IOException { 19298 if (element != null) { 19299 composeElementAttributes(element); 19300 xml.enter(FHIR_NS, name); 19301 composeBackboneElements(element); 19302 if (element.hasModeElement()) 19303 composeEnumeration("mode", element.getModeElement(), new Conformance.RestfulConformanceModeEnumFactory()); 19304 if (element.hasDocumentationElement()) { 19305 composeString("documentation", element.getDocumentationElement()); 19306 } 19307 if (element.hasSecurity()) { 19308 composeConformanceConformanceRestSecurityComponent("security", element.getSecurity()); 19309 } 19310 if (element.hasResource()) { 19311 for (Conformance.ConformanceRestResourceComponent e : element.getResource()) 19312 composeConformanceConformanceRestResourceComponent("resource", e); 19313 } 19314 if (element.hasInteraction()) { 19315 for (Conformance.SystemInteractionComponent e : element.getInteraction()) 19316 composeConformanceSystemInteractionComponent("interaction", e); 19317 } 19318 if (element.hasTransactionModeElement()) 19319 composeEnumeration("transactionMode", element.getTransactionModeElement(), new Conformance.TransactionModeEnumFactory()); 19320 if (element.hasSearchParam()) { 19321 for (Conformance.ConformanceRestResourceSearchParamComponent e : element.getSearchParam()) 19322 composeConformanceConformanceRestResourceSearchParamComponent("searchParam", e); 19323 } 19324 if (element.hasOperation()) { 19325 for (Conformance.ConformanceRestOperationComponent e : element.getOperation()) 19326 composeConformanceConformanceRestOperationComponent("operation", e); 19327 } 19328 if (element.hasCompartment()) { 19329 for (UriType e : element.getCompartment()) 19330 composeUri("compartment", e); 19331 } 19332 composeElementClose(element); 19333 xml.exit(FHIR_NS, name); 19334 } 19335 } 19336 19337 protected void composeConformanceConformanceRestSecurityComponent(String name, Conformance.ConformanceRestSecurityComponent element) throws IOException { 19338 if (element != null) { 19339 composeElementAttributes(element); 19340 xml.enter(FHIR_NS, name); 19341 composeBackboneElements(element); 19342 if (element.hasCorsElement()) { 19343 composeBoolean("cors", element.getCorsElement()); 19344 } 19345 if (element.hasService()) { 19346 for (CodeableConcept e : element.getService()) 19347 composeCodeableConcept("service", e); 19348 } 19349 if (element.hasDescriptionElement()) { 19350 composeString("description", element.getDescriptionElement()); 19351 } 19352 if (element.hasCertificate()) { 19353 for (Conformance.ConformanceRestSecurityCertificateComponent e : element.getCertificate()) 19354 composeConformanceConformanceRestSecurityCertificateComponent("certificate", e); 19355 } 19356 composeElementClose(element); 19357 xml.exit(FHIR_NS, name); 19358 } 19359 } 19360 19361 protected void composeConformanceConformanceRestSecurityCertificateComponent(String name, Conformance.ConformanceRestSecurityCertificateComponent element) throws IOException { 19362 if (element != null) { 19363 composeElementAttributes(element); 19364 xml.enter(FHIR_NS, name); 19365 composeBackboneElements(element); 19366 if (element.hasTypeElement()) { 19367 composeCode("type", element.getTypeElement()); 19368 } 19369 if (element.hasBlobElement()) { 19370 composeBase64Binary("blob", element.getBlobElement()); 19371 } 19372 composeElementClose(element); 19373 xml.exit(FHIR_NS, name); 19374 } 19375 } 19376 19377 protected void composeConformanceConformanceRestResourceComponent(String name, Conformance.ConformanceRestResourceComponent element) throws IOException { 19378 if (element != null) { 19379 composeElementAttributes(element); 19380 xml.enter(FHIR_NS, name); 19381 composeBackboneElements(element); 19382 if (element.hasTypeElement()) { 19383 composeCode("type", element.getTypeElement()); 19384 } 19385 if (element.hasProfile()) { 19386 composeReference("profile", element.getProfile()); 19387 } 19388 if (element.hasInteraction()) { 19389 for (Conformance.ResourceInteractionComponent e : element.getInteraction()) 19390 composeConformanceResourceInteractionComponent("interaction", e); 19391 } 19392 if (element.hasVersioningElement()) 19393 composeEnumeration("versioning", element.getVersioningElement(), new Conformance.ResourceVersionPolicyEnumFactory()); 19394 if (element.hasReadHistoryElement()) { 19395 composeBoolean("readHistory", element.getReadHistoryElement()); 19396 } 19397 if (element.hasUpdateCreateElement()) { 19398 composeBoolean("updateCreate", element.getUpdateCreateElement()); 19399 } 19400 if (element.hasConditionalCreateElement()) { 19401 composeBoolean("conditionalCreate", element.getConditionalCreateElement()); 19402 } 19403 if (element.hasConditionalUpdateElement()) { 19404 composeBoolean("conditionalUpdate", element.getConditionalUpdateElement()); 19405 } 19406 if (element.hasConditionalDeleteElement()) 19407 composeEnumeration("conditionalDelete", element.getConditionalDeleteElement(), new Conformance.ConditionalDeleteStatusEnumFactory()); 19408 if (element.hasSearchInclude()) { 19409 for (StringType e : element.getSearchInclude()) 19410 composeString("searchInclude", e); 19411 } 19412 if (element.hasSearchRevInclude()) { 19413 for (StringType e : element.getSearchRevInclude()) 19414 composeString("searchRevInclude", e); 19415 } 19416 if (element.hasSearchParam()) { 19417 for (Conformance.ConformanceRestResourceSearchParamComponent e : element.getSearchParam()) 19418 composeConformanceConformanceRestResourceSearchParamComponent("searchParam", e); 19419 } 19420 composeElementClose(element); 19421 xml.exit(FHIR_NS, name); 19422 } 19423 } 19424 19425 protected void composeConformanceResourceInteractionComponent(String name, Conformance.ResourceInteractionComponent element) throws IOException { 19426 if (element != null) { 19427 composeElementAttributes(element); 19428 xml.enter(FHIR_NS, name); 19429 composeBackboneElements(element); 19430 if (element.hasCodeElement()) 19431 composeEnumeration("code", element.getCodeElement(), new Conformance.TypeRestfulInteractionEnumFactory()); 19432 if (element.hasDocumentationElement()) { 19433 composeString("documentation", element.getDocumentationElement()); 19434 } 19435 composeElementClose(element); 19436 xml.exit(FHIR_NS, name); 19437 } 19438 } 19439 19440 protected void composeConformanceConformanceRestResourceSearchParamComponent(String name, Conformance.ConformanceRestResourceSearchParamComponent element) throws IOException { 19441 if (element != null) { 19442 composeElementAttributes(element); 19443 xml.enter(FHIR_NS, name); 19444 composeBackboneElements(element); 19445 if (element.hasNameElement()) { 19446 composeString("name", element.getNameElement()); 19447 } 19448 if (element.hasDefinitionElement()) { 19449 composeUri("definition", element.getDefinitionElement()); 19450 } 19451 if (element.hasTypeElement()) 19452 composeEnumeration("type", element.getTypeElement(), new Enumerations.SearchParamTypeEnumFactory()); 19453 if (element.hasDocumentationElement()) { 19454 composeString("documentation", element.getDocumentationElement()); 19455 } 19456 if (element.hasTarget()) { 19457 for (CodeType e : element.getTarget()) 19458 composeCode("target", e); 19459 } 19460 if (element.hasModifier()) 19461 for (Enumeration<Conformance.SearchModifierCode> e : element.getModifier()) 19462 composeEnumeration("modifier", e, new Conformance.SearchModifierCodeEnumFactory()); 19463 if (element.hasChain()) { 19464 for (StringType e : element.getChain()) 19465 composeString("chain", e); 19466 } 19467 composeElementClose(element); 19468 xml.exit(FHIR_NS, name); 19469 } 19470 } 19471 19472 protected void composeConformanceSystemInteractionComponent(String name, Conformance.SystemInteractionComponent element) throws IOException { 19473 if (element != null) { 19474 composeElementAttributes(element); 19475 xml.enter(FHIR_NS, name); 19476 composeBackboneElements(element); 19477 if (element.hasCodeElement()) 19478 composeEnumeration("code", element.getCodeElement(), new Conformance.SystemRestfulInteractionEnumFactory()); 19479 if (element.hasDocumentationElement()) { 19480 composeString("documentation", element.getDocumentationElement()); 19481 } 19482 composeElementClose(element); 19483 xml.exit(FHIR_NS, name); 19484 } 19485 } 19486 19487 protected void composeConformanceConformanceRestOperationComponent(String name, Conformance.ConformanceRestOperationComponent element) throws IOException { 19488 if (element != null) { 19489 composeElementAttributes(element); 19490 xml.enter(FHIR_NS, name); 19491 composeBackboneElements(element); 19492 if (element.hasNameElement()) { 19493 composeString("name", element.getNameElement()); 19494 } 19495 if (element.hasDefinition()) { 19496 composeReference("definition", element.getDefinition()); 19497 } 19498 composeElementClose(element); 19499 xml.exit(FHIR_NS, name); 19500 } 19501 } 19502 19503 protected void composeConformanceConformanceMessagingComponent(String name, Conformance.ConformanceMessagingComponent element) throws IOException { 19504 if (element != null) { 19505 composeElementAttributes(element); 19506 xml.enter(FHIR_NS, name); 19507 composeBackboneElements(element); 19508 if (element.hasEndpoint()) { 19509 for (Conformance.ConformanceMessagingEndpointComponent e : element.getEndpoint()) 19510 composeConformanceConformanceMessagingEndpointComponent("endpoint", e); 19511 } 19512 if (element.hasReliableCacheElement()) { 19513 composeUnsignedInt("reliableCache", element.getReliableCacheElement()); 19514 } 19515 if (element.hasDocumentationElement()) { 19516 composeString("documentation", element.getDocumentationElement()); 19517 } 19518 if (element.hasEvent()) { 19519 for (Conformance.ConformanceMessagingEventComponent e : element.getEvent()) 19520 composeConformanceConformanceMessagingEventComponent("event", e); 19521 } 19522 composeElementClose(element); 19523 xml.exit(FHIR_NS, name); 19524 } 19525 } 19526 19527 protected void composeConformanceConformanceMessagingEndpointComponent(String name, Conformance.ConformanceMessagingEndpointComponent element) throws IOException { 19528 if (element != null) { 19529 composeElementAttributes(element); 19530 xml.enter(FHIR_NS, name); 19531 composeBackboneElements(element); 19532 if (element.hasProtocol()) { 19533 composeCoding("protocol", element.getProtocol()); 19534 } 19535 if (element.hasAddressElement()) { 19536 composeUri("address", element.getAddressElement()); 19537 } 19538 composeElementClose(element); 19539 xml.exit(FHIR_NS, name); 19540 } 19541 } 19542 19543 protected void composeConformanceConformanceMessagingEventComponent(String name, Conformance.ConformanceMessagingEventComponent element) throws IOException { 19544 if (element != null) { 19545 composeElementAttributes(element); 19546 xml.enter(FHIR_NS, name); 19547 composeBackboneElements(element); 19548 if (element.hasCode()) { 19549 composeCoding("code", element.getCode()); 19550 } 19551 if (element.hasCategoryElement()) 19552 composeEnumeration("category", element.getCategoryElement(), new Conformance.MessageSignificanceCategoryEnumFactory()); 19553 if (element.hasModeElement()) 19554 composeEnumeration("mode", element.getModeElement(), new Conformance.ConformanceEventModeEnumFactory()); 19555 if (element.hasFocusElement()) { 19556 composeCode("focus", element.getFocusElement()); 19557 } 19558 if (element.hasRequest()) { 19559 composeReference("request", element.getRequest()); 19560 } 19561 if (element.hasResponse()) { 19562 composeReference("response", element.getResponse()); 19563 } 19564 if (element.hasDocumentationElement()) { 19565 composeString("documentation", element.getDocumentationElement()); 19566 } 19567 composeElementClose(element); 19568 xml.exit(FHIR_NS, name); 19569 } 19570 } 19571 19572 protected void composeConformanceConformanceDocumentComponent(String name, Conformance.ConformanceDocumentComponent element) throws IOException { 19573 if (element != null) { 19574 composeElementAttributes(element); 19575 xml.enter(FHIR_NS, name); 19576 composeBackboneElements(element); 19577 if (element.hasModeElement()) 19578 composeEnumeration("mode", element.getModeElement(), new Conformance.DocumentModeEnumFactory()); 19579 if (element.hasDocumentationElement()) { 19580 composeString("documentation", element.getDocumentationElement()); 19581 } 19582 if (element.hasProfile()) { 19583 composeReference("profile", element.getProfile()); 19584 } 19585 composeElementClose(element); 19586 xml.exit(FHIR_NS, name); 19587 } 19588 } 19589 19590 protected void composeContract(String name, Contract element) throws IOException { 19591 if (element != null) { 19592 composeDomainResourceAttributes(element); 19593 xml.enter(FHIR_NS, name); 19594 composeDomainResourceElements(element); 19595 if (element.hasIdentifier()) { 19596 composeIdentifier("identifier", element.getIdentifier()); 19597 } 19598 if (element.hasIssuedElement()) { 19599 composeDateTime("issued", element.getIssuedElement()); 19600 } 19601 if (element.hasApplies()) { 19602 composePeriod("applies", element.getApplies()); 19603 } 19604 if (element.hasSubject()) { 19605 for (Reference e : element.getSubject()) 19606 composeReference("subject", e); 19607 } 19608 if (element.hasTopic()) { 19609 for (Reference e : element.getTopic()) 19610 composeReference("topic", e); 19611 } 19612 if (element.hasAuthority()) { 19613 for (Reference e : element.getAuthority()) 19614 composeReference("authority", e); 19615 } 19616 if (element.hasDomain()) { 19617 for (Reference e : element.getDomain()) 19618 composeReference("domain", e); 19619 } 19620 if (element.hasType()) { 19621 composeCodeableConcept("type", element.getType()); 19622 } 19623 if (element.hasSubType()) { 19624 for (CodeableConcept e : element.getSubType()) 19625 composeCodeableConcept("subType", e); 19626 } 19627 if (element.hasAction()) { 19628 for (CodeableConcept e : element.getAction()) 19629 composeCodeableConcept("action", e); 19630 } 19631 if (element.hasActionReason()) { 19632 for (CodeableConcept e : element.getActionReason()) 19633 composeCodeableConcept("actionReason", e); 19634 } 19635 if (element.hasAgent()) { 19636 for (Contract.AgentComponent e : element.getAgent()) 19637 composeContractAgentComponent("agent", e); 19638 } 19639 if (element.hasSigner()) { 19640 for (Contract.SignatoryComponent e : element.getSigner()) 19641 composeContractSignatoryComponent("signer", e); 19642 } 19643 if (element.hasValuedItem()) { 19644 for (Contract.ValuedItemComponent e : element.getValuedItem()) 19645 composeContractValuedItemComponent("valuedItem", e); 19646 } 19647 if (element.hasTerm()) { 19648 for (Contract.TermComponent e : element.getTerm()) 19649 composeContractTermComponent("term", e); 19650 } 19651 if (element.hasBinding()) { 19652 composeType("binding", element.getBinding()); 19653 } if (element.hasFriendly()) { 19654 for (Contract.FriendlyLanguageComponent e : element.getFriendly()) 19655 composeContractFriendlyLanguageComponent("friendly", e); 19656 } 19657 if (element.hasLegal()) { 19658 for (Contract.LegalLanguageComponent e : element.getLegal()) 19659 composeContractLegalLanguageComponent("legal", e); 19660 } 19661 if (element.hasRule()) { 19662 for (Contract.ComputableLanguageComponent e : element.getRule()) 19663 composeContractComputableLanguageComponent("rule", e); 19664 } 19665 composeElementClose(element); 19666 xml.exit(FHIR_NS, name); 19667 } 19668 } 19669 19670 protected void composeContractAgentComponent(String name, Contract.AgentComponent element) throws IOException { 19671 if (element != null) { 19672 composeElementAttributes(element); 19673 xml.enter(FHIR_NS, name); 19674 composeBackboneElements(element); 19675 if (element.hasActor()) { 19676 composeReference("actor", element.getActor()); 19677 } 19678 if (element.hasRole()) { 19679 for (CodeableConcept e : element.getRole()) 19680 composeCodeableConcept("role", e); 19681 } 19682 composeElementClose(element); 19683 xml.exit(FHIR_NS, name); 19684 } 19685 } 19686 19687 protected void composeContractSignatoryComponent(String name, Contract.SignatoryComponent element) throws IOException { 19688 if (element != null) { 19689 composeElementAttributes(element); 19690 xml.enter(FHIR_NS, name); 19691 composeBackboneElements(element); 19692 if (element.hasType()) { 19693 composeCoding("type", element.getType()); 19694 } 19695 if (element.hasParty()) { 19696 composeReference("party", element.getParty()); 19697 } 19698 if (element.hasSignature()) { 19699 for (Signature e : element.getSignature()) 19700 composeSignature("signature", e); 19701 } 19702 composeElementClose(element); 19703 xml.exit(FHIR_NS, name); 19704 } 19705 } 19706 19707 protected void composeContractValuedItemComponent(String name, Contract.ValuedItemComponent element) throws IOException { 19708 if (element != null) { 19709 composeElementAttributes(element); 19710 xml.enter(FHIR_NS, name); 19711 composeBackboneElements(element); 19712 if (element.hasEntity()) { 19713 composeType("entity", element.getEntity()); 19714 } if (element.hasIdentifier()) { 19715 composeIdentifier("identifier", element.getIdentifier()); 19716 } 19717 if (element.hasEffectiveTimeElement()) { 19718 composeDateTime("effectiveTime", element.getEffectiveTimeElement()); 19719 } 19720 if (element.hasQuantity()) { 19721 composeSimpleQuantity("quantity", element.getQuantity()); 19722 } 19723 if (element.hasUnitPrice()) { 19724 composeMoney("unitPrice", element.getUnitPrice()); 19725 } 19726 if (element.hasFactorElement()) { 19727 composeDecimal("factor", element.getFactorElement()); 19728 } 19729 if (element.hasPointsElement()) { 19730 composeDecimal("points", element.getPointsElement()); 19731 } 19732 if (element.hasNet()) { 19733 composeMoney("net", element.getNet()); 19734 } 19735 composeElementClose(element); 19736 xml.exit(FHIR_NS, name); 19737 } 19738 } 19739 19740 protected void composeContractTermComponent(String name, Contract.TermComponent element) throws IOException { 19741 if (element != null) { 19742 composeElementAttributes(element); 19743 xml.enter(FHIR_NS, name); 19744 composeBackboneElements(element); 19745 if (element.hasIdentifier()) { 19746 composeIdentifier("identifier", element.getIdentifier()); 19747 } 19748 if (element.hasIssuedElement()) { 19749 composeDateTime("issued", element.getIssuedElement()); 19750 } 19751 if (element.hasApplies()) { 19752 composePeriod("applies", element.getApplies()); 19753 } 19754 if (element.hasType()) { 19755 composeCodeableConcept("type", element.getType()); 19756 } 19757 if (element.hasSubType()) { 19758 composeCodeableConcept("subType", element.getSubType()); 19759 } 19760 if (element.hasTopic()) { 19761 for (Reference e : element.getTopic()) 19762 composeReference("topic", e); 19763 } 19764 if (element.hasAction()) { 19765 for (CodeableConcept e : element.getAction()) 19766 composeCodeableConcept("action", e); 19767 } 19768 if (element.hasActionReason()) { 19769 for (CodeableConcept e : element.getActionReason()) 19770 composeCodeableConcept("actionReason", e); 19771 } 19772 if (element.hasAgent()) { 19773 for (Contract.TermAgentComponent e : element.getAgent()) 19774 composeContractTermAgentComponent("agent", e); 19775 } 19776 if (element.hasTextElement()) { 19777 composeString("text", element.getTextElement()); 19778 } 19779 if (element.hasValuedItem()) { 19780 for (Contract.TermValuedItemComponent e : element.getValuedItem()) 19781 composeContractTermValuedItemComponent("valuedItem", e); 19782 } 19783 if (element.hasGroup()) { 19784 for (Contract.TermComponent e : element.getGroup()) 19785 composeContractTermComponent("group", e); 19786 } 19787 composeElementClose(element); 19788 xml.exit(FHIR_NS, name); 19789 } 19790 } 19791 19792 protected void composeContractTermAgentComponent(String name, Contract.TermAgentComponent element) throws IOException { 19793 if (element != null) { 19794 composeElementAttributes(element); 19795 xml.enter(FHIR_NS, name); 19796 composeBackboneElements(element); 19797 if (element.hasActor()) { 19798 composeReference("actor", element.getActor()); 19799 } 19800 if (element.hasRole()) { 19801 for (CodeableConcept e : element.getRole()) 19802 composeCodeableConcept("role", e); 19803 } 19804 composeElementClose(element); 19805 xml.exit(FHIR_NS, name); 19806 } 19807 } 19808 19809 protected void composeContractTermValuedItemComponent(String name, Contract.TermValuedItemComponent element) throws IOException { 19810 if (element != null) { 19811 composeElementAttributes(element); 19812 xml.enter(FHIR_NS, name); 19813 composeBackboneElements(element); 19814 if (element.hasEntity()) { 19815 composeType("entity", element.getEntity()); 19816 } if (element.hasIdentifier()) { 19817 composeIdentifier("identifier", element.getIdentifier()); 19818 } 19819 if (element.hasEffectiveTimeElement()) { 19820 composeDateTime("effectiveTime", element.getEffectiveTimeElement()); 19821 } 19822 if (element.hasQuantity()) { 19823 composeSimpleQuantity("quantity", element.getQuantity()); 19824 } 19825 if (element.hasUnitPrice()) { 19826 composeMoney("unitPrice", element.getUnitPrice()); 19827 } 19828 if (element.hasFactorElement()) { 19829 composeDecimal("factor", element.getFactorElement()); 19830 } 19831 if (element.hasPointsElement()) { 19832 composeDecimal("points", element.getPointsElement()); 19833 } 19834 if (element.hasNet()) { 19835 composeMoney("net", element.getNet()); 19836 } 19837 composeElementClose(element); 19838 xml.exit(FHIR_NS, name); 19839 } 19840 } 19841 19842 protected void composeContractFriendlyLanguageComponent(String name, Contract.FriendlyLanguageComponent element) throws IOException { 19843 if (element != null) { 19844 composeElementAttributes(element); 19845 xml.enter(FHIR_NS, name); 19846 composeBackboneElements(element); 19847 if (element.hasContent()) { 19848 composeType("content", element.getContent()); 19849 } composeElementClose(element); 19850 xml.exit(FHIR_NS, name); 19851 } 19852 } 19853 19854 protected void composeContractLegalLanguageComponent(String name, Contract.LegalLanguageComponent element) throws IOException { 19855 if (element != null) { 19856 composeElementAttributes(element); 19857 xml.enter(FHIR_NS, name); 19858 composeBackboneElements(element); 19859 if (element.hasContent()) { 19860 composeType("content", element.getContent()); 19861 } composeElementClose(element); 19862 xml.exit(FHIR_NS, name); 19863 } 19864 } 19865 19866 protected void composeContractComputableLanguageComponent(String name, Contract.ComputableLanguageComponent element) throws IOException { 19867 if (element != null) { 19868 composeElementAttributes(element); 19869 xml.enter(FHIR_NS, name); 19870 composeBackboneElements(element); 19871 if (element.hasContent()) { 19872 composeType("content", element.getContent()); 19873 } composeElementClose(element); 19874 xml.exit(FHIR_NS, name); 19875 } 19876 } 19877 19878 protected void composeCoverage(String name, Coverage element) throws IOException { 19879 if (element != null) { 19880 composeDomainResourceAttributes(element); 19881 xml.enter(FHIR_NS, name); 19882 composeDomainResourceElements(element); 19883 if (element.hasIssuer()) { 19884 composeType("issuer", element.getIssuer()); 19885 } if (element.hasBinElement()) { 19886 composeString("bin", element.getBinElement()); 19887 } 19888 if (element.hasPeriod()) { 19889 composePeriod("period", element.getPeriod()); 19890 } 19891 if (element.hasType()) { 19892 composeCoding("type", element.getType()); 19893 } 19894 if (element.hasPlanholder()) { 19895 composeType("planholder", element.getPlanholder()); 19896 } if (element.hasBeneficiary()) { 19897 composeType("beneficiary", element.getBeneficiary()); 19898 } if (element.hasRelationship()) { 19899 composeCoding("relationship", element.getRelationship()); 19900 } 19901 if (element.hasIdentifier()) { 19902 for (Identifier e : element.getIdentifier()) 19903 composeIdentifier("identifier", e); 19904 } 19905 if (element.hasGroupElement()) { 19906 composeString("group", element.getGroupElement()); 19907 } 19908 if (element.hasPlanElement()) { 19909 composeString("plan", element.getPlanElement()); 19910 } 19911 if (element.hasSubPlanElement()) { 19912 composeString("subPlan", element.getSubPlanElement()); 19913 } 19914 if (element.hasDependentElement()) { 19915 composePositiveInt("dependent", element.getDependentElement()); 19916 } 19917 if (element.hasSequenceElement()) { 19918 composePositiveInt("sequence", element.getSequenceElement()); 19919 } 19920 if (element.hasException()) { 19921 for (Coding e : element.getException()) 19922 composeCoding("exception", e); 19923 } 19924 if (element.hasSchoolElement()) { 19925 composeString("school", element.getSchoolElement()); 19926 } 19927 if (element.hasNetworkElement()) { 19928 composeString("network", element.getNetworkElement()); 19929 } 19930 if (element.hasContract()) { 19931 for (Reference e : element.getContract()) 19932 composeReference("contract", e); 19933 } 19934 composeElementClose(element); 19935 xml.exit(FHIR_NS, name); 19936 } 19937 } 19938 19939 protected void composeDataElement(String name, DataElement element) throws IOException { 19940 if (element != null) { 19941 composeDomainResourceAttributes(element); 19942 xml.enter(FHIR_NS, name); 19943 composeDomainResourceElements(element); 19944 if (element.hasUrlElement()) { 19945 composeUri("url", element.getUrlElement()); 19946 } 19947 if (element.hasIdentifier()) { 19948 for (Identifier e : element.getIdentifier()) 19949 composeIdentifier("identifier", e); 19950 } 19951 if (element.hasVersionElement()) { 19952 composeString("version", element.getVersionElement()); 19953 } 19954 if (element.hasStatusElement()) 19955 composeEnumeration("status", element.getStatusElement(), new Enumerations.ConformanceResourceStatusEnumFactory()); 19956 if (element.hasExperimentalElement()) { 19957 composeBoolean("experimental", element.getExperimentalElement()); 19958 } 19959 if (element.hasPublisherElement()) { 19960 composeString("publisher", element.getPublisherElement()); 19961 } 19962 if (element.hasDateElement()) { 19963 composeDateTime("date", element.getDateElement()); 19964 } 19965 if (element.hasNameElement()) { 19966 composeString("name", element.getNameElement()); 19967 } 19968 if (element.hasContact()) { 19969 for (DataElement.DataElementContactComponent e : element.getContact()) 19970 composeDataElementDataElementContactComponent("contact", e); 19971 } 19972 if (element.hasUseContext()) { 19973 for (CodeableConcept e : element.getUseContext()) 19974 composeCodeableConcept("useContext", e); 19975 } 19976 if (element.hasCopyrightElement()) { 19977 composeString("copyright", element.getCopyrightElement()); 19978 } 19979 if (element.hasStringencyElement()) 19980 composeEnumeration("stringency", element.getStringencyElement(), new DataElement.DataElementStringencyEnumFactory()); 19981 if (element.hasMapping()) { 19982 for (DataElement.DataElementMappingComponent e : element.getMapping()) 19983 composeDataElementDataElementMappingComponent("mapping", e); 19984 } 19985 if (element.hasElement()) { 19986 for (ElementDefinition e : element.getElement()) 19987 composeElementDefinition("element", e); 19988 } 19989 composeElementClose(element); 19990 xml.exit(FHIR_NS, name); 19991 } 19992 } 19993 19994 protected void composeDataElementDataElementContactComponent(String name, DataElement.DataElementContactComponent element) throws IOException { 19995 if (element != null) { 19996 composeElementAttributes(element); 19997 xml.enter(FHIR_NS, name); 19998 composeBackboneElements(element); 19999 if (element.hasNameElement()) { 20000 composeString("name", element.getNameElement()); 20001 } 20002 if (element.hasTelecom()) { 20003 for (ContactPoint e : element.getTelecom()) 20004 composeContactPoint("telecom", e); 20005 } 20006 composeElementClose(element); 20007 xml.exit(FHIR_NS, name); 20008 } 20009 } 20010 20011 protected void composeDataElementDataElementMappingComponent(String name, DataElement.DataElementMappingComponent element) throws IOException { 20012 if (element != null) { 20013 composeElementAttributes(element); 20014 xml.enter(FHIR_NS, name); 20015 composeBackboneElements(element); 20016 if (element.hasIdentityElement()) { 20017 composeId("identity", element.getIdentityElement()); 20018 } 20019 if (element.hasUriElement()) { 20020 composeUri("uri", element.getUriElement()); 20021 } 20022 if (element.hasNameElement()) { 20023 composeString("name", element.getNameElement()); 20024 } 20025 if (element.hasCommentElement()) { 20026 composeString("comment", element.getCommentElement()); 20027 } 20028 composeElementClose(element); 20029 xml.exit(FHIR_NS, name); 20030 } 20031 } 20032 20033 protected void composeDecisionSupportRule(String name, DecisionSupportRule element) throws IOException { 20034 if (element != null) { 20035 composeDomainResourceAttributes(element); 20036 xml.enter(FHIR_NS, name); 20037 composeDomainResourceElements(element); 20038 if (element.hasModuleMetadata()) { 20039 composeModuleMetadata("moduleMetadata", element.getModuleMetadata()); 20040 } 20041 if (element.hasLibrary()) { 20042 for (Reference e : element.getLibrary()) 20043 composeReference("library", e); 20044 } 20045 if (element.hasTrigger()) { 20046 for (TriggerDefinition e : element.getTrigger()) 20047 composeTriggerDefinition("trigger", e); 20048 } 20049 if (element.hasConditionElement()) { 20050 composeString("condition", element.getConditionElement()); 20051 } 20052 if (element.hasAction()) { 20053 for (ActionDefinition e : element.getAction()) 20054 composeActionDefinition("action", e); 20055 } 20056 composeElementClose(element); 20057 xml.exit(FHIR_NS, name); 20058 } 20059 } 20060 20061 protected void composeDecisionSupportServiceModule(String name, DecisionSupportServiceModule element) throws IOException { 20062 if (element != null) { 20063 composeDomainResourceAttributes(element); 20064 xml.enter(FHIR_NS, name); 20065 composeDomainResourceElements(element); 20066 if (element.hasModuleMetadata()) { 20067 composeModuleMetadata("moduleMetadata", element.getModuleMetadata()); 20068 } 20069 if (element.hasTrigger()) { 20070 for (TriggerDefinition e : element.getTrigger()) 20071 composeTriggerDefinition("trigger", e); 20072 } 20073 if (element.hasParameter()) { 20074 for (ParameterDefinition e : element.getParameter()) 20075 composeParameterDefinition("parameter", e); 20076 } 20077 if (element.hasDataRequirement()) { 20078 for (DataRequirement e : element.getDataRequirement()) 20079 composeDataRequirement("dataRequirement", e); 20080 } 20081 composeElementClose(element); 20082 xml.exit(FHIR_NS, name); 20083 } 20084 } 20085 20086 protected void composeDetectedIssue(String name, DetectedIssue element) throws IOException { 20087 if (element != null) { 20088 composeDomainResourceAttributes(element); 20089 xml.enter(FHIR_NS, name); 20090 composeDomainResourceElements(element); 20091 if (element.hasPatient()) { 20092 composeReference("patient", element.getPatient()); 20093 } 20094 if (element.hasCategory()) { 20095 composeCodeableConcept("category", element.getCategory()); 20096 } 20097 if (element.hasSeverityElement()) 20098 composeEnumeration("severity", element.getSeverityElement(), new DetectedIssue.DetectedIssueSeverityEnumFactory()); 20099 if (element.hasImplicated()) { 20100 for (Reference e : element.getImplicated()) 20101 composeReference("implicated", e); 20102 } 20103 if (element.hasDetailElement()) { 20104 composeString("detail", element.getDetailElement()); 20105 } 20106 if (element.hasDateElement()) { 20107 composeDateTime("date", element.getDateElement()); 20108 } 20109 if (element.hasAuthor()) { 20110 composeReference("author", element.getAuthor()); 20111 } 20112 if (element.hasIdentifier()) { 20113 composeIdentifier("identifier", element.getIdentifier()); 20114 } 20115 if (element.hasReferenceElement()) { 20116 composeUri("reference", element.getReferenceElement()); 20117 } 20118 if (element.hasMitigation()) { 20119 for (DetectedIssue.DetectedIssueMitigationComponent e : element.getMitigation()) 20120 composeDetectedIssueDetectedIssueMitigationComponent("mitigation", e); 20121 } 20122 composeElementClose(element); 20123 xml.exit(FHIR_NS, name); 20124 } 20125 } 20126 20127 protected void composeDetectedIssueDetectedIssueMitigationComponent(String name, DetectedIssue.DetectedIssueMitigationComponent element) throws IOException { 20128 if (element != null) { 20129 composeElementAttributes(element); 20130 xml.enter(FHIR_NS, name); 20131 composeBackboneElements(element); 20132 if (element.hasAction()) { 20133 composeCodeableConcept("action", element.getAction()); 20134 } 20135 if (element.hasDateElement()) { 20136 composeDateTime("date", element.getDateElement()); 20137 } 20138 if (element.hasAuthor()) { 20139 composeReference("author", element.getAuthor()); 20140 } 20141 composeElementClose(element); 20142 xml.exit(FHIR_NS, name); 20143 } 20144 } 20145 20146 protected void composeDevice(String name, Device element) throws IOException { 20147 if (element != null) { 20148 composeDomainResourceAttributes(element); 20149 xml.enter(FHIR_NS, name); 20150 composeDomainResourceElements(element); 20151 if (element.hasIdentifier()) { 20152 for (Identifier e : element.getIdentifier()) 20153 composeIdentifier("identifier", e); 20154 } 20155 if (element.hasUdiCarrier()) { 20156 composeIdentifier("udiCarrier", element.getUdiCarrier()); 20157 } 20158 if (element.hasStatusElement()) 20159 composeEnumeration("status", element.getStatusElement(), new Device.DeviceStatusEnumFactory()); 20160 if (element.hasType()) { 20161 composeCodeableConcept("type", element.getType()); 20162 } 20163 if (element.hasLotNumberElement()) { 20164 composeString("lotNumber", element.getLotNumberElement()); 20165 } 20166 if (element.hasManufacturerElement()) { 20167 composeString("manufacturer", element.getManufacturerElement()); 20168 } 20169 if (element.hasManufactureDateElement()) { 20170 composeDateTime("manufactureDate", element.getManufactureDateElement()); 20171 } 20172 if (element.hasExpirationDateElement()) { 20173 composeDateTime("expirationDate", element.getExpirationDateElement()); 20174 } 20175 if (element.hasModelElement()) { 20176 composeString("model", element.getModelElement()); 20177 } 20178 if (element.hasVersionElement()) { 20179 composeString("version", element.getVersionElement()); 20180 } 20181 if (element.hasPatient()) { 20182 composeReference("patient", element.getPatient()); 20183 } 20184 if (element.hasOwner()) { 20185 composeReference("owner", element.getOwner()); 20186 } 20187 if (element.hasContact()) { 20188 for (ContactPoint e : element.getContact()) 20189 composeContactPoint("contact", e); 20190 } 20191 if (element.hasLocation()) { 20192 composeReference("location", element.getLocation()); 20193 } 20194 if (element.hasUrlElement()) { 20195 composeUri("url", element.getUrlElement()); 20196 } 20197 if (element.hasNote()) { 20198 for (Annotation e : element.getNote()) 20199 composeAnnotation("note", e); 20200 } 20201 composeElementClose(element); 20202 xml.exit(FHIR_NS, name); 20203 } 20204 } 20205 20206 protected void composeDeviceComponent(String name, DeviceComponent element) throws IOException { 20207 if (element != null) { 20208 composeDomainResourceAttributes(element); 20209 xml.enter(FHIR_NS, name); 20210 composeDomainResourceElements(element); 20211 if (element.hasType()) { 20212 composeCodeableConcept("type", element.getType()); 20213 } 20214 if (element.hasIdentifier()) { 20215 composeIdentifier("identifier", element.getIdentifier()); 20216 } 20217 if (element.hasLastSystemChangeElement()) { 20218 composeInstant("lastSystemChange", element.getLastSystemChangeElement()); 20219 } 20220 if (element.hasSource()) { 20221 composeReference("source", element.getSource()); 20222 } 20223 if (element.hasParent()) { 20224 composeReference("parent", element.getParent()); 20225 } 20226 if (element.hasOperationalStatus()) { 20227 for (CodeableConcept e : element.getOperationalStatus()) 20228 composeCodeableConcept("operationalStatus", e); 20229 } 20230 if (element.hasParameterGroup()) { 20231 composeCodeableConcept("parameterGroup", element.getParameterGroup()); 20232 } 20233 if (element.hasMeasurementPrincipleElement()) 20234 composeEnumeration("measurementPrinciple", element.getMeasurementPrincipleElement(), new DeviceComponent.MeasmntPrincipleEnumFactory()); 20235 if (element.hasProductionSpecification()) { 20236 for (DeviceComponent.DeviceComponentProductionSpecificationComponent e : element.getProductionSpecification()) 20237 composeDeviceComponentDeviceComponentProductionSpecificationComponent("productionSpecification", e); 20238 } 20239 if (element.hasLanguageCode()) { 20240 composeCodeableConcept("languageCode", element.getLanguageCode()); 20241 } 20242 composeElementClose(element); 20243 xml.exit(FHIR_NS, name); 20244 } 20245 } 20246 20247 protected void composeDeviceComponentDeviceComponentProductionSpecificationComponent(String name, DeviceComponent.DeviceComponentProductionSpecificationComponent element) throws IOException { 20248 if (element != null) { 20249 composeElementAttributes(element); 20250 xml.enter(FHIR_NS, name); 20251 composeBackboneElements(element); 20252 if (element.hasSpecType()) { 20253 composeCodeableConcept("specType", element.getSpecType()); 20254 } 20255 if (element.hasComponentId()) { 20256 composeIdentifier("componentId", element.getComponentId()); 20257 } 20258 if (element.hasProductionSpecElement()) { 20259 composeString("productionSpec", element.getProductionSpecElement()); 20260 } 20261 composeElementClose(element); 20262 xml.exit(FHIR_NS, name); 20263 } 20264 } 20265 20266 protected void composeDeviceMetric(String name, DeviceMetric element) throws IOException { 20267 if (element != null) { 20268 composeDomainResourceAttributes(element); 20269 xml.enter(FHIR_NS, name); 20270 composeDomainResourceElements(element); 20271 if (element.hasType()) { 20272 composeCodeableConcept("type", element.getType()); 20273 } 20274 if (element.hasIdentifier()) { 20275 composeIdentifier("identifier", element.getIdentifier()); 20276 } 20277 if (element.hasUnit()) { 20278 composeCodeableConcept("unit", element.getUnit()); 20279 } 20280 if (element.hasSource()) { 20281 composeReference("source", element.getSource()); 20282 } 20283 if (element.hasParent()) { 20284 composeReference("parent", element.getParent()); 20285 } 20286 if (element.hasOperationalStatusElement()) 20287 composeEnumeration("operationalStatus", element.getOperationalStatusElement(), new DeviceMetric.DeviceMetricOperationalStatusEnumFactory()); 20288 if (element.hasColorElement()) 20289 composeEnumeration("color", element.getColorElement(), new DeviceMetric.DeviceMetricColorEnumFactory()); 20290 if (element.hasCategoryElement()) 20291 composeEnumeration("category", element.getCategoryElement(), new DeviceMetric.DeviceMetricCategoryEnumFactory()); 20292 if (element.hasMeasurementPeriod()) { 20293 composeTiming("measurementPeriod", element.getMeasurementPeriod()); 20294 } 20295 if (element.hasCalibration()) { 20296 for (DeviceMetric.DeviceMetricCalibrationComponent e : element.getCalibration()) 20297 composeDeviceMetricDeviceMetricCalibrationComponent("calibration", e); 20298 } 20299 composeElementClose(element); 20300 xml.exit(FHIR_NS, name); 20301 } 20302 } 20303 20304 protected void composeDeviceMetricDeviceMetricCalibrationComponent(String name, DeviceMetric.DeviceMetricCalibrationComponent element) throws IOException { 20305 if (element != null) { 20306 composeElementAttributes(element); 20307 xml.enter(FHIR_NS, name); 20308 composeBackboneElements(element); 20309 if (element.hasTypeElement()) 20310 composeEnumeration("type", element.getTypeElement(), new DeviceMetric.DeviceMetricCalibrationTypeEnumFactory()); 20311 if (element.hasStateElement()) 20312 composeEnumeration("state", element.getStateElement(), new DeviceMetric.DeviceMetricCalibrationStateEnumFactory()); 20313 if (element.hasTimeElement()) { 20314 composeInstant("time", element.getTimeElement()); 20315 } 20316 composeElementClose(element); 20317 xml.exit(FHIR_NS, name); 20318 } 20319 } 20320 20321 protected void composeDeviceUseRequest(String name, DeviceUseRequest element) throws IOException { 20322 if (element != null) { 20323 composeDomainResourceAttributes(element); 20324 xml.enter(FHIR_NS, name); 20325 composeDomainResourceElements(element); 20326 if (element.hasBodySite()) { 20327 composeType("bodySite", element.getBodySite()); 20328 } if (element.hasStatusElement()) 20329 composeEnumeration("status", element.getStatusElement(), new DeviceUseRequest.DeviceUseRequestStatusEnumFactory()); 20330 if (element.hasDevice()) { 20331 composeReference("device", element.getDevice()); 20332 } 20333 if (element.hasEncounter()) { 20334 composeReference("encounter", element.getEncounter()); 20335 } 20336 if (element.hasIdentifier()) { 20337 for (Identifier e : element.getIdentifier()) 20338 composeIdentifier("identifier", e); 20339 } 20340 if (element.hasIndication()) { 20341 for (CodeableConcept e : element.getIndication()) 20342 composeCodeableConcept("indication", e); 20343 } 20344 if (element.hasNotes()) { 20345 for (StringType e : element.getNotes()) 20346 composeString("notes", e); 20347 } 20348 if (element.hasPrnReason()) { 20349 for (CodeableConcept e : element.getPrnReason()) 20350 composeCodeableConcept("prnReason", e); 20351 } 20352 if (element.hasOrderedOnElement()) { 20353 composeDateTime("orderedOn", element.getOrderedOnElement()); 20354 } 20355 if (element.hasRecordedOnElement()) { 20356 composeDateTime("recordedOn", element.getRecordedOnElement()); 20357 } 20358 if (element.hasSubject()) { 20359 composeReference("subject", element.getSubject()); 20360 } 20361 if (element.hasTiming()) { 20362 composeType("timing", element.getTiming()); 20363 } if (element.hasPriorityElement()) 20364 composeEnumeration("priority", element.getPriorityElement(), new DeviceUseRequest.DeviceUseRequestPriorityEnumFactory()); 20365 composeElementClose(element); 20366 xml.exit(FHIR_NS, name); 20367 } 20368 } 20369 20370 protected void composeDeviceUseStatement(String name, DeviceUseStatement element) throws IOException { 20371 if (element != null) { 20372 composeDomainResourceAttributes(element); 20373 xml.enter(FHIR_NS, name); 20374 composeDomainResourceElements(element); 20375 if (element.hasBodySite()) { 20376 composeType("bodySite", element.getBodySite()); 20377 } if (element.hasWhenUsed()) { 20378 composePeriod("whenUsed", element.getWhenUsed()); 20379 } 20380 if (element.hasDevice()) { 20381 composeReference("device", element.getDevice()); 20382 } 20383 if (element.hasIdentifier()) { 20384 for (Identifier e : element.getIdentifier()) 20385 composeIdentifier("identifier", e); 20386 } 20387 if (element.hasIndication()) { 20388 for (CodeableConcept e : element.getIndication()) 20389 composeCodeableConcept("indication", e); 20390 } 20391 if (element.hasNotes()) { 20392 for (StringType e : element.getNotes()) 20393 composeString("notes", e); 20394 } 20395 if (element.hasRecordedOnElement()) { 20396 composeDateTime("recordedOn", element.getRecordedOnElement()); 20397 } 20398 if (element.hasSubject()) { 20399 composeReference("subject", element.getSubject()); 20400 } 20401 if (element.hasTiming()) { 20402 composeType("timing", element.getTiming()); 20403 } composeElementClose(element); 20404 xml.exit(FHIR_NS, name); 20405 } 20406 } 20407 20408 protected void composeDiagnosticOrder(String name, DiagnosticOrder element) throws IOException { 20409 if (element != null) { 20410 composeDomainResourceAttributes(element); 20411 xml.enter(FHIR_NS, name); 20412 composeDomainResourceElements(element); 20413 if (element.hasIdentifier()) { 20414 for (Identifier e : element.getIdentifier()) 20415 composeIdentifier("identifier", e); 20416 } 20417 if (element.hasStatusElement()) 20418 composeEnumeration("status", element.getStatusElement(), new DiagnosticOrder.DiagnosticOrderStatusEnumFactory()); 20419 if (element.hasPriorityElement()) 20420 composeEnumeration("priority", element.getPriorityElement(), new DiagnosticOrder.DiagnosticOrderPriorityEnumFactory()); 20421 if (element.hasSubject()) { 20422 composeReference("subject", element.getSubject()); 20423 } 20424 if (element.hasEncounter()) { 20425 composeReference("encounter", element.getEncounter()); 20426 } 20427 if (element.hasOrderer()) { 20428 composeReference("orderer", element.getOrderer()); 20429 } 20430 if (element.hasReason()) { 20431 for (CodeableConcept e : element.getReason()) 20432 composeCodeableConcept("reason", e); 20433 } 20434 if (element.hasSupportingInformation()) { 20435 for (Reference e : element.getSupportingInformation()) 20436 composeReference("supportingInformation", e); 20437 } 20438 if (element.hasSpecimen()) { 20439 for (Reference e : element.getSpecimen()) 20440 composeReference("specimen", e); 20441 } 20442 if (element.hasEvent()) { 20443 for (DiagnosticOrder.DiagnosticOrderEventComponent e : element.getEvent()) 20444 composeDiagnosticOrderDiagnosticOrderEventComponent("event", e); 20445 } 20446 if (element.hasItem()) { 20447 for (DiagnosticOrder.DiagnosticOrderItemComponent e : element.getItem()) 20448 composeDiagnosticOrderDiagnosticOrderItemComponent("item", e); 20449 } 20450 if (element.hasNote()) { 20451 for (Annotation e : element.getNote()) 20452 composeAnnotation("note", e); 20453 } 20454 composeElementClose(element); 20455 xml.exit(FHIR_NS, name); 20456 } 20457 } 20458 20459 protected void composeDiagnosticOrderDiagnosticOrderEventComponent(String name, DiagnosticOrder.DiagnosticOrderEventComponent element) throws IOException { 20460 if (element != null) { 20461 composeElementAttributes(element); 20462 xml.enter(FHIR_NS, name); 20463 composeBackboneElements(element); 20464 if (element.hasStatusElement()) 20465 composeEnumeration("status", element.getStatusElement(), new DiagnosticOrder.DiagnosticOrderStatusEnumFactory()); 20466 if (element.hasDescription()) { 20467 composeCodeableConcept("description", element.getDescription()); 20468 } 20469 if (element.hasDateTimeElement()) { 20470 composeDateTime("dateTime", element.getDateTimeElement()); 20471 } 20472 if (element.hasActor()) { 20473 composeReference("actor", element.getActor()); 20474 } 20475 composeElementClose(element); 20476 xml.exit(FHIR_NS, name); 20477 } 20478 } 20479 20480 protected void composeDiagnosticOrderDiagnosticOrderItemComponent(String name, DiagnosticOrder.DiagnosticOrderItemComponent element) throws IOException { 20481 if (element != null) { 20482 composeElementAttributes(element); 20483 xml.enter(FHIR_NS, name); 20484 composeBackboneElements(element); 20485 if (element.hasCode()) { 20486 composeCodeableConcept("code", element.getCode()); 20487 } 20488 if (element.hasSpecimen()) { 20489 for (Reference e : element.getSpecimen()) 20490 composeReference("specimen", e); 20491 } 20492 if (element.hasBodySite()) { 20493 composeCodeableConcept("bodySite", element.getBodySite()); 20494 } 20495 if (element.hasStatusElement()) 20496 composeEnumeration("status", element.getStatusElement(), new DiagnosticOrder.DiagnosticOrderStatusEnumFactory()); 20497 if (element.hasEvent()) { 20498 for (DiagnosticOrder.DiagnosticOrderEventComponent e : element.getEvent()) 20499 composeDiagnosticOrderDiagnosticOrderEventComponent("event", e); 20500 } 20501 composeElementClose(element); 20502 xml.exit(FHIR_NS, name); 20503 } 20504 } 20505 20506 protected void composeDiagnosticReport(String name, DiagnosticReport element) throws IOException { 20507 if (element != null) { 20508 composeDomainResourceAttributes(element); 20509 xml.enter(FHIR_NS, name); 20510 composeDomainResourceElements(element); 20511 if (element.hasIdentifier()) { 20512 for (Identifier e : element.getIdentifier()) 20513 composeIdentifier("identifier", e); 20514 } 20515 if (element.hasStatusElement()) 20516 composeEnumeration("status", element.getStatusElement(), new DiagnosticReport.DiagnosticReportStatusEnumFactory()); 20517 if (element.hasCategory()) { 20518 composeCodeableConcept("category", element.getCategory()); 20519 } 20520 if (element.hasCode()) { 20521 composeCodeableConcept("code", element.getCode()); 20522 } 20523 if (element.hasSubject()) { 20524 composeReference("subject", element.getSubject()); 20525 } 20526 if (element.hasEncounter()) { 20527 composeReference("encounter", element.getEncounter()); 20528 } 20529 if (element.hasEffective()) { 20530 composeType("effective", element.getEffective()); 20531 } if (element.hasIssuedElement()) { 20532 composeInstant("issued", element.getIssuedElement()); 20533 } 20534 if (element.hasPerformer()) { 20535 composeReference("performer", element.getPerformer()); 20536 } 20537 if (element.hasRequest()) { 20538 for (Reference e : element.getRequest()) 20539 composeReference("request", e); 20540 } 20541 if (element.hasSpecimen()) { 20542 for (Reference e : element.getSpecimen()) 20543 composeReference("specimen", e); 20544 } 20545 if (element.hasResult()) { 20546 for (Reference e : element.getResult()) 20547 composeReference("result", e); 20548 } 20549 if (element.hasImagingStudy()) { 20550 for (Reference e : element.getImagingStudy()) 20551 composeReference("imagingStudy", e); 20552 } 20553 if (element.hasImage()) { 20554 for (DiagnosticReport.DiagnosticReportImageComponent e : element.getImage()) 20555 composeDiagnosticReportDiagnosticReportImageComponent("image", e); 20556 } 20557 if (element.hasConclusionElement()) { 20558 composeString("conclusion", element.getConclusionElement()); 20559 } 20560 if (element.hasCodedDiagnosis()) { 20561 for (CodeableConcept e : element.getCodedDiagnosis()) 20562 composeCodeableConcept("codedDiagnosis", e); 20563 } 20564 if (element.hasPresentedForm()) { 20565 for (Attachment e : element.getPresentedForm()) 20566 composeAttachment("presentedForm", e); 20567 } 20568 composeElementClose(element); 20569 xml.exit(FHIR_NS, name); 20570 } 20571 } 20572 20573 protected void composeDiagnosticReportDiagnosticReportImageComponent(String name, DiagnosticReport.DiagnosticReportImageComponent element) throws IOException { 20574 if (element != null) { 20575 composeElementAttributes(element); 20576 xml.enter(FHIR_NS, name); 20577 composeBackboneElements(element); 20578 if (element.hasCommentElement()) { 20579 composeString("comment", element.getCommentElement()); 20580 } 20581 if (element.hasLink()) { 20582 composeReference("link", element.getLink()); 20583 } 20584 composeElementClose(element); 20585 xml.exit(FHIR_NS, name); 20586 } 20587 } 20588 20589 protected void composeDocumentManifest(String name, DocumentManifest element) throws IOException { 20590 if (element != null) { 20591 composeDomainResourceAttributes(element); 20592 xml.enter(FHIR_NS, name); 20593 composeDomainResourceElements(element); 20594 if (element.hasMasterIdentifier()) { 20595 composeIdentifier("masterIdentifier", element.getMasterIdentifier()); 20596 } 20597 if (element.hasIdentifier()) { 20598 for (Identifier e : element.getIdentifier()) 20599 composeIdentifier("identifier", e); 20600 } 20601 if (element.hasSubject()) { 20602 composeReference("subject", element.getSubject()); 20603 } 20604 if (element.hasRecipient()) { 20605 for (Reference e : element.getRecipient()) 20606 composeReference("recipient", e); 20607 } 20608 if (element.hasType()) { 20609 composeCodeableConcept("type", element.getType()); 20610 } 20611 if (element.hasAuthor()) { 20612 for (Reference e : element.getAuthor()) 20613 composeReference("author", e); 20614 } 20615 if (element.hasCreatedElement()) { 20616 composeDateTime("created", element.getCreatedElement()); 20617 } 20618 if (element.hasSourceElement()) { 20619 composeUri("source", element.getSourceElement()); 20620 } 20621 if (element.hasStatusElement()) 20622 composeEnumeration("status", element.getStatusElement(), new Enumerations.DocumentReferenceStatusEnumFactory()); 20623 if (element.hasDescriptionElement()) { 20624 composeString("description", element.getDescriptionElement()); 20625 } 20626 if (element.hasContent()) { 20627 for (DocumentManifest.DocumentManifestContentComponent e : element.getContent()) 20628 composeDocumentManifestDocumentManifestContentComponent("content", e); 20629 } 20630 if (element.hasRelated()) { 20631 for (DocumentManifest.DocumentManifestRelatedComponent e : element.getRelated()) 20632 composeDocumentManifestDocumentManifestRelatedComponent("related", e); 20633 } 20634 composeElementClose(element); 20635 xml.exit(FHIR_NS, name); 20636 } 20637 } 20638 20639 protected void composeDocumentManifestDocumentManifestContentComponent(String name, DocumentManifest.DocumentManifestContentComponent element) throws IOException { 20640 if (element != null) { 20641 composeElementAttributes(element); 20642 xml.enter(FHIR_NS, name); 20643 composeBackboneElements(element); 20644 if (element.hasP()) { 20645 composeType("p", element.getP()); 20646 } composeElementClose(element); 20647 xml.exit(FHIR_NS, name); 20648 } 20649 } 20650 20651 protected void composeDocumentManifestDocumentManifestRelatedComponent(String name, DocumentManifest.DocumentManifestRelatedComponent element) throws IOException { 20652 if (element != null) { 20653 composeElementAttributes(element); 20654 xml.enter(FHIR_NS, name); 20655 composeBackboneElements(element); 20656 if (element.hasIdentifier()) { 20657 composeIdentifier("identifier", element.getIdentifier()); 20658 } 20659 if (element.hasRef()) { 20660 composeReference("ref", element.getRef()); 20661 } 20662 composeElementClose(element); 20663 xml.exit(FHIR_NS, name); 20664 } 20665 } 20666 20667 protected void composeDocumentReference(String name, DocumentReference element) throws IOException { 20668 if (element != null) { 20669 composeDomainResourceAttributes(element); 20670 xml.enter(FHIR_NS, name); 20671 composeDomainResourceElements(element); 20672 if (element.hasMasterIdentifier()) { 20673 composeIdentifier("masterIdentifier", element.getMasterIdentifier()); 20674 } 20675 if (element.hasIdentifier()) { 20676 for (Identifier e : element.getIdentifier()) 20677 composeIdentifier("identifier", e); 20678 } 20679 if (element.hasSubject()) { 20680 composeReference("subject", element.getSubject()); 20681 } 20682 if (element.hasType()) { 20683 composeCodeableConcept("type", element.getType()); 20684 } 20685 if (element.hasClass_()) { 20686 composeCodeableConcept("class", element.getClass_()); 20687 } 20688 if (element.hasAuthor()) { 20689 for (Reference e : element.getAuthor()) 20690 composeReference("author", e); 20691 } 20692 if (element.hasCustodian()) { 20693 composeReference("custodian", element.getCustodian()); 20694 } 20695 if (element.hasAuthenticator()) { 20696 composeReference("authenticator", element.getAuthenticator()); 20697 } 20698 if (element.hasCreatedElement()) { 20699 composeDateTime("created", element.getCreatedElement()); 20700 } 20701 if (element.hasIndexedElement()) { 20702 composeInstant("indexed", element.getIndexedElement()); 20703 } 20704 if (element.hasStatusElement()) 20705 composeEnumeration("status", element.getStatusElement(), new Enumerations.DocumentReferenceStatusEnumFactory()); 20706 if (element.hasDocStatus()) { 20707 composeCodeableConcept("docStatus", element.getDocStatus()); 20708 } 20709 if (element.hasRelatesTo()) { 20710 for (DocumentReference.DocumentReferenceRelatesToComponent e : element.getRelatesTo()) 20711 composeDocumentReferenceDocumentReferenceRelatesToComponent("relatesTo", e); 20712 } 20713 if (element.hasDescriptionElement()) { 20714 composeString("description", element.getDescriptionElement()); 20715 } 20716 if (element.hasSecurityLabel()) { 20717 for (CodeableConcept e : element.getSecurityLabel()) 20718 composeCodeableConcept("securityLabel", e); 20719 } 20720 if (element.hasContent()) { 20721 for (DocumentReference.DocumentReferenceContentComponent e : element.getContent()) 20722 composeDocumentReferenceDocumentReferenceContentComponent("content", e); 20723 } 20724 if (element.hasContext()) { 20725 composeDocumentReferenceDocumentReferenceContextComponent("context", element.getContext()); 20726 } 20727 composeElementClose(element); 20728 xml.exit(FHIR_NS, name); 20729 } 20730 } 20731 20732 protected void composeDocumentReferenceDocumentReferenceRelatesToComponent(String name, DocumentReference.DocumentReferenceRelatesToComponent element) throws IOException { 20733 if (element != null) { 20734 composeElementAttributes(element); 20735 xml.enter(FHIR_NS, name); 20736 composeBackboneElements(element); 20737 if (element.hasCodeElement()) 20738 composeEnumeration("code", element.getCodeElement(), new DocumentReference.DocumentRelationshipTypeEnumFactory()); 20739 if (element.hasTarget()) { 20740 composeReference("target", element.getTarget()); 20741 } 20742 composeElementClose(element); 20743 xml.exit(FHIR_NS, name); 20744 } 20745 } 20746 20747 protected void composeDocumentReferenceDocumentReferenceContentComponent(String name, DocumentReference.DocumentReferenceContentComponent element) throws IOException { 20748 if (element != null) { 20749 composeElementAttributes(element); 20750 xml.enter(FHIR_NS, name); 20751 composeBackboneElements(element); 20752 if (element.hasAttachment()) { 20753 composeAttachment("attachment", element.getAttachment()); 20754 } 20755 if (element.hasFormat()) { 20756 for (Coding e : element.getFormat()) 20757 composeCoding("format", e); 20758 } 20759 composeElementClose(element); 20760 xml.exit(FHIR_NS, name); 20761 } 20762 } 20763 20764 protected void composeDocumentReferenceDocumentReferenceContextComponent(String name, DocumentReference.DocumentReferenceContextComponent element) throws IOException { 20765 if (element != null) { 20766 composeElementAttributes(element); 20767 xml.enter(FHIR_NS, name); 20768 composeBackboneElements(element); 20769 if (element.hasEncounter()) { 20770 composeReference("encounter", element.getEncounter()); 20771 } 20772 if (element.hasEvent()) { 20773 for (CodeableConcept e : element.getEvent()) 20774 composeCodeableConcept("event", e); 20775 } 20776 if (element.hasPeriod()) { 20777 composePeriod("period", element.getPeriod()); 20778 } 20779 if (element.hasFacilityType()) { 20780 composeCodeableConcept("facilityType", element.getFacilityType()); 20781 } 20782 if (element.hasPracticeSetting()) { 20783 composeCodeableConcept("practiceSetting", element.getPracticeSetting()); 20784 } 20785 if (element.hasSourcePatientInfo()) { 20786 composeReference("sourcePatientInfo", element.getSourcePatientInfo()); 20787 } 20788 if (element.hasRelated()) { 20789 for (DocumentReference.DocumentReferenceContextRelatedComponent e : element.getRelated()) 20790 composeDocumentReferenceDocumentReferenceContextRelatedComponent("related", e); 20791 } 20792 composeElementClose(element); 20793 xml.exit(FHIR_NS, name); 20794 } 20795 } 20796 20797 protected void composeDocumentReferenceDocumentReferenceContextRelatedComponent(String name, DocumentReference.DocumentReferenceContextRelatedComponent element) throws IOException { 20798 if (element != null) { 20799 composeElementAttributes(element); 20800 xml.enter(FHIR_NS, name); 20801 composeBackboneElements(element); 20802 if (element.hasIdentifier()) { 20803 composeIdentifier("identifier", element.getIdentifier()); 20804 } 20805 if (element.hasRef()) { 20806 composeReference("ref", element.getRef()); 20807 } 20808 composeElementClose(element); 20809 xml.exit(FHIR_NS, name); 20810 } 20811 } 20812 20813 protected void composeEligibilityRequest(String name, EligibilityRequest element) throws IOException { 20814 if (element != null) { 20815 composeDomainResourceAttributes(element); 20816 xml.enter(FHIR_NS, name); 20817 composeDomainResourceElements(element); 20818 if (element.hasIdentifier()) { 20819 for (Identifier e : element.getIdentifier()) 20820 composeIdentifier("identifier", e); 20821 } 20822 if (element.hasRuleset()) { 20823 composeCoding("ruleset", element.getRuleset()); 20824 } 20825 if (element.hasOriginalRuleset()) { 20826 composeCoding("originalRuleset", element.getOriginalRuleset()); 20827 } 20828 if (element.hasCreatedElement()) { 20829 composeDateTime("created", element.getCreatedElement()); 20830 } 20831 if (element.hasTarget()) { 20832 composeType("target", element.getTarget()); 20833 } if (element.hasProvider()) { 20834 composeType("provider", element.getProvider()); 20835 } if (element.hasOrganization()) { 20836 composeType("organization", element.getOrganization()); 20837 } if (element.hasPriority()) { 20838 composeCoding("priority", element.getPriority()); 20839 } 20840 if (element.hasEnterer()) { 20841 composeType("enterer", element.getEnterer()); 20842 } if (element.hasFacility()) { 20843 composeType("facility", element.getFacility()); 20844 } if (element.hasPatient()) { 20845 composeType("patient", element.getPatient()); 20846 } if (element.hasCoverage()) { 20847 composeType("coverage", element.getCoverage()); 20848 } if (element.hasBusinessArrangementElement()) { 20849 composeString("businessArrangement", element.getBusinessArrangementElement()); 20850 } 20851 if (element.hasServiced()) { 20852 composeType("serviced", element.getServiced()); 20853 } if (element.hasBenefitCategory()) { 20854 composeCoding("benefitCategory", element.getBenefitCategory()); 20855 } 20856 if (element.hasBenefitSubCategory()) { 20857 composeCoding("benefitSubCategory", element.getBenefitSubCategory()); 20858 } 20859 composeElementClose(element); 20860 xml.exit(FHIR_NS, name); 20861 } 20862 } 20863 20864 protected void composeEligibilityResponse(String name, EligibilityResponse element) throws IOException { 20865 if (element != null) { 20866 composeDomainResourceAttributes(element); 20867 xml.enter(FHIR_NS, name); 20868 composeDomainResourceElements(element); 20869 if (element.hasIdentifier()) { 20870 for (Identifier e : element.getIdentifier()) 20871 composeIdentifier("identifier", e); 20872 } 20873 if (element.hasRequest()) { 20874 composeType("request", element.getRequest()); 20875 } if (element.hasOutcomeElement()) 20876 composeEnumeration("outcome", element.getOutcomeElement(), new Enumerations.RemittanceOutcomeEnumFactory()); 20877 if (element.hasDispositionElement()) { 20878 composeString("disposition", element.getDispositionElement()); 20879 } 20880 if (element.hasRuleset()) { 20881 composeCoding("ruleset", element.getRuleset()); 20882 } 20883 if (element.hasOriginalRuleset()) { 20884 composeCoding("originalRuleset", element.getOriginalRuleset()); 20885 } 20886 if (element.hasCreatedElement()) { 20887 composeDateTime("created", element.getCreatedElement()); 20888 } 20889 if (element.hasOrganization()) { 20890 composeType("organization", element.getOrganization()); 20891 } if (element.hasRequestProvider()) { 20892 composeType("requestProvider", element.getRequestProvider()); 20893 } if (element.hasRequestOrganization()) { 20894 composeType("requestOrganization", element.getRequestOrganization()); 20895 } if (element.hasInforceElement()) { 20896 composeBoolean("inforce", element.getInforceElement()); 20897 } 20898 if (element.hasContract()) { 20899 composeReference("contract", element.getContract()); 20900 } 20901 if (element.hasForm()) { 20902 composeCoding("form", element.getForm()); 20903 } 20904 if (element.hasBenefitBalance()) { 20905 for (EligibilityResponse.BenefitsComponent e : element.getBenefitBalance()) 20906 composeEligibilityResponseBenefitsComponent("benefitBalance", e); 20907 } 20908 if (element.hasError()) { 20909 for (EligibilityResponse.ErrorsComponent e : element.getError()) 20910 composeEligibilityResponseErrorsComponent("error", e); 20911 } 20912 composeElementClose(element); 20913 xml.exit(FHIR_NS, name); 20914 } 20915 } 20916 20917 protected void composeEligibilityResponseBenefitsComponent(String name, EligibilityResponse.BenefitsComponent element) throws IOException { 20918 if (element != null) { 20919 composeElementAttributes(element); 20920 xml.enter(FHIR_NS, name); 20921 composeBackboneElements(element); 20922 if (element.hasCategory()) { 20923 composeCoding("category", element.getCategory()); 20924 } 20925 if (element.hasSubCategory()) { 20926 composeCoding("subCategory", element.getSubCategory()); 20927 } 20928 if (element.hasNetwork()) { 20929 composeCoding("network", element.getNetwork()); 20930 } 20931 if (element.hasUnit()) { 20932 composeCoding("unit", element.getUnit()); 20933 } 20934 if (element.hasTerm()) { 20935 composeCoding("term", element.getTerm()); 20936 } 20937 if (element.hasFinancial()) { 20938 for (EligibilityResponse.BenefitComponent e : element.getFinancial()) 20939 composeEligibilityResponseBenefitComponent("financial", e); 20940 } 20941 composeElementClose(element); 20942 xml.exit(FHIR_NS, name); 20943 } 20944 } 20945 20946 protected void composeEligibilityResponseBenefitComponent(String name, EligibilityResponse.BenefitComponent element) throws IOException { 20947 if (element != null) { 20948 composeElementAttributes(element); 20949 xml.enter(FHIR_NS, name); 20950 composeBackboneElements(element); 20951 if (element.hasType()) { 20952 composeCoding("type", element.getType()); 20953 } 20954 if (element.hasBenefit()) { 20955 composeType("benefit", element.getBenefit()); 20956 } if (element.hasBenefitUsed()) { 20957 composeType("benefitUsed", element.getBenefitUsed()); 20958 } composeElementClose(element); 20959 xml.exit(FHIR_NS, name); 20960 } 20961 } 20962 20963 protected void composeEligibilityResponseErrorsComponent(String name, EligibilityResponse.ErrorsComponent element) throws IOException { 20964 if (element != null) { 20965 composeElementAttributes(element); 20966 xml.enter(FHIR_NS, name); 20967 composeBackboneElements(element); 20968 if (element.hasCode()) { 20969 composeCoding("code", element.getCode()); 20970 } 20971 composeElementClose(element); 20972 xml.exit(FHIR_NS, name); 20973 } 20974 } 20975 20976 protected void composeEncounter(String name, Encounter element) throws IOException { 20977 if (element != null) { 20978 composeDomainResourceAttributes(element); 20979 xml.enter(FHIR_NS, name); 20980 composeDomainResourceElements(element); 20981 if (element.hasIdentifier()) { 20982 for (Identifier e : element.getIdentifier()) 20983 composeIdentifier("identifier", e); 20984 } 20985 if (element.hasStatusElement()) 20986 composeEnumeration("status", element.getStatusElement(), new Encounter.EncounterStateEnumFactory()); 20987 if (element.hasStatusHistory()) { 20988 for (Encounter.EncounterStatusHistoryComponent e : element.getStatusHistory()) 20989 composeEncounterEncounterStatusHistoryComponent("statusHistory", e); 20990 } 20991 if (element.hasClass_Element()) 20992 composeEnumeration("class", element.getClass_Element(), new Encounter.EncounterClassEnumFactory()); 20993 if (element.hasType()) { 20994 for (CodeableConcept e : element.getType()) 20995 composeCodeableConcept("type", e); 20996 } 20997 if (element.hasPriority()) { 20998 composeCodeableConcept("priority", element.getPriority()); 20999 } 21000 if (element.hasPatient()) { 21001 composeReference("patient", element.getPatient()); 21002 } 21003 if (element.hasEpisodeOfCare()) { 21004 for (Reference e : element.getEpisodeOfCare()) 21005 composeReference("episodeOfCare", e); 21006 } 21007 if (element.hasIncomingReferral()) { 21008 for (Reference e : element.getIncomingReferral()) 21009 composeReference("incomingReferral", e); 21010 } 21011 if (element.hasParticipant()) { 21012 for (Encounter.EncounterParticipantComponent e : element.getParticipant()) 21013 composeEncounterEncounterParticipantComponent("participant", e); 21014 } 21015 if (element.hasAppointment()) { 21016 composeReference("appointment", element.getAppointment()); 21017 } 21018 if (element.hasPeriod()) { 21019 composePeriod("period", element.getPeriod()); 21020 } 21021 if (element.hasLength()) { 21022 composeDuration("length", element.getLength()); 21023 } 21024 if (element.hasReason()) { 21025 for (CodeableConcept e : element.getReason()) 21026 composeCodeableConcept("reason", e); 21027 } 21028 if (element.hasIndication()) { 21029 for (Reference e : element.getIndication()) 21030 composeReference("indication", e); 21031 } 21032 if (element.hasHospitalization()) { 21033 composeEncounterEncounterHospitalizationComponent("hospitalization", element.getHospitalization()); 21034 } 21035 if (element.hasLocation()) { 21036 for (Encounter.EncounterLocationComponent e : element.getLocation()) 21037 composeEncounterEncounterLocationComponent("location", e); 21038 } 21039 if (element.hasServiceProvider()) { 21040 composeReference("serviceProvider", element.getServiceProvider()); 21041 } 21042 if (element.hasPartOf()) { 21043 composeReference("partOf", element.getPartOf()); 21044 } 21045 composeElementClose(element); 21046 xml.exit(FHIR_NS, name); 21047 } 21048 } 21049 21050 protected void composeEncounterEncounterStatusHistoryComponent(String name, Encounter.EncounterStatusHistoryComponent element) throws IOException { 21051 if (element != null) { 21052 composeElementAttributes(element); 21053 xml.enter(FHIR_NS, name); 21054 composeBackboneElements(element); 21055 if (element.hasStatusElement()) 21056 composeEnumeration("status", element.getStatusElement(), new Encounter.EncounterStateEnumFactory()); 21057 if (element.hasPeriod()) { 21058 composePeriod("period", element.getPeriod()); 21059 } 21060 composeElementClose(element); 21061 xml.exit(FHIR_NS, name); 21062 } 21063 } 21064 21065 protected void composeEncounterEncounterParticipantComponent(String name, Encounter.EncounterParticipantComponent element) throws IOException { 21066 if (element != null) { 21067 composeElementAttributes(element); 21068 xml.enter(FHIR_NS, name); 21069 composeBackboneElements(element); 21070 if (element.hasType()) { 21071 for (CodeableConcept e : element.getType()) 21072 composeCodeableConcept("type", e); 21073 } 21074 if (element.hasPeriod()) { 21075 composePeriod("period", element.getPeriod()); 21076 } 21077 if (element.hasIndividual()) { 21078 composeReference("individual", element.getIndividual()); 21079 } 21080 composeElementClose(element); 21081 xml.exit(FHIR_NS, name); 21082 } 21083 } 21084 21085 protected void composeEncounterEncounterHospitalizationComponent(String name, Encounter.EncounterHospitalizationComponent element) throws IOException { 21086 if (element != null) { 21087 composeElementAttributes(element); 21088 xml.enter(FHIR_NS, name); 21089 composeBackboneElements(element); 21090 if (element.hasPreAdmissionIdentifier()) { 21091 composeIdentifier("preAdmissionIdentifier", element.getPreAdmissionIdentifier()); 21092 } 21093 if (element.hasOrigin()) { 21094 composeReference("origin", element.getOrigin()); 21095 } 21096 if (element.hasAdmitSource()) { 21097 composeCodeableConcept("admitSource", element.getAdmitSource()); 21098 } 21099 if (element.hasAdmittingDiagnosis()) { 21100 for (Reference e : element.getAdmittingDiagnosis()) 21101 composeReference("admittingDiagnosis", e); 21102 } 21103 if (element.hasReAdmission()) { 21104 composeCodeableConcept("reAdmission", element.getReAdmission()); 21105 } 21106 if (element.hasDietPreference()) { 21107 for (CodeableConcept e : element.getDietPreference()) 21108 composeCodeableConcept("dietPreference", e); 21109 } 21110 if (element.hasSpecialCourtesy()) { 21111 for (CodeableConcept e : element.getSpecialCourtesy()) 21112 composeCodeableConcept("specialCourtesy", e); 21113 } 21114 if (element.hasSpecialArrangement()) { 21115 for (CodeableConcept e : element.getSpecialArrangement()) 21116 composeCodeableConcept("specialArrangement", e); 21117 } 21118 if (element.hasDestination()) { 21119 composeReference("destination", element.getDestination()); 21120 } 21121 if (element.hasDischargeDisposition()) { 21122 composeCodeableConcept("dischargeDisposition", element.getDischargeDisposition()); 21123 } 21124 if (element.hasDischargeDiagnosis()) { 21125 for (Reference e : element.getDischargeDiagnosis()) 21126 composeReference("dischargeDiagnosis", e); 21127 } 21128 composeElementClose(element); 21129 xml.exit(FHIR_NS, name); 21130 } 21131 } 21132 21133 protected void composeEncounterEncounterLocationComponent(String name, Encounter.EncounterLocationComponent element) throws IOException { 21134 if (element != null) { 21135 composeElementAttributes(element); 21136 xml.enter(FHIR_NS, name); 21137 composeBackboneElements(element); 21138 if (element.hasLocation()) { 21139 composeReference("location", element.getLocation()); 21140 } 21141 if (element.hasStatusElement()) 21142 composeEnumeration("status", element.getStatusElement(), new Encounter.EncounterLocationStatusEnumFactory()); 21143 if (element.hasPeriod()) { 21144 composePeriod("period", element.getPeriod()); 21145 } 21146 composeElementClose(element); 21147 xml.exit(FHIR_NS, name); 21148 } 21149 } 21150 21151 protected void composeEnrollmentRequest(String name, EnrollmentRequest element) throws IOException { 21152 if (element != null) { 21153 composeDomainResourceAttributes(element); 21154 xml.enter(FHIR_NS, name); 21155 composeDomainResourceElements(element); 21156 if (element.hasIdentifier()) { 21157 for (Identifier e : element.getIdentifier()) 21158 composeIdentifier("identifier", e); 21159 } 21160 if (element.hasRuleset()) { 21161 composeCoding("ruleset", element.getRuleset()); 21162 } 21163 if (element.hasOriginalRuleset()) { 21164 composeCoding("originalRuleset", element.getOriginalRuleset()); 21165 } 21166 if (element.hasCreatedElement()) { 21167 composeDateTime("created", element.getCreatedElement()); 21168 } 21169 if (element.hasTarget()) { 21170 composeReference("target", element.getTarget()); 21171 } 21172 if (element.hasProvider()) { 21173 composeReference("provider", element.getProvider()); 21174 } 21175 if (element.hasOrganization()) { 21176 composeReference("organization", element.getOrganization()); 21177 } 21178 if (element.hasSubject()) { 21179 composeReference("subject", element.getSubject()); 21180 } 21181 if (element.hasCoverage()) { 21182 composeReference("coverage", element.getCoverage()); 21183 } 21184 if (element.hasRelationship()) { 21185 composeCoding("relationship", element.getRelationship()); 21186 } 21187 composeElementClose(element); 21188 xml.exit(FHIR_NS, name); 21189 } 21190 } 21191 21192 protected void composeEnrollmentResponse(String name, EnrollmentResponse element) throws IOException { 21193 if (element != null) { 21194 composeDomainResourceAttributes(element); 21195 xml.enter(FHIR_NS, name); 21196 composeDomainResourceElements(element); 21197 if (element.hasIdentifier()) { 21198 for (Identifier e : element.getIdentifier()) 21199 composeIdentifier("identifier", e); 21200 } 21201 if (element.hasRequest()) { 21202 composeReference("request", element.getRequest()); 21203 } 21204 if (element.hasOutcomeElement()) 21205 composeEnumeration("outcome", element.getOutcomeElement(), new Enumerations.RemittanceOutcomeEnumFactory()); 21206 if (element.hasDispositionElement()) { 21207 composeString("disposition", element.getDispositionElement()); 21208 } 21209 if (element.hasRuleset()) { 21210 composeCoding("ruleset", element.getRuleset()); 21211 } 21212 if (element.hasOriginalRuleset()) { 21213 composeCoding("originalRuleset", element.getOriginalRuleset()); 21214 } 21215 if (element.hasCreatedElement()) { 21216 composeDateTime("created", element.getCreatedElement()); 21217 } 21218 if (element.hasOrganization()) { 21219 composeReference("organization", element.getOrganization()); 21220 } 21221 if (element.hasRequestProvider()) { 21222 composeReference("requestProvider", element.getRequestProvider()); 21223 } 21224 if (element.hasRequestOrganization()) { 21225 composeReference("requestOrganization", element.getRequestOrganization()); 21226 } 21227 composeElementClose(element); 21228 xml.exit(FHIR_NS, name); 21229 } 21230 } 21231 21232 protected void composeEpisodeOfCare(String name, EpisodeOfCare element) throws IOException { 21233 if (element != null) { 21234 composeDomainResourceAttributes(element); 21235 xml.enter(FHIR_NS, name); 21236 composeDomainResourceElements(element); 21237 if (element.hasIdentifier()) { 21238 for (Identifier e : element.getIdentifier()) 21239 composeIdentifier("identifier", e); 21240 } 21241 if (element.hasStatusElement()) 21242 composeEnumeration("status", element.getStatusElement(), new EpisodeOfCare.EpisodeOfCareStatusEnumFactory()); 21243 if (element.hasStatusHistory()) { 21244 for (EpisodeOfCare.EpisodeOfCareStatusHistoryComponent e : element.getStatusHistory()) 21245 composeEpisodeOfCareEpisodeOfCareStatusHistoryComponent("statusHistory", e); 21246 } 21247 if (element.hasType()) { 21248 for (CodeableConcept e : element.getType()) 21249 composeCodeableConcept("type", e); 21250 } 21251 if (element.hasCondition()) { 21252 for (Reference e : element.getCondition()) 21253 composeReference("condition", e); 21254 } 21255 if (element.hasPatient()) { 21256 composeReference("patient", element.getPatient()); 21257 } 21258 if (element.hasManagingOrganization()) { 21259 composeReference("managingOrganization", element.getManagingOrganization()); 21260 } 21261 if (element.hasPeriod()) { 21262 composePeriod("period", element.getPeriod()); 21263 } 21264 if (element.hasReferralRequest()) { 21265 for (Reference e : element.getReferralRequest()) 21266 composeReference("referralRequest", e); 21267 } 21268 if (element.hasCareManager()) { 21269 composeReference("careManager", element.getCareManager()); 21270 } 21271 if (element.hasTeam()) { 21272 for (Reference e : element.getTeam()) 21273 composeReference("team", e); 21274 } 21275 composeElementClose(element); 21276 xml.exit(FHIR_NS, name); 21277 } 21278 } 21279 21280 protected void composeEpisodeOfCareEpisodeOfCareStatusHistoryComponent(String name, EpisodeOfCare.EpisodeOfCareStatusHistoryComponent element) throws IOException { 21281 if (element != null) { 21282 composeElementAttributes(element); 21283 xml.enter(FHIR_NS, name); 21284 composeBackboneElements(element); 21285 if (element.hasStatusElement()) 21286 composeEnumeration("status", element.getStatusElement(), new EpisodeOfCare.EpisodeOfCareStatusEnumFactory()); 21287 if (element.hasPeriod()) { 21288 composePeriod("period", element.getPeriod()); 21289 } 21290 composeElementClose(element); 21291 xml.exit(FHIR_NS, name); 21292 } 21293 } 21294 21295 protected void composeExpansionProfile(String name, ExpansionProfile element) throws IOException { 21296 if (element != null) { 21297 composeDomainResourceAttributes(element); 21298 xml.enter(FHIR_NS, name); 21299 composeDomainResourceElements(element); 21300 if (element.hasUrlElement()) { 21301 composeUri("url", element.getUrlElement()); 21302 } 21303 if (element.hasIdentifier()) { 21304 composeIdentifier("identifier", element.getIdentifier()); 21305 } 21306 if (element.hasVersionElement()) { 21307 composeString("version", element.getVersionElement()); 21308 } 21309 if (element.hasNameElement()) { 21310 composeString("name", element.getNameElement()); 21311 } 21312 if (element.hasStatusElement()) 21313 composeEnumeration("status", element.getStatusElement(), new Enumerations.ConformanceResourceStatusEnumFactory()); 21314 if (element.hasExperimentalElement()) { 21315 composeBoolean("experimental", element.getExperimentalElement()); 21316 } 21317 if (element.hasPublisherElement()) { 21318 composeString("publisher", element.getPublisherElement()); 21319 } 21320 if (element.hasContact()) { 21321 for (ExpansionProfile.ExpansionProfileContactComponent e : element.getContact()) 21322 composeExpansionProfileExpansionProfileContactComponent("contact", e); 21323 } 21324 if (element.hasDateElement()) { 21325 composeDateTime("date", element.getDateElement()); 21326 } 21327 if (element.hasDescriptionElement()) { 21328 composeString("description", element.getDescriptionElement()); 21329 } 21330 if (element.hasCodeSystem()) { 21331 composeExpansionProfileExpansionProfileCodeSystemComponent("codeSystem", element.getCodeSystem()); 21332 } 21333 if (element.hasIncludeDesignationsElement()) { 21334 composeBoolean("includeDesignations", element.getIncludeDesignationsElement()); 21335 } 21336 if (element.hasDesignation()) { 21337 composeExpansionProfileExpansionProfileDesignationComponent("designation", element.getDesignation()); 21338 } 21339 if (element.hasIncludeDefinitionElement()) { 21340 composeBoolean("includeDefinition", element.getIncludeDefinitionElement()); 21341 } 21342 if (element.hasIncludeInactiveElement()) { 21343 composeBoolean("includeInactive", element.getIncludeInactiveElement()); 21344 } 21345 if (element.hasExcludeNestedElement()) { 21346 composeBoolean("excludeNested", element.getExcludeNestedElement()); 21347 } 21348 if (element.hasExcludeNotForUIElement()) { 21349 composeBoolean("excludeNotForUI", element.getExcludeNotForUIElement()); 21350 } 21351 if (element.hasExcludePostCoordinatedElement()) { 21352 composeBoolean("excludePostCoordinated", element.getExcludePostCoordinatedElement()); 21353 } 21354 if (element.hasDisplayLanguageElement()) { 21355 composeCode("displayLanguage", element.getDisplayLanguageElement()); 21356 } 21357 if (element.hasLimitedExpansionElement()) { 21358 composeBoolean("limitedExpansion", element.getLimitedExpansionElement()); 21359 } 21360 composeElementClose(element); 21361 xml.exit(FHIR_NS, name); 21362 } 21363 } 21364 21365 protected void composeExpansionProfileExpansionProfileContactComponent(String name, ExpansionProfile.ExpansionProfileContactComponent element) throws IOException { 21366 if (element != null) { 21367 composeElementAttributes(element); 21368 xml.enter(FHIR_NS, name); 21369 composeBackboneElements(element); 21370 if (element.hasNameElement()) { 21371 composeString("name", element.getNameElement()); 21372 } 21373 if (element.hasTelecom()) { 21374 for (ContactPoint e : element.getTelecom()) 21375 composeContactPoint("telecom", e); 21376 } 21377 composeElementClose(element); 21378 xml.exit(FHIR_NS, name); 21379 } 21380 } 21381 21382 protected void composeExpansionProfileExpansionProfileCodeSystemComponent(String name, ExpansionProfile.ExpansionProfileCodeSystemComponent element) throws IOException { 21383 if (element != null) { 21384 composeElementAttributes(element); 21385 xml.enter(FHIR_NS, name); 21386 composeBackboneElements(element); 21387 if (element.hasInclude()) { 21388 composeExpansionProfileCodeSystemIncludeComponent("include", element.getInclude()); 21389 } 21390 if (element.hasExclude()) { 21391 composeExpansionProfileCodeSystemExcludeComponent("exclude", element.getExclude()); 21392 } 21393 composeElementClose(element); 21394 xml.exit(FHIR_NS, name); 21395 } 21396 } 21397 21398 protected void composeExpansionProfileCodeSystemIncludeComponent(String name, ExpansionProfile.CodeSystemIncludeComponent element) throws IOException { 21399 if (element != null) { 21400 composeElementAttributes(element); 21401 xml.enter(FHIR_NS, name); 21402 composeBackboneElements(element); 21403 if (element.hasCodeSystem()) { 21404 for (ExpansionProfile.CodeSystemIncludeCodeSystemComponent e : element.getCodeSystem()) 21405 composeExpansionProfileCodeSystemIncludeCodeSystemComponent("codeSystem", e); 21406 } 21407 composeElementClose(element); 21408 xml.exit(FHIR_NS, name); 21409 } 21410 } 21411 21412 protected void composeExpansionProfileCodeSystemIncludeCodeSystemComponent(String name, ExpansionProfile.CodeSystemIncludeCodeSystemComponent element) throws IOException { 21413 if (element != null) { 21414 composeElementAttributes(element); 21415 xml.enter(FHIR_NS, name); 21416 composeBackboneElements(element); 21417 if (element.hasSystemElement()) { 21418 composeUri("system", element.getSystemElement()); 21419 } 21420 if (element.hasVersionElement()) { 21421 composeString("version", element.getVersionElement()); 21422 } 21423 composeElementClose(element); 21424 xml.exit(FHIR_NS, name); 21425 } 21426 } 21427 21428 protected void composeExpansionProfileCodeSystemExcludeComponent(String name, ExpansionProfile.CodeSystemExcludeComponent element) throws IOException { 21429 if (element != null) { 21430 composeElementAttributes(element); 21431 xml.enter(FHIR_NS, name); 21432 composeBackboneElements(element); 21433 if (element.hasCodeSystem()) { 21434 for (ExpansionProfile.CodeSystemExcludeCodeSystemComponent e : element.getCodeSystem()) 21435 composeExpansionProfileCodeSystemExcludeCodeSystemComponent("codeSystem", e); 21436 } 21437 composeElementClose(element); 21438 xml.exit(FHIR_NS, name); 21439 } 21440 } 21441 21442 protected void composeExpansionProfileCodeSystemExcludeCodeSystemComponent(String name, ExpansionProfile.CodeSystemExcludeCodeSystemComponent element) throws IOException { 21443 if (element != null) { 21444 composeElementAttributes(element); 21445 xml.enter(FHIR_NS, name); 21446 composeBackboneElements(element); 21447 if (element.hasSystemElement()) { 21448 composeUri("system", element.getSystemElement()); 21449 } 21450 if (element.hasVersionElement()) { 21451 composeString("version", element.getVersionElement()); 21452 } 21453 composeElementClose(element); 21454 xml.exit(FHIR_NS, name); 21455 } 21456 } 21457 21458 protected void composeExpansionProfileExpansionProfileDesignationComponent(String name, ExpansionProfile.ExpansionProfileDesignationComponent element) throws IOException { 21459 if (element != null) { 21460 composeElementAttributes(element); 21461 xml.enter(FHIR_NS, name); 21462 composeBackboneElements(element); 21463 if (element.hasInclude()) { 21464 composeExpansionProfileDesignationIncludeComponent("include", element.getInclude()); 21465 } 21466 if (element.hasExclude()) { 21467 composeExpansionProfileDesignationExcludeComponent("exclude", element.getExclude()); 21468 } 21469 composeElementClose(element); 21470 xml.exit(FHIR_NS, name); 21471 } 21472 } 21473 21474 protected void composeExpansionProfileDesignationIncludeComponent(String name, ExpansionProfile.DesignationIncludeComponent element) throws IOException { 21475 if (element != null) { 21476 composeElementAttributes(element); 21477 xml.enter(FHIR_NS, name); 21478 composeBackboneElements(element); 21479 if (element.hasDesignation()) { 21480 for (ExpansionProfile.DesignationIncludeDesignationComponent e : element.getDesignation()) 21481 composeExpansionProfileDesignationIncludeDesignationComponent("designation", e); 21482 } 21483 composeElementClose(element); 21484 xml.exit(FHIR_NS, name); 21485 } 21486 } 21487 21488 protected void composeExpansionProfileDesignationIncludeDesignationComponent(String name, ExpansionProfile.DesignationIncludeDesignationComponent element) throws IOException { 21489 if (element != null) { 21490 composeElementAttributes(element); 21491 xml.enter(FHIR_NS, name); 21492 composeBackboneElements(element); 21493 if (element.hasLanguageElement()) { 21494 composeCode("language", element.getLanguageElement()); 21495 } 21496 if (element.hasUse()) { 21497 composeCoding("use", element.getUse()); 21498 } 21499 composeElementClose(element); 21500 xml.exit(FHIR_NS, name); 21501 } 21502 } 21503 21504 protected void composeExpansionProfileDesignationExcludeComponent(String name, ExpansionProfile.DesignationExcludeComponent element) throws IOException { 21505 if (element != null) { 21506 composeElementAttributes(element); 21507 xml.enter(FHIR_NS, name); 21508 composeBackboneElements(element); 21509 if (element.hasDesignation()) { 21510 for (ExpansionProfile.DesignationExcludeDesignationComponent e : element.getDesignation()) 21511 composeExpansionProfileDesignationExcludeDesignationComponent("designation", e); 21512 } 21513 composeElementClose(element); 21514 xml.exit(FHIR_NS, name); 21515 } 21516 } 21517 21518 protected void composeExpansionProfileDesignationExcludeDesignationComponent(String name, ExpansionProfile.DesignationExcludeDesignationComponent element) throws IOException { 21519 if (element != null) { 21520 composeElementAttributes(element); 21521 xml.enter(FHIR_NS, name); 21522 composeBackboneElements(element); 21523 if (element.hasLanguageElement()) { 21524 composeCode("language", element.getLanguageElement()); 21525 } 21526 if (element.hasUse()) { 21527 composeCoding("use", element.getUse()); 21528 } 21529 composeElementClose(element); 21530 xml.exit(FHIR_NS, name); 21531 } 21532 } 21533 21534 protected void composeExplanationOfBenefit(String name, ExplanationOfBenefit element) throws IOException { 21535 if (element != null) { 21536 composeDomainResourceAttributes(element); 21537 xml.enter(FHIR_NS, name); 21538 composeDomainResourceElements(element); 21539 if (element.hasIdentifier()) { 21540 for (Identifier e : element.getIdentifier()) 21541 composeIdentifier("identifier", e); 21542 } 21543 if (element.hasClaim()) { 21544 composeType("claim", element.getClaim()); 21545 } if (element.hasClaimResponse()) { 21546 composeType("claimResponse", element.getClaimResponse()); 21547 } if (element.hasSubType()) { 21548 for (Coding e : element.getSubType()) 21549 composeCoding("subType", e); 21550 } 21551 if (element.hasRuleset()) { 21552 composeCoding("ruleset", element.getRuleset()); 21553 } 21554 if (element.hasOriginalRuleset()) { 21555 composeCoding("originalRuleset", element.getOriginalRuleset()); 21556 } 21557 if (element.hasCreatedElement()) { 21558 composeDateTime("created", element.getCreatedElement()); 21559 } 21560 if (element.hasBillablePeriod()) { 21561 composePeriod("billablePeriod", element.getBillablePeriod()); 21562 } 21563 if (element.hasDispositionElement()) { 21564 composeString("disposition", element.getDispositionElement()); 21565 } 21566 if (element.hasProvider()) { 21567 composeType("provider", element.getProvider()); 21568 } if (element.hasOrganization()) { 21569 composeType("organization", element.getOrganization()); 21570 } if (element.hasFacility()) { 21571 composeType("facility", element.getFacility()); 21572 } if (element.hasRelated()) { 21573 for (ExplanationOfBenefit.RelatedClaimsComponent e : element.getRelated()) 21574 composeExplanationOfBenefitRelatedClaimsComponent("related", e); 21575 } 21576 if (element.hasPrescription()) { 21577 composeType("prescription", element.getPrescription()); 21578 } if (element.hasOriginalPrescription()) { 21579 composeType("originalPrescription", element.getOriginalPrescription()); 21580 } if (element.hasPayee()) { 21581 composeExplanationOfBenefitPayeeComponent("payee", element.getPayee()); 21582 } 21583 if (element.hasReferral()) { 21584 composeType("referral", element.getReferral()); 21585 } if (element.hasOccurrenceCode()) { 21586 for (Coding e : element.getOccurrenceCode()) 21587 composeCoding("occurrenceCode", e); 21588 } 21589 if (element.hasOccurenceSpanCode()) { 21590 for (Coding e : element.getOccurenceSpanCode()) 21591 composeCoding("occurenceSpanCode", e); 21592 } 21593 if (element.hasValueCode()) { 21594 for (Coding e : element.getValueCode()) 21595 composeCoding("valueCode", e); 21596 } 21597 if (element.hasDiagnosis()) { 21598 for (ExplanationOfBenefit.DiagnosisComponent e : element.getDiagnosis()) 21599 composeExplanationOfBenefitDiagnosisComponent("diagnosis", e); 21600 } 21601 if (element.hasProcedure()) { 21602 for (ExplanationOfBenefit.ProcedureComponent e : element.getProcedure()) 21603 composeExplanationOfBenefitProcedureComponent("procedure", e); 21604 } 21605 if (element.hasSpecialCondition()) { 21606 for (Coding e : element.getSpecialCondition()) 21607 composeCoding("specialCondition", e); 21608 } 21609 if (element.hasPatient()) { 21610 composeType("patient", element.getPatient()); 21611 } if (element.hasPrecedenceElement()) { 21612 composePositiveInt("precedence", element.getPrecedenceElement()); 21613 } 21614 if (element.hasCoverage()) { 21615 composeExplanationOfBenefitCoverageComponent("coverage", element.getCoverage()); 21616 } 21617 if (element.hasAccidentDateElement()) { 21618 composeDate("accidentDate", element.getAccidentDateElement()); 21619 } 21620 if (element.hasAccidentType()) { 21621 composeCoding("accidentType", element.getAccidentType()); 21622 } 21623 if (element.hasAccidentLocation()) { 21624 composeType("accidentLocation", element.getAccidentLocation()); 21625 } if (element.hasInterventionException()) { 21626 for (Coding e : element.getInterventionException()) 21627 composeCoding("interventionException", e); 21628 } 21629 if (element.hasOnset()) { 21630 for (ExplanationOfBenefit.OnsetComponent e : element.getOnset()) 21631 composeExplanationOfBenefitOnsetComponent("onset", e); 21632 } 21633 if (element.hasEmploymentImpacted()) { 21634 composePeriod("employmentImpacted", element.getEmploymentImpacted()); 21635 } 21636 if (element.hasHospitalization()) { 21637 composePeriod("hospitalization", element.getHospitalization()); 21638 } 21639 if (element.hasItem()) { 21640 for (ExplanationOfBenefit.ItemsComponent e : element.getItem()) 21641 composeExplanationOfBenefitItemsComponent("item", e); 21642 } 21643 if (element.hasAddItem()) { 21644 for (ExplanationOfBenefit.AddedItemComponent e : element.getAddItem()) 21645 composeExplanationOfBenefitAddedItemComponent("addItem", e); 21646 } 21647 if (element.hasMissingTeeth()) { 21648 for (ExplanationOfBenefit.MissingTeethComponent e : element.getMissingTeeth()) 21649 composeExplanationOfBenefitMissingTeethComponent("missingTeeth", e); 21650 } 21651 if (element.hasTotalCost()) { 21652 composeMoney("totalCost", element.getTotalCost()); 21653 } 21654 if (element.hasUnallocDeductable()) { 21655 composeMoney("unallocDeductable", element.getUnallocDeductable()); 21656 } 21657 if (element.hasTotalBenefit()) { 21658 composeMoney("totalBenefit", element.getTotalBenefit()); 21659 } 21660 if (element.hasPaymentAdjustment()) { 21661 composeMoney("paymentAdjustment", element.getPaymentAdjustment()); 21662 } 21663 if (element.hasPaymentAdjustmentReason()) { 21664 composeCoding("paymentAdjustmentReason", element.getPaymentAdjustmentReason()); 21665 } 21666 if (element.hasPaymentDateElement()) { 21667 composeDate("paymentDate", element.getPaymentDateElement()); 21668 } 21669 if (element.hasPaymentAmount()) { 21670 composeMoney("paymentAmount", element.getPaymentAmount()); 21671 } 21672 if (element.hasPaymentRef()) { 21673 composeIdentifier("paymentRef", element.getPaymentRef()); 21674 } 21675 if (element.hasReserved()) { 21676 composeCoding("reserved", element.getReserved()); 21677 } 21678 if (element.hasForm()) { 21679 composeCoding("form", element.getForm()); 21680 } 21681 if (element.hasNote()) { 21682 for (ExplanationOfBenefit.NotesComponent e : element.getNote()) 21683 composeExplanationOfBenefitNotesComponent("note", e); 21684 } 21685 if (element.hasBenefitBalance()) { 21686 for (ExplanationOfBenefit.BenefitBalanceComponent e : element.getBenefitBalance()) 21687 composeExplanationOfBenefitBenefitBalanceComponent("benefitBalance", e); 21688 } 21689 composeElementClose(element); 21690 xml.exit(FHIR_NS, name); 21691 } 21692 } 21693 21694 protected void composeExplanationOfBenefitRelatedClaimsComponent(String name, ExplanationOfBenefit.RelatedClaimsComponent element) throws IOException { 21695 if (element != null) { 21696 composeElementAttributes(element); 21697 xml.enter(FHIR_NS, name); 21698 composeBackboneElements(element); 21699 if (element.hasClaim()) { 21700 composeType("claim", element.getClaim()); 21701 } if (element.hasRelationship()) { 21702 composeCoding("relationship", element.getRelationship()); 21703 } 21704 if (element.hasReference()) { 21705 composeIdentifier("reference", element.getReference()); 21706 } 21707 composeElementClose(element); 21708 xml.exit(FHIR_NS, name); 21709 } 21710 } 21711 21712 protected void composeExplanationOfBenefitPayeeComponent(String name, ExplanationOfBenefit.PayeeComponent element) throws IOException { 21713 if (element != null) { 21714 composeElementAttributes(element); 21715 xml.enter(FHIR_NS, name); 21716 composeBackboneElements(element); 21717 if (element.hasType()) { 21718 composeCoding("type", element.getType()); 21719 } 21720 if (element.hasParty()) { 21721 composeType("party", element.getParty()); 21722 } composeElementClose(element); 21723 xml.exit(FHIR_NS, name); 21724 } 21725 } 21726 21727 protected void composeExplanationOfBenefitDiagnosisComponent(String name, ExplanationOfBenefit.DiagnosisComponent element) throws IOException { 21728 if (element != null) { 21729 composeElementAttributes(element); 21730 xml.enter(FHIR_NS, name); 21731 composeBackboneElements(element); 21732 if (element.hasSequenceElement()) { 21733 composePositiveInt("sequence", element.getSequenceElement()); 21734 } 21735 if (element.hasDiagnosis()) { 21736 composeCoding("diagnosis", element.getDiagnosis()); 21737 } 21738 composeElementClose(element); 21739 xml.exit(FHIR_NS, name); 21740 } 21741 } 21742 21743 protected void composeExplanationOfBenefitProcedureComponent(String name, ExplanationOfBenefit.ProcedureComponent element) throws IOException { 21744 if (element != null) { 21745 composeElementAttributes(element); 21746 xml.enter(FHIR_NS, name); 21747 composeBackboneElements(element); 21748 if (element.hasSequenceElement()) { 21749 composePositiveInt("sequence", element.getSequenceElement()); 21750 } 21751 if (element.hasDateElement()) { 21752 composeDateTime("date", element.getDateElement()); 21753 } 21754 if (element.hasProcedure()) { 21755 composeType("procedure", element.getProcedure()); 21756 } composeElementClose(element); 21757 xml.exit(FHIR_NS, name); 21758 } 21759 } 21760 21761 protected void composeExplanationOfBenefitCoverageComponent(String name, ExplanationOfBenefit.CoverageComponent element) throws IOException { 21762 if (element != null) { 21763 composeElementAttributes(element); 21764 xml.enter(FHIR_NS, name); 21765 composeBackboneElements(element); 21766 if (element.hasCoverage()) { 21767 composeType("coverage", element.getCoverage()); 21768 } if (element.hasPreAuthRef()) { 21769 for (StringType e : element.getPreAuthRef()) 21770 composeString("preAuthRef", e); 21771 } 21772 composeElementClose(element); 21773 xml.exit(FHIR_NS, name); 21774 } 21775 } 21776 21777 protected void composeExplanationOfBenefitOnsetComponent(String name, ExplanationOfBenefit.OnsetComponent element) throws IOException { 21778 if (element != null) { 21779 composeElementAttributes(element); 21780 xml.enter(FHIR_NS, name); 21781 composeBackboneElements(element); 21782 if (element.hasTime()) { 21783 composeType("time", element.getTime()); 21784 } if (element.hasType()) { 21785 composeCoding("type", element.getType()); 21786 } 21787 composeElementClose(element); 21788 xml.exit(FHIR_NS, name); 21789 } 21790 } 21791 21792 protected void composeExplanationOfBenefitItemsComponent(String name, ExplanationOfBenefit.ItemsComponent element) throws IOException { 21793 if (element != null) { 21794 composeElementAttributes(element); 21795 xml.enter(FHIR_NS, name); 21796 composeBackboneElements(element); 21797 if (element.hasSequenceElement()) { 21798 composePositiveInt("sequence", element.getSequenceElement()); 21799 } 21800 if (element.hasType()) { 21801 composeCoding("type", element.getType()); 21802 } 21803 if (element.hasProvider()) { 21804 composeType("provider", element.getProvider()); 21805 } if (element.hasSupervisor()) { 21806 composeType("supervisor", element.getSupervisor()); 21807 } if (element.hasProviderQualification()) { 21808 composeCoding("providerQualification", element.getProviderQualification()); 21809 } 21810 if (element.hasDiagnosisLinkId()) { 21811 for (PositiveIntType e : element.getDiagnosisLinkId()) 21812 composePositiveInt("diagnosisLinkId", e); 21813 } 21814 if (element.hasService()) { 21815 composeCoding("service", element.getService()); 21816 } 21817 if (element.hasServiceModifier()) { 21818 for (Coding e : element.getServiceModifier()) 21819 composeCoding("serviceModifier", e); 21820 } 21821 if (element.hasModifier()) { 21822 for (Coding e : element.getModifier()) 21823 composeCoding("modifier", e); 21824 } 21825 if (element.hasProgramCode()) { 21826 for (Coding e : element.getProgramCode()) 21827 composeCoding("programCode", e); 21828 } 21829 if (element.hasServiced()) { 21830 composeType("serviced", element.getServiced()); 21831 } if (element.hasPlace()) { 21832 composeCoding("place", element.getPlace()); 21833 } 21834 if (element.hasQuantity()) { 21835 composeSimpleQuantity("quantity", element.getQuantity()); 21836 } 21837 if (element.hasUnitPrice()) { 21838 composeMoney("unitPrice", element.getUnitPrice()); 21839 } 21840 if (element.hasFactorElement()) { 21841 composeDecimal("factor", element.getFactorElement()); 21842 } 21843 if (element.hasPointsElement()) { 21844 composeDecimal("points", element.getPointsElement()); 21845 } 21846 if (element.hasNet()) { 21847 composeMoney("net", element.getNet()); 21848 } 21849 if (element.hasUdi()) { 21850 for (Reference e : element.getUdi()) 21851 composeReference("udi", e); 21852 } 21853 if (element.hasBodySite()) { 21854 composeCoding("bodySite", element.getBodySite()); 21855 } 21856 if (element.hasSubSite()) { 21857 for (Coding e : element.getSubSite()) 21858 composeCoding("subSite", e); 21859 } 21860 if (element.hasNoteNumber()) { 21861 for (PositiveIntType e : element.getNoteNumber()) 21862 composePositiveInt("noteNumber", e); 21863 } 21864 if (element.hasAdjudication()) { 21865 for (ExplanationOfBenefit.ItemAdjudicationComponent e : element.getAdjudication()) 21866 composeExplanationOfBenefitItemAdjudicationComponent("adjudication", e); 21867 } 21868 if (element.hasDetail()) { 21869 for (ExplanationOfBenefit.DetailComponent e : element.getDetail()) 21870 composeExplanationOfBenefitDetailComponent("detail", e); 21871 } 21872 if (element.hasProsthesis()) { 21873 composeExplanationOfBenefitProsthesisComponent("prosthesis", element.getProsthesis()); 21874 } 21875 composeElementClose(element); 21876 xml.exit(FHIR_NS, name); 21877 } 21878 } 21879 21880 protected void composeExplanationOfBenefitItemAdjudicationComponent(String name, ExplanationOfBenefit.ItemAdjudicationComponent element) throws IOException { 21881 if (element != null) { 21882 composeElementAttributes(element); 21883 xml.enter(FHIR_NS, name); 21884 composeBackboneElements(element); 21885 if (element.hasCategory()) { 21886 composeCoding("category", element.getCategory()); 21887 } 21888 if (element.hasReason()) { 21889 composeCoding("reason", element.getReason()); 21890 } 21891 if (element.hasAmount()) { 21892 composeMoney("amount", element.getAmount()); 21893 } 21894 if (element.hasValueElement()) { 21895 composeDecimal("value", element.getValueElement()); 21896 } 21897 composeElementClose(element); 21898 xml.exit(FHIR_NS, name); 21899 } 21900 } 21901 21902 protected void composeExplanationOfBenefitDetailComponent(String name, ExplanationOfBenefit.DetailComponent element) throws IOException { 21903 if (element != null) { 21904 composeElementAttributes(element); 21905 xml.enter(FHIR_NS, name); 21906 composeBackboneElements(element); 21907 if (element.hasSequenceElement()) { 21908 composePositiveInt("sequence", element.getSequenceElement()); 21909 } 21910 if (element.hasType()) { 21911 composeCoding("type", element.getType()); 21912 } 21913 if (element.hasService()) { 21914 composeCoding("service", element.getService()); 21915 } 21916 if (element.hasProgramCode()) { 21917 for (Coding e : element.getProgramCode()) 21918 composeCoding("programCode", e); 21919 } 21920 if (element.hasQuantity()) { 21921 composeSimpleQuantity("quantity", element.getQuantity()); 21922 } 21923 if (element.hasUnitPrice()) { 21924 composeMoney("unitPrice", element.getUnitPrice()); 21925 } 21926 if (element.hasFactorElement()) { 21927 composeDecimal("factor", element.getFactorElement()); 21928 } 21929 if (element.hasPointsElement()) { 21930 composeDecimal("points", element.getPointsElement()); 21931 } 21932 if (element.hasNet()) { 21933 composeMoney("net", element.getNet()); 21934 } 21935 if (element.hasUdi()) { 21936 for (Reference e : element.getUdi()) 21937 composeReference("udi", e); 21938 } 21939 if (element.hasAdjudication()) { 21940 for (ExplanationOfBenefit.DetailAdjudicationComponent e : element.getAdjudication()) 21941 composeExplanationOfBenefitDetailAdjudicationComponent("adjudication", e); 21942 } 21943 if (element.hasSubDetail()) { 21944 for (ExplanationOfBenefit.SubDetailComponent e : element.getSubDetail()) 21945 composeExplanationOfBenefitSubDetailComponent("subDetail", e); 21946 } 21947 composeElementClose(element); 21948 xml.exit(FHIR_NS, name); 21949 } 21950 } 21951 21952 protected void composeExplanationOfBenefitDetailAdjudicationComponent(String name, ExplanationOfBenefit.DetailAdjudicationComponent element) throws IOException { 21953 if (element != null) { 21954 composeElementAttributes(element); 21955 xml.enter(FHIR_NS, name); 21956 composeBackboneElements(element); 21957 if (element.hasCategory()) { 21958 composeCoding("category", element.getCategory()); 21959 } 21960 if (element.hasReason()) { 21961 composeCoding("reason", element.getReason()); 21962 } 21963 if (element.hasAmount()) { 21964 composeMoney("amount", element.getAmount()); 21965 } 21966 if (element.hasValueElement()) { 21967 composeDecimal("value", element.getValueElement()); 21968 } 21969 composeElementClose(element); 21970 xml.exit(FHIR_NS, name); 21971 } 21972 } 21973 21974 protected void composeExplanationOfBenefitSubDetailComponent(String name, ExplanationOfBenefit.SubDetailComponent element) throws IOException { 21975 if (element != null) { 21976 composeElementAttributes(element); 21977 xml.enter(FHIR_NS, name); 21978 composeBackboneElements(element); 21979 if (element.hasSequenceElement()) { 21980 composePositiveInt("sequence", element.getSequenceElement()); 21981 } 21982 if (element.hasType()) { 21983 composeCoding("type", element.getType()); 21984 } 21985 if (element.hasService()) { 21986 composeCoding("service", element.getService()); 21987 } 21988 if (element.hasProgramCode()) { 21989 for (Coding e : element.getProgramCode()) 21990 composeCoding("programCode", e); 21991 } 21992 if (element.hasQuantity()) { 21993 composeSimpleQuantity("quantity", element.getQuantity()); 21994 } 21995 if (element.hasUnitPrice()) { 21996 composeMoney("unitPrice", element.getUnitPrice()); 21997 } 21998 if (element.hasFactorElement()) { 21999 composeDecimal("factor", element.getFactorElement()); 22000 } 22001 if (element.hasPointsElement()) { 22002 composeDecimal("points", element.getPointsElement()); 22003 } 22004 if (element.hasNet()) { 22005 composeMoney("net", element.getNet()); 22006 } 22007 if (element.hasUdi()) { 22008 for (Reference e : element.getUdi()) 22009 composeReference("udi", e); 22010 } 22011 if (element.hasAdjudication()) { 22012 for (ExplanationOfBenefit.SubDetailAdjudicationComponent e : element.getAdjudication()) 22013 composeExplanationOfBenefitSubDetailAdjudicationComponent("adjudication", e); 22014 } 22015 composeElementClose(element); 22016 xml.exit(FHIR_NS, name); 22017 } 22018 } 22019 22020 protected void composeExplanationOfBenefitSubDetailAdjudicationComponent(String name, ExplanationOfBenefit.SubDetailAdjudicationComponent element) throws IOException { 22021 if (element != null) { 22022 composeElementAttributes(element); 22023 xml.enter(FHIR_NS, name); 22024 composeBackboneElements(element); 22025 if (element.hasCategory()) { 22026 composeCoding("category", element.getCategory()); 22027 } 22028 if (element.hasReason()) { 22029 composeCoding("reason", element.getReason()); 22030 } 22031 if (element.hasAmount()) { 22032 composeMoney("amount", element.getAmount()); 22033 } 22034 if (element.hasValueElement()) { 22035 composeDecimal("value", element.getValueElement()); 22036 } 22037 composeElementClose(element); 22038 xml.exit(FHIR_NS, name); 22039 } 22040 } 22041 22042 protected void composeExplanationOfBenefitProsthesisComponent(String name, ExplanationOfBenefit.ProsthesisComponent element) throws IOException { 22043 if (element != null) { 22044 composeElementAttributes(element); 22045 xml.enter(FHIR_NS, name); 22046 composeBackboneElements(element); 22047 if (element.hasInitialElement()) { 22048 composeBoolean("initial", element.getInitialElement()); 22049 } 22050 if (element.hasPriorDateElement()) { 22051 composeDate("priorDate", element.getPriorDateElement()); 22052 } 22053 if (element.hasPriorMaterial()) { 22054 composeCoding("priorMaterial", element.getPriorMaterial()); 22055 } 22056 composeElementClose(element); 22057 xml.exit(FHIR_NS, name); 22058 } 22059 } 22060 22061 protected void composeExplanationOfBenefitAddedItemComponent(String name, ExplanationOfBenefit.AddedItemComponent element) throws IOException { 22062 if (element != null) { 22063 composeElementAttributes(element); 22064 xml.enter(FHIR_NS, name); 22065 composeBackboneElements(element); 22066 if (element.hasSequenceLinkId()) { 22067 for (PositiveIntType e : element.getSequenceLinkId()) 22068 composePositiveInt("sequenceLinkId", e); 22069 } 22070 if (element.hasService()) { 22071 composeCoding("service", element.getService()); 22072 } 22073 if (element.hasFee()) { 22074 composeMoney("fee", element.getFee()); 22075 } 22076 if (element.hasNoteNumberLinkId()) { 22077 for (PositiveIntType e : element.getNoteNumberLinkId()) 22078 composePositiveInt("noteNumberLinkId", e); 22079 } 22080 if (element.hasAdjudication()) { 22081 for (ExplanationOfBenefit.AddedItemAdjudicationComponent e : element.getAdjudication()) 22082 composeExplanationOfBenefitAddedItemAdjudicationComponent("adjudication", e); 22083 } 22084 if (element.hasDetail()) { 22085 for (ExplanationOfBenefit.AddedItemsDetailComponent e : element.getDetail()) 22086 composeExplanationOfBenefitAddedItemsDetailComponent("detail", e); 22087 } 22088 composeElementClose(element); 22089 xml.exit(FHIR_NS, name); 22090 } 22091 } 22092 22093 protected void composeExplanationOfBenefitAddedItemAdjudicationComponent(String name, ExplanationOfBenefit.AddedItemAdjudicationComponent element) throws IOException { 22094 if (element != null) { 22095 composeElementAttributes(element); 22096 xml.enter(FHIR_NS, name); 22097 composeBackboneElements(element); 22098 if (element.hasCategory()) { 22099 composeCoding("category", element.getCategory()); 22100 } 22101 if (element.hasReason()) { 22102 composeCoding("reason", element.getReason()); 22103 } 22104 if (element.hasAmount()) { 22105 composeMoney("amount", element.getAmount()); 22106 } 22107 if (element.hasValueElement()) { 22108 composeDecimal("value", element.getValueElement()); 22109 } 22110 composeElementClose(element); 22111 xml.exit(FHIR_NS, name); 22112 } 22113 } 22114 22115 protected void composeExplanationOfBenefitAddedItemsDetailComponent(String name, ExplanationOfBenefit.AddedItemsDetailComponent element) throws IOException { 22116 if (element != null) { 22117 composeElementAttributes(element); 22118 xml.enter(FHIR_NS, name); 22119 composeBackboneElements(element); 22120 if (element.hasService()) { 22121 composeCoding("service", element.getService()); 22122 } 22123 if (element.hasFee()) { 22124 composeMoney("fee", element.getFee()); 22125 } 22126 if (element.hasAdjudication()) { 22127 for (ExplanationOfBenefit.AddedItemDetailAdjudicationComponent e : element.getAdjudication()) 22128 composeExplanationOfBenefitAddedItemDetailAdjudicationComponent("adjudication", e); 22129 } 22130 composeElementClose(element); 22131 xml.exit(FHIR_NS, name); 22132 } 22133 } 22134 22135 protected void composeExplanationOfBenefitAddedItemDetailAdjudicationComponent(String name, ExplanationOfBenefit.AddedItemDetailAdjudicationComponent element) throws IOException { 22136 if (element != null) { 22137 composeElementAttributes(element); 22138 xml.enter(FHIR_NS, name); 22139 composeBackboneElements(element); 22140 if (element.hasCategory()) { 22141 composeCoding("category", element.getCategory()); 22142 } 22143 if (element.hasReason()) { 22144 composeCoding("reason", element.getReason()); 22145 } 22146 if (element.hasAmount()) { 22147 composeMoney("amount", element.getAmount()); 22148 } 22149 if (element.hasValueElement()) { 22150 composeDecimal("value", element.getValueElement()); 22151 } 22152 composeElementClose(element); 22153 xml.exit(FHIR_NS, name); 22154 } 22155 } 22156 22157 protected void composeExplanationOfBenefitMissingTeethComponent(String name, ExplanationOfBenefit.MissingTeethComponent element) throws IOException { 22158 if (element != null) { 22159 composeElementAttributes(element); 22160 xml.enter(FHIR_NS, name); 22161 composeBackboneElements(element); 22162 if (element.hasTooth()) { 22163 composeCoding("tooth", element.getTooth()); 22164 } 22165 if (element.hasReason()) { 22166 composeCoding("reason", element.getReason()); 22167 } 22168 if (element.hasExtractionDateElement()) { 22169 composeDate("extractionDate", element.getExtractionDateElement()); 22170 } 22171 composeElementClose(element); 22172 xml.exit(FHIR_NS, name); 22173 } 22174 } 22175 22176 protected void composeExplanationOfBenefitNotesComponent(String name, ExplanationOfBenefit.NotesComponent element) throws IOException { 22177 if (element != null) { 22178 composeElementAttributes(element); 22179 xml.enter(FHIR_NS, name); 22180 composeBackboneElements(element); 22181 if (element.hasNumberElement()) { 22182 composePositiveInt("number", element.getNumberElement()); 22183 } 22184 if (element.hasType()) { 22185 composeCoding("type", element.getType()); 22186 } 22187 if (element.hasTextElement()) { 22188 composeString("text", element.getTextElement()); 22189 } 22190 composeElementClose(element); 22191 xml.exit(FHIR_NS, name); 22192 } 22193 } 22194 22195 protected void composeExplanationOfBenefitBenefitBalanceComponent(String name, ExplanationOfBenefit.BenefitBalanceComponent element) throws IOException { 22196 if (element != null) { 22197 composeElementAttributes(element); 22198 xml.enter(FHIR_NS, name); 22199 composeBackboneElements(element); 22200 if (element.hasCategory()) { 22201 composeCoding("category", element.getCategory()); 22202 } 22203 if (element.hasSubCategory()) { 22204 composeCoding("subCategory", element.getSubCategory()); 22205 } 22206 if (element.hasNetwork()) { 22207 composeCoding("network", element.getNetwork()); 22208 } 22209 if (element.hasUnit()) { 22210 composeCoding("unit", element.getUnit()); 22211 } 22212 if (element.hasTerm()) { 22213 composeCoding("term", element.getTerm()); 22214 } 22215 if (element.hasFinancial()) { 22216 for (ExplanationOfBenefit.BenefitComponent e : element.getFinancial()) 22217 composeExplanationOfBenefitBenefitComponent("financial", e); 22218 } 22219 composeElementClose(element); 22220 xml.exit(FHIR_NS, name); 22221 } 22222 } 22223 22224 protected void composeExplanationOfBenefitBenefitComponent(String name, ExplanationOfBenefit.BenefitComponent element) throws IOException { 22225 if (element != null) { 22226 composeElementAttributes(element); 22227 xml.enter(FHIR_NS, name); 22228 composeBackboneElements(element); 22229 if (element.hasType()) { 22230 composeCoding("type", element.getType()); 22231 } 22232 if (element.hasBenefit()) { 22233 composeType("benefit", element.getBenefit()); 22234 } if (element.hasBenefitUsed()) { 22235 composeType("benefitUsed", element.getBenefitUsed()); 22236 } composeElementClose(element); 22237 xml.exit(FHIR_NS, name); 22238 } 22239 } 22240 22241 protected void composeFamilyMemberHistory(String name, FamilyMemberHistory element) throws IOException { 22242 if (element != null) { 22243 composeDomainResourceAttributes(element); 22244 xml.enter(FHIR_NS, name); 22245 composeDomainResourceElements(element); 22246 if (element.hasIdentifier()) { 22247 for (Identifier e : element.getIdentifier()) 22248 composeIdentifier("identifier", e); 22249 } 22250 if (element.hasPatient()) { 22251 composeReference("patient", element.getPatient()); 22252 } 22253 if (element.hasDateElement()) { 22254 composeDateTime("date", element.getDateElement()); 22255 } 22256 if (element.hasStatusElement()) 22257 composeEnumeration("status", element.getStatusElement(), new FamilyMemberHistory.FamilyHistoryStatusEnumFactory()); 22258 if (element.hasNameElement()) { 22259 composeString("name", element.getNameElement()); 22260 } 22261 if (element.hasRelationship()) { 22262 composeCodeableConcept("relationship", element.getRelationship()); 22263 } 22264 if (element.hasGenderElement()) 22265 composeEnumeration("gender", element.getGenderElement(), new Enumerations.AdministrativeGenderEnumFactory()); 22266 if (element.hasBorn()) { 22267 composeType("born", element.getBorn()); 22268 } if (element.hasAge()) { 22269 composeType("age", element.getAge()); 22270 } if (element.hasDeceased()) { 22271 composeType("deceased", element.getDeceased()); 22272 } if (element.hasNote()) { 22273 composeAnnotation("note", element.getNote()); 22274 } 22275 if (element.hasCondition()) { 22276 for (FamilyMemberHistory.FamilyMemberHistoryConditionComponent e : element.getCondition()) 22277 composeFamilyMemberHistoryFamilyMemberHistoryConditionComponent("condition", e); 22278 } 22279 composeElementClose(element); 22280 xml.exit(FHIR_NS, name); 22281 } 22282 } 22283 22284 protected void composeFamilyMemberHistoryFamilyMemberHistoryConditionComponent(String name, FamilyMemberHistory.FamilyMemberHistoryConditionComponent element) throws IOException { 22285 if (element != null) { 22286 composeElementAttributes(element); 22287 xml.enter(FHIR_NS, name); 22288 composeBackboneElements(element); 22289 if (element.hasCode()) { 22290 composeCodeableConcept("code", element.getCode()); 22291 } 22292 if (element.hasOutcome()) { 22293 composeCodeableConcept("outcome", element.getOutcome()); 22294 } 22295 if (element.hasOnset()) { 22296 composeType("onset", element.getOnset()); 22297 } if (element.hasNote()) { 22298 composeAnnotation("note", element.getNote()); 22299 } 22300 composeElementClose(element); 22301 xml.exit(FHIR_NS, name); 22302 } 22303 } 22304 22305 protected void composeFlag(String name, Flag element) throws IOException { 22306 if (element != null) { 22307 composeDomainResourceAttributes(element); 22308 xml.enter(FHIR_NS, name); 22309 composeDomainResourceElements(element); 22310 if (element.hasIdentifier()) { 22311 for (Identifier e : element.getIdentifier()) 22312 composeIdentifier("identifier", e); 22313 } 22314 if (element.hasCategory()) { 22315 composeCodeableConcept("category", element.getCategory()); 22316 } 22317 if (element.hasStatusElement()) 22318 composeEnumeration("status", element.getStatusElement(), new Flag.FlagStatusEnumFactory()); 22319 if (element.hasPeriod()) { 22320 composePeriod("period", element.getPeriod()); 22321 } 22322 if (element.hasSubject()) { 22323 composeReference("subject", element.getSubject()); 22324 } 22325 if (element.hasEncounter()) { 22326 composeReference("encounter", element.getEncounter()); 22327 } 22328 if (element.hasAuthor()) { 22329 composeReference("author", element.getAuthor()); 22330 } 22331 if (element.hasCode()) { 22332 composeCodeableConcept("code", element.getCode()); 22333 } 22334 composeElementClose(element); 22335 xml.exit(FHIR_NS, name); 22336 } 22337 } 22338 22339 protected void composeGoal(String name, Goal element) throws IOException { 22340 if (element != null) { 22341 composeDomainResourceAttributes(element); 22342 xml.enter(FHIR_NS, name); 22343 composeDomainResourceElements(element); 22344 if (element.hasIdentifier()) { 22345 for (Identifier e : element.getIdentifier()) 22346 composeIdentifier("identifier", e); 22347 } 22348 if (element.hasSubject()) { 22349 composeReference("subject", element.getSubject()); 22350 } 22351 if (element.hasStart()) { 22352 composeType("start", element.getStart()); 22353 } if (element.hasTarget()) { 22354 composeType("target", element.getTarget()); 22355 } if (element.hasCategory()) { 22356 for (CodeableConcept e : element.getCategory()) 22357 composeCodeableConcept("category", e); 22358 } 22359 if (element.hasDescriptionElement()) { 22360 composeString("description", element.getDescriptionElement()); 22361 } 22362 if (element.hasStatusElement()) 22363 composeEnumeration("status", element.getStatusElement(), new Goal.GoalStatusEnumFactory()); 22364 if (element.hasStatusDateElement()) { 22365 composeDate("statusDate", element.getStatusDateElement()); 22366 } 22367 if (element.hasStatusReason()) { 22368 composeCodeableConcept("statusReason", element.getStatusReason()); 22369 } 22370 if (element.hasAuthor()) { 22371 composeReference("author", element.getAuthor()); 22372 } 22373 if (element.hasPriority()) { 22374 composeCodeableConcept("priority", element.getPriority()); 22375 } 22376 if (element.hasAddresses()) { 22377 for (Reference e : element.getAddresses()) 22378 composeReference("addresses", e); 22379 } 22380 if (element.hasNote()) { 22381 for (Annotation e : element.getNote()) 22382 composeAnnotation("note", e); 22383 } 22384 if (element.hasOutcome()) { 22385 for (Goal.GoalOutcomeComponent e : element.getOutcome()) 22386 composeGoalGoalOutcomeComponent("outcome", e); 22387 } 22388 composeElementClose(element); 22389 xml.exit(FHIR_NS, name); 22390 } 22391 } 22392 22393 protected void composeGoalGoalOutcomeComponent(String name, Goal.GoalOutcomeComponent element) throws IOException { 22394 if (element != null) { 22395 composeElementAttributes(element); 22396 xml.enter(FHIR_NS, name); 22397 composeBackboneElements(element); 22398 if (element.hasResult()) { 22399 composeType("result", element.getResult()); 22400 } composeElementClose(element); 22401 xml.exit(FHIR_NS, name); 22402 } 22403 } 22404 22405 protected void composeGroup(String name, Group element) throws IOException { 22406 if (element != null) { 22407 composeDomainResourceAttributes(element); 22408 xml.enter(FHIR_NS, name); 22409 composeDomainResourceElements(element); 22410 if (element.hasIdentifier()) { 22411 for (Identifier e : element.getIdentifier()) 22412 composeIdentifier("identifier", e); 22413 } 22414 if (element.hasTypeElement()) 22415 composeEnumeration("type", element.getTypeElement(), new Group.GroupTypeEnumFactory()); 22416 if (element.hasActualElement()) { 22417 composeBoolean("actual", element.getActualElement()); 22418 } 22419 if (element.hasActiveElement()) { 22420 composeBoolean("active", element.getActiveElement()); 22421 } 22422 if (element.hasCode()) { 22423 composeCodeableConcept("code", element.getCode()); 22424 } 22425 if (element.hasNameElement()) { 22426 composeString("name", element.getNameElement()); 22427 } 22428 if (element.hasQuantityElement()) { 22429 composeUnsignedInt("quantity", element.getQuantityElement()); 22430 } 22431 if (element.hasCharacteristic()) { 22432 for (Group.GroupCharacteristicComponent e : element.getCharacteristic()) 22433 composeGroupGroupCharacteristicComponent("characteristic", e); 22434 } 22435 if (element.hasMember()) { 22436 for (Group.GroupMemberComponent e : element.getMember()) 22437 composeGroupGroupMemberComponent("member", e); 22438 } 22439 composeElementClose(element); 22440 xml.exit(FHIR_NS, name); 22441 } 22442 } 22443 22444 protected void composeGroupGroupCharacteristicComponent(String name, Group.GroupCharacteristicComponent element) throws IOException { 22445 if (element != null) { 22446 composeElementAttributes(element); 22447 xml.enter(FHIR_NS, name); 22448 composeBackboneElements(element); 22449 if (element.hasCode()) { 22450 composeCodeableConcept("code", element.getCode()); 22451 } 22452 if (element.hasValue()) { 22453 composeType("value", element.getValue()); 22454 } if (element.hasExcludeElement()) { 22455 composeBoolean("exclude", element.getExcludeElement()); 22456 } 22457 if (element.hasPeriod()) { 22458 composePeriod("period", element.getPeriod()); 22459 } 22460 composeElementClose(element); 22461 xml.exit(FHIR_NS, name); 22462 } 22463 } 22464 22465 protected void composeGroupGroupMemberComponent(String name, Group.GroupMemberComponent element) throws IOException { 22466 if (element != null) { 22467 composeElementAttributes(element); 22468 xml.enter(FHIR_NS, name); 22469 composeBackboneElements(element); 22470 if (element.hasEntity()) { 22471 composeReference("entity", element.getEntity()); 22472 } 22473 if (element.hasPeriod()) { 22474 composePeriod("period", element.getPeriod()); 22475 } 22476 if (element.hasInactiveElement()) { 22477 composeBoolean("inactive", element.getInactiveElement()); 22478 } 22479 composeElementClose(element); 22480 xml.exit(FHIR_NS, name); 22481 } 22482 } 22483 22484 protected void composeGuidanceResponse(String name, GuidanceResponse element) throws IOException { 22485 if (element != null) { 22486 composeDomainResourceAttributes(element); 22487 xml.enter(FHIR_NS, name); 22488 composeDomainResourceElements(element); 22489 if (element.hasRequestIdElement()) { 22490 composeString("requestId", element.getRequestIdElement()); 22491 } 22492 if (element.hasModule()) { 22493 composeReference("module", element.getModule()); 22494 } 22495 if (element.hasStatusElement()) 22496 composeEnumeration("status", element.getStatusElement(), new GuidanceResponse.GuidanceResponseStatusEnumFactory()); 22497 if (element.hasEvaluationMessage()) { 22498 for (Reference e : element.getEvaluationMessage()) 22499 composeReference("evaluationMessage", e); 22500 } 22501 if (element.hasOutputParameters()) { 22502 composeReference("outputParameters", element.getOutputParameters()); 22503 } 22504 if (element.hasAction()) { 22505 for (GuidanceResponse.GuidanceResponseActionComponent e : element.getAction()) 22506 composeGuidanceResponseGuidanceResponseActionComponent("action", e); 22507 } 22508 if (element.hasDataRequirement()) { 22509 for (DataRequirement e : element.getDataRequirement()) 22510 composeDataRequirement("dataRequirement", e); 22511 } 22512 composeElementClose(element); 22513 xml.exit(FHIR_NS, name); 22514 } 22515 } 22516 22517 protected void composeGuidanceResponseGuidanceResponseActionComponent(String name, GuidanceResponse.GuidanceResponseActionComponent element) throws IOException { 22518 if (element != null) { 22519 composeElementAttributes(element); 22520 xml.enter(FHIR_NS, name); 22521 composeBackboneElements(element); 22522 if (element.hasActionIdentifier()) { 22523 composeIdentifier("actionIdentifier", element.getActionIdentifier()); 22524 } 22525 if (element.hasLabelElement()) { 22526 composeString("label", element.getLabelElement()); 22527 } 22528 if (element.hasTitleElement()) { 22529 composeString("title", element.getTitleElement()); 22530 } 22531 if (element.hasDescriptionElement()) { 22532 composeString("description", element.getDescriptionElement()); 22533 } 22534 if (element.hasTextEquivalentElement()) { 22535 composeString("textEquivalent", element.getTextEquivalentElement()); 22536 } 22537 if (element.hasConcept()) { 22538 for (CodeableConcept e : element.getConcept()) 22539 composeCodeableConcept("concept", e); 22540 } 22541 if (element.hasSupportingEvidence()) { 22542 for (Attachment e : element.getSupportingEvidence()) 22543 composeAttachment("supportingEvidence", e); 22544 } 22545 if (element.hasRelatedAction()) { 22546 composeGuidanceResponseGuidanceResponseActionRelatedActionComponent("relatedAction", element.getRelatedAction()); 22547 } 22548 if (element.hasDocumentation()) { 22549 for (Attachment e : element.getDocumentation()) 22550 composeAttachment("documentation", e); 22551 } 22552 if (element.hasParticipant()) { 22553 for (Reference e : element.getParticipant()) 22554 composeReference("participant", e); 22555 } 22556 if (element.hasTypeElement()) { 22557 composeCode("type", element.getTypeElement()); 22558 } 22559 if (element.hasBehavior()) { 22560 for (GuidanceResponse.GuidanceResponseActionBehaviorComponent e : element.getBehavior()) 22561 composeGuidanceResponseGuidanceResponseActionBehaviorComponent("behavior", e); 22562 } 22563 if (element.hasResource()) { 22564 composeReference("resource", element.getResource()); 22565 } 22566 if (element.hasAction()) { 22567 for (GuidanceResponse.GuidanceResponseActionComponent e : element.getAction()) 22568 composeGuidanceResponseGuidanceResponseActionComponent("action", e); 22569 } 22570 composeElementClose(element); 22571 xml.exit(FHIR_NS, name); 22572 } 22573 } 22574 22575 protected void composeGuidanceResponseGuidanceResponseActionRelatedActionComponent(String name, GuidanceResponse.GuidanceResponseActionRelatedActionComponent element) throws IOException { 22576 if (element != null) { 22577 composeElementAttributes(element); 22578 xml.enter(FHIR_NS, name); 22579 composeBackboneElements(element); 22580 if (element.hasActionIdentifier()) { 22581 composeIdentifier("actionIdentifier", element.getActionIdentifier()); 22582 } 22583 if (element.hasRelationshipElement()) { 22584 composeCode("relationship", element.getRelationshipElement()); 22585 } 22586 if (element.hasOffset()) { 22587 composeType("offset", element.getOffset()); 22588 } if (element.hasAnchorElement()) { 22589 composeCode("anchor", element.getAnchorElement()); 22590 } 22591 composeElementClose(element); 22592 xml.exit(FHIR_NS, name); 22593 } 22594 } 22595 22596 protected void composeGuidanceResponseGuidanceResponseActionBehaviorComponent(String name, GuidanceResponse.GuidanceResponseActionBehaviorComponent element) throws IOException { 22597 if (element != null) { 22598 composeElementAttributes(element); 22599 xml.enter(FHIR_NS, name); 22600 composeBackboneElements(element); 22601 if (element.hasType()) { 22602 composeCoding("type", element.getType()); 22603 } 22604 if (element.hasValue()) { 22605 composeCoding("value", element.getValue()); 22606 } 22607 composeElementClose(element); 22608 xml.exit(FHIR_NS, name); 22609 } 22610 } 22611 22612 protected void composeHealthcareService(String name, HealthcareService element) throws IOException { 22613 if (element != null) { 22614 composeDomainResourceAttributes(element); 22615 xml.enter(FHIR_NS, name); 22616 composeDomainResourceElements(element); 22617 if (element.hasIdentifier()) { 22618 for (Identifier e : element.getIdentifier()) 22619 composeIdentifier("identifier", e); 22620 } 22621 if (element.hasProvidedBy()) { 22622 composeReference("providedBy", element.getProvidedBy()); 22623 } 22624 if (element.hasServiceCategory()) { 22625 composeCodeableConcept("serviceCategory", element.getServiceCategory()); 22626 } 22627 if (element.hasServiceType()) { 22628 for (CodeableConcept e : element.getServiceType()) 22629 composeCodeableConcept("serviceType", e); 22630 } 22631 if (element.hasSpecialty()) { 22632 for (CodeableConcept e : element.getSpecialty()) 22633 composeCodeableConcept("specialty", e); 22634 } 22635 if (element.hasLocation()) { 22636 for (Reference e : element.getLocation()) 22637 composeReference("location", e); 22638 } 22639 if (element.hasServiceNameElement()) { 22640 composeString("serviceName", element.getServiceNameElement()); 22641 } 22642 if (element.hasCommentElement()) { 22643 composeString("comment", element.getCommentElement()); 22644 } 22645 if (element.hasExtraDetailsElement()) { 22646 composeString("extraDetails", element.getExtraDetailsElement()); 22647 } 22648 if (element.hasPhoto()) { 22649 composeAttachment("photo", element.getPhoto()); 22650 } 22651 if (element.hasTelecom()) { 22652 for (ContactPoint e : element.getTelecom()) 22653 composeContactPoint("telecom", e); 22654 } 22655 if (element.hasCoverageArea()) { 22656 for (Reference e : element.getCoverageArea()) 22657 composeReference("coverageArea", e); 22658 } 22659 if (element.hasServiceProvisionCode()) { 22660 for (CodeableConcept e : element.getServiceProvisionCode()) 22661 composeCodeableConcept("serviceProvisionCode", e); 22662 } 22663 if (element.hasEligibility()) { 22664 composeCodeableConcept("eligibility", element.getEligibility()); 22665 } 22666 if (element.hasEligibilityNoteElement()) { 22667 composeString("eligibilityNote", element.getEligibilityNoteElement()); 22668 } 22669 if (element.hasProgramName()) { 22670 for (StringType e : element.getProgramName()) 22671 composeString("programName", e); 22672 } 22673 if (element.hasCharacteristic()) { 22674 for (CodeableConcept e : element.getCharacteristic()) 22675 composeCodeableConcept("characteristic", e); 22676 } 22677 if (element.hasReferralMethod()) { 22678 for (CodeableConcept e : element.getReferralMethod()) 22679 composeCodeableConcept("referralMethod", e); 22680 } 22681 if (element.hasPublicKeyElement()) { 22682 composeString("publicKey", element.getPublicKeyElement()); 22683 } 22684 if (element.hasAppointmentRequiredElement()) { 22685 composeBoolean("appointmentRequired", element.getAppointmentRequiredElement()); 22686 } 22687 if (element.hasAvailableTime()) { 22688 for (HealthcareService.HealthcareServiceAvailableTimeComponent e : element.getAvailableTime()) 22689 composeHealthcareServiceHealthcareServiceAvailableTimeComponent("availableTime", e); 22690 } 22691 if (element.hasNotAvailable()) { 22692 for (HealthcareService.HealthcareServiceNotAvailableComponent e : element.getNotAvailable()) 22693 composeHealthcareServiceHealthcareServiceNotAvailableComponent("notAvailable", e); 22694 } 22695 if (element.hasAvailabilityExceptionsElement()) { 22696 composeString("availabilityExceptions", element.getAvailabilityExceptionsElement()); 22697 } 22698 composeElementClose(element); 22699 xml.exit(FHIR_NS, name); 22700 } 22701 } 22702 22703 protected void composeHealthcareServiceHealthcareServiceAvailableTimeComponent(String name, HealthcareService.HealthcareServiceAvailableTimeComponent element) throws IOException { 22704 if (element != null) { 22705 composeElementAttributes(element); 22706 xml.enter(FHIR_NS, name); 22707 composeBackboneElements(element); 22708 if (element.hasDaysOfWeek()) 22709 for (Enumeration<HealthcareService.DaysOfWeek> e : element.getDaysOfWeek()) 22710 composeEnumeration("daysOfWeek", e, new HealthcareService.DaysOfWeekEnumFactory()); 22711 if (element.hasAllDayElement()) { 22712 composeBoolean("allDay", element.getAllDayElement()); 22713 } 22714 if (element.hasAvailableStartTimeElement()) { 22715 composeTime("availableStartTime", element.getAvailableStartTimeElement()); 22716 } 22717 if (element.hasAvailableEndTimeElement()) { 22718 composeTime("availableEndTime", element.getAvailableEndTimeElement()); 22719 } 22720 composeElementClose(element); 22721 xml.exit(FHIR_NS, name); 22722 } 22723 } 22724 22725 protected void composeHealthcareServiceHealthcareServiceNotAvailableComponent(String name, HealthcareService.HealthcareServiceNotAvailableComponent element) throws IOException { 22726 if (element != null) { 22727 composeElementAttributes(element); 22728 xml.enter(FHIR_NS, name); 22729 composeBackboneElements(element); 22730 if (element.hasDescriptionElement()) { 22731 composeString("description", element.getDescriptionElement()); 22732 } 22733 if (element.hasDuring()) { 22734 composePeriod("during", element.getDuring()); 22735 } 22736 composeElementClose(element); 22737 xml.exit(FHIR_NS, name); 22738 } 22739 } 22740 22741 protected void composeImagingExcerpt(String name, ImagingExcerpt element) throws IOException { 22742 if (element != null) { 22743 composeDomainResourceAttributes(element); 22744 xml.enter(FHIR_NS, name); 22745 composeDomainResourceElements(element); 22746 if (element.hasUidElement()) { 22747 composeOid("uid", element.getUidElement()); 22748 } 22749 if (element.hasPatient()) { 22750 composeReference("patient", element.getPatient()); 22751 } 22752 if (element.hasAuthoringTimeElement()) { 22753 composeDateTime("authoringTime", element.getAuthoringTimeElement()); 22754 } 22755 if (element.hasAuthor()) { 22756 composeReference("author", element.getAuthor()); 22757 } 22758 if (element.hasTitle()) { 22759 composeCodeableConcept("title", element.getTitle()); 22760 } 22761 if (element.hasDescriptionElement()) { 22762 composeString("description", element.getDescriptionElement()); 22763 } 22764 if (element.hasStudy()) { 22765 for (ImagingExcerpt.StudyComponent e : element.getStudy()) 22766 composeImagingExcerptStudyComponent("study", e); 22767 } 22768 composeElementClose(element); 22769 xml.exit(FHIR_NS, name); 22770 } 22771 } 22772 22773 protected void composeImagingExcerptStudyComponent(String name, ImagingExcerpt.StudyComponent element) throws IOException { 22774 if (element != null) { 22775 composeElementAttributes(element); 22776 xml.enter(FHIR_NS, name); 22777 composeBackboneElements(element); 22778 if (element.hasUidElement()) { 22779 composeOid("uid", element.getUidElement()); 22780 } 22781 if (element.hasImagingStudy()) { 22782 composeReference("imagingStudy", element.getImagingStudy()); 22783 } 22784 if (element.hasDicom()) { 22785 for (ImagingExcerpt.StudyDicomComponent e : element.getDicom()) 22786 composeImagingExcerptStudyDicomComponent("dicom", e); 22787 } 22788 if (element.hasViewable()) { 22789 for (ImagingExcerpt.StudyViewableComponent e : element.getViewable()) 22790 composeImagingExcerptStudyViewableComponent("viewable", e); 22791 } 22792 if (element.hasSeries()) { 22793 for (ImagingExcerpt.SeriesComponent e : element.getSeries()) 22794 composeImagingExcerptSeriesComponent("series", e); 22795 } 22796 composeElementClose(element); 22797 xml.exit(FHIR_NS, name); 22798 } 22799 } 22800 22801 protected void composeImagingExcerptStudyDicomComponent(String name, ImagingExcerpt.StudyDicomComponent element) throws IOException { 22802 if (element != null) { 22803 composeElementAttributes(element); 22804 xml.enter(FHIR_NS, name); 22805 composeBackboneElements(element); 22806 if (element.hasTypeElement()) 22807 composeEnumeration("type", element.getTypeElement(), new ImagingExcerpt.DWebTypeEnumFactory()); 22808 if (element.hasUrlElement()) { 22809 composeUri("url", element.getUrlElement()); 22810 } 22811 composeElementClose(element); 22812 xml.exit(FHIR_NS, name); 22813 } 22814 } 22815 22816 protected void composeImagingExcerptStudyViewableComponent(String name, ImagingExcerpt.StudyViewableComponent element) throws IOException { 22817 if (element != null) { 22818 composeElementAttributes(element); 22819 xml.enter(FHIR_NS, name); 22820 composeBackboneElements(element); 22821 if (element.hasContentTypeElement()) { 22822 composeCode("contentType", element.getContentTypeElement()); 22823 } 22824 if (element.hasHeightElement()) { 22825 composePositiveInt("height", element.getHeightElement()); 22826 } 22827 if (element.hasWidthElement()) { 22828 composePositiveInt("width", element.getWidthElement()); 22829 } 22830 if (element.hasFramesElement()) { 22831 composePositiveInt("frames", element.getFramesElement()); 22832 } 22833 if (element.hasDurationElement()) { 22834 composeUnsignedInt("duration", element.getDurationElement()); 22835 } 22836 if (element.hasSizeElement()) { 22837 composeUnsignedInt("size", element.getSizeElement()); 22838 } 22839 if (element.hasTitleElement()) { 22840 composeString("title", element.getTitleElement()); 22841 } 22842 if (element.hasUrlElement()) { 22843 composeUri("url", element.getUrlElement()); 22844 } 22845 composeElementClose(element); 22846 xml.exit(FHIR_NS, name); 22847 } 22848 } 22849 22850 protected void composeImagingExcerptSeriesComponent(String name, ImagingExcerpt.SeriesComponent element) throws IOException { 22851 if (element != null) { 22852 composeElementAttributes(element); 22853 xml.enter(FHIR_NS, name); 22854 composeBackboneElements(element); 22855 if (element.hasUidElement()) { 22856 composeOid("uid", element.getUidElement()); 22857 } 22858 if (element.hasDicom()) { 22859 for (ImagingExcerpt.SeriesDicomComponent e : element.getDicom()) 22860 composeImagingExcerptSeriesDicomComponent("dicom", e); 22861 } 22862 if (element.hasInstance()) { 22863 for (ImagingExcerpt.InstanceComponent e : element.getInstance()) 22864 composeImagingExcerptInstanceComponent("instance", e); 22865 } 22866 composeElementClose(element); 22867 xml.exit(FHIR_NS, name); 22868 } 22869 } 22870 22871 protected void composeImagingExcerptSeriesDicomComponent(String name, ImagingExcerpt.SeriesDicomComponent element) throws IOException { 22872 if (element != null) { 22873 composeElementAttributes(element); 22874 xml.enter(FHIR_NS, name); 22875 composeBackboneElements(element); 22876 if (element.hasTypeElement()) 22877 composeEnumeration("type", element.getTypeElement(), new ImagingExcerpt.DWebTypeEnumFactory()); 22878 if (element.hasUrlElement()) { 22879 composeUri("url", element.getUrlElement()); 22880 } 22881 composeElementClose(element); 22882 xml.exit(FHIR_NS, name); 22883 } 22884 } 22885 22886 protected void composeImagingExcerptInstanceComponent(String name, ImagingExcerpt.InstanceComponent element) throws IOException { 22887 if (element != null) { 22888 composeElementAttributes(element); 22889 xml.enter(FHIR_NS, name); 22890 composeBackboneElements(element); 22891 if (element.hasSopClassElement()) { 22892 composeOid("sopClass", element.getSopClassElement()); 22893 } 22894 if (element.hasUidElement()) { 22895 composeOid("uid", element.getUidElement()); 22896 } 22897 if (element.hasDicom()) { 22898 for (ImagingExcerpt.InstanceDicomComponent e : element.getDicom()) 22899 composeImagingExcerptInstanceDicomComponent("dicom", e); 22900 } 22901 if (element.hasFrameNumbers()) { 22902 for (UnsignedIntType e : element.getFrameNumbers()) 22903 composeUnsignedInt("frameNumbers", e); 22904 } 22905 composeElementClose(element); 22906 xml.exit(FHIR_NS, name); 22907 } 22908 } 22909 22910 protected void composeImagingExcerptInstanceDicomComponent(String name, ImagingExcerpt.InstanceDicomComponent element) throws IOException { 22911 if (element != null) { 22912 composeElementAttributes(element); 22913 xml.enter(FHIR_NS, name); 22914 composeBackboneElements(element); 22915 if (element.hasTypeElement()) 22916 composeEnumeration("type", element.getTypeElement(), new ImagingExcerpt.DWebTypeEnumFactory()); 22917 if (element.hasUrlElement()) { 22918 composeUri("url", element.getUrlElement()); 22919 } 22920 composeElementClose(element); 22921 xml.exit(FHIR_NS, name); 22922 } 22923 } 22924 22925 protected void composeImagingObjectSelection(String name, ImagingObjectSelection element) throws IOException { 22926 if (element != null) { 22927 composeDomainResourceAttributes(element); 22928 xml.enter(FHIR_NS, name); 22929 composeDomainResourceElements(element); 22930 if (element.hasUidElement()) { 22931 composeOid("uid", element.getUidElement()); 22932 } 22933 if (element.hasPatient()) { 22934 composeReference("patient", element.getPatient()); 22935 } 22936 if (element.hasAuthoringTimeElement()) { 22937 composeDateTime("authoringTime", element.getAuthoringTimeElement()); 22938 } 22939 if (element.hasAuthor()) { 22940 composeReference("author", element.getAuthor()); 22941 } 22942 if (element.hasTitle()) { 22943 composeCodeableConcept("title", element.getTitle()); 22944 } 22945 if (element.hasDescriptionElement()) { 22946 composeString("description", element.getDescriptionElement()); 22947 } 22948 if (element.hasStudy()) { 22949 for (ImagingObjectSelection.StudyComponent e : element.getStudy()) 22950 composeImagingObjectSelectionStudyComponent("study", e); 22951 } 22952 composeElementClose(element); 22953 xml.exit(FHIR_NS, name); 22954 } 22955 } 22956 22957 protected void composeImagingObjectSelectionStudyComponent(String name, ImagingObjectSelection.StudyComponent element) throws IOException { 22958 if (element != null) { 22959 composeElementAttributes(element); 22960 xml.enter(FHIR_NS, name); 22961 composeBackboneElements(element); 22962 if (element.hasUidElement()) { 22963 composeOid("uid", element.getUidElement()); 22964 } 22965 if (element.hasUrlElement()) { 22966 composeUri("url", element.getUrlElement()); 22967 } 22968 if (element.hasImagingStudy()) { 22969 composeReference("imagingStudy", element.getImagingStudy()); 22970 } 22971 if (element.hasSeries()) { 22972 for (ImagingObjectSelection.SeriesComponent e : element.getSeries()) 22973 composeImagingObjectSelectionSeriesComponent("series", e); 22974 } 22975 composeElementClose(element); 22976 xml.exit(FHIR_NS, name); 22977 } 22978 } 22979 22980 protected void composeImagingObjectSelectionSeriesComponent(String name, ImagingObjectSelection.SeriesComponent element) throws IOException { 22981 if (element != null) { 22982 composeElementAttributes(element); 22983 xml.enter(FHIR_NS, name); 22984 composeBackboneElements(element); 22985 if (element.hasUidElement()) { 22986 composeOid("uid", element.getUidElement()); 22987 } 22988 if (element.hasUrlElement()) { 22989 composeUri("url", element.getUrlElement()); 22990 } 22991 if (element.hasInstance()) { 22992 for (ImagingObjectSelection.InstanceComponent e : element.getInstance()) 22993 composeImagingObjectSelectionInstanceComponent("instance", e); 22994 } 22995 composeElementClose(element); 22996 xml.exit(FHIR_NS, name); 22997 } 22998 } 22999 23000 protected void composeImagingObjectSelectionInstanceComponent(String name, ImagingObjectSelection.InstanceComponent element) throws IOException { 23001 if (element != null) { 23002 composeElementAttributes(element); 23003 xml.enter(FHIR_NS, name); 23004 composeBackboneElements(element); 23005 if (element.hasSopClassElement()) { 23006 composeOid("sopClass", element.getSopClassElement()); 23007 } 23008 if (element.hasUidElement()) { 23009 composeOid("uid", element.getUidElement()); 23010 } 23011 if (element.hasUrlElement()) { 23012 composeUri("url", element.getUrlElement()); 23013 } 23014 if (element.hasFrame()) { 23015 for (ImagingObjectSelection.FramesComponent e : element.getFrame()) 23016 composeImagingObjectSelectionFramesComponent("frame", e); 23017 } 23018 composeElementClose(element); 23019 xml.exit(FHIR_NS, name); 23020 } 23021 } 23022 23023 protected void composeImagingObjectSelectionFramesComponent(String name, ImagingObjectSelection.FramesComponent element) throws IOException { 23024 if (element != null) { 23025 composeElementAttributes(element); 23026 xml.enter(FHIR_NS, name); 23027 composeBackboneElements(element); 23028 if (element.hasNumber()) { 23029 for (UnsignedIntType e : element.getNumber()) 23030 composeUnsignedInt("number", e); 23031 } 23032 if (element.hasUrlElement()) { 23033 composeUri("url", element.getUrlElement()); 23034 } 23035 composeElementClose(element); 23036 xml.exit(FHIR_NS, name); 23037 } 23038 } 23039 23040 protected void composeImagingStudy(String name, ImagingStudy element) throws IOException { 23041 if (element != null) { 23042 composeDomainResourceAttributes(element); 23043 xml.enter(FHIR_NS, name); 23044 composeDomainResourceElements(element); 23045 if (element.hasUidElement()) { 23046 composeOid("uid", element.getUidElement()); 23047 } 23048 if (element.hasAccession()) { 23049 composeIdentifier("accession", element.getAccession()); 23050 } 23051 if (element.hasIdentifier()) { 23052 for (Identifier e : element.getIdentifier()) 23053 composeIdentifier("identifier", e); 23054 } 23055 if (element.hasAvailabilityElement()) 23056 composeEnumeration("availability", element.getAvailabilityElement(), new ImagingStudy.InstanceAvailabilityEnumFactory()); 23057 if (element.hasModalityList()) { 23058 for (Coding e : element.getModalityList()) 23059 composeCoding("modalityList", e); 23060 } 23061 if (element.hasPatient()) { 23062 composeReference("patient", element.getPatient()); 23063 } 23064 if (element.hasStartedElement()) { 23065 composeDateTime("started", element.getStartedElement()); 23066 } 23067 if (element.hasOrder()) { 23068 for (Reference e : element.getOrder()) 23069 composeReference("order", e); 23070 } 23071 if (element.hasReferrer()) { 23072 composeReference("referrer", element.getReferrer()); 23073 } 23074 if (element.hasInterpreter()) { 23075 composeReference("interpreter", element.getInterpreter()); 23076 } 23077 if (element.hasUrlElement()) { 23078 composeUri("url", element.getUrlElement()); 23079 } 23080 if (element.hasNumberOfSeriesElement()) { 23081 composeUnsignedInt("numberOfSeries", element.getNumberOfSeriesElement()); 23082 } 23083 if (element.hasNumberOfInstancesElement()) { 23084 composeUnsignedInt("numberOfInstances", element.getNumberOfInstancesElement()); 23085 } 23086 if (element.hasProcedure()) { 23087 for (Reference e : element.getProcedure()) 23088 composeReference("procedure", e); 23089 } 23090 if (element.hasDescriptionElement()) { 23091 composeString("description", element.getDescriptionElement()); 23092 } 23093 if (element.hasSeries()) { 23094 for (ImagingStudy.ImagingStudySeriesComponent e : element.getSeries()) 23095 composeImagingStudyImagingStudySeriesComponent("series", e); 23096 } 23097 composeElementClose(element); 23098 xml.exit(FHIR_NS, name); 23099 } 23100 } 23101 23102 protected void composeImagingStudyImagingStudySeriesComponent(String name, ImagingStudy.ImagingStudySeriesComponent element) throws IOException { 23103 if (element != null) { 23104 composeElementAttributes(element); 23105 xml.enter(FHIR_NS, name); 23106 composeBackboneElements(element); 23107 if (element.hasUidElement()) { 23108 composeOid("uid", element.getUidElement()); 23109 } 23110 if (element.hasNumberElement()) { 23111 composeUnsignedInt("number", element.getNumberElement()); 23112 } 23113 if (element.hasModality()) { 23114 composeCoding("modality", element.getModality()); 23115 } 23116 if (element.hasDescriptionElement()) { 23117 composeString("description", element.getDescriptionElement()); 23118 } 23119 if (element.hasNumberOfInstancesElement()) { 23120 composeUnsignedInt("numberOfInstances", element.getNumberOfInstancesElement()); 23121 } 23122 if (element.hasAvailabilityElement()) 23123 composeEnumeration("availability", element.getAvailabilityElement(), new ImagingStudy.InstanceAvailabilityEnumFactory()); 23124 if (element.hasUrlElement()) { 23125 composeUri("url", element.getUrlElement()); 23126 } 23127 if (element.hasBodySite()) { 23128 composeCoding("bodySite", element.getBodySite()); 23129 } 23130 if (element.hasLaterality()) { 23131 composeCoding("laterality", element.getLaterality()); 23132 } 23133 if (element.hasStartedElement()) { 23134 composeDateTime("started", element.getStartedElement()); 23135 } 23136 if (element.hasInstance()) { 23137 for (ImagingStudy.ImagingStudySeriesInstanceComponent e : element.getInstance()) 23138 composeImagingStudyImagingStudySeriesInstanceComponent("instance", e); 23139 } 23140 composeElementClose(element); 23141 xml.exit(FHIR_NS, name); 23142 } 23143 } 23144 23145 protected void composeImagingStudyImagingStudySeriesInstanceComponent(String name, ImagingStudy.ImagingStudySeriesInstanceComponent element) throws IOException { 23146 if (element != null) { 23147 composeElementAttributes(element); 23148 xml.enter(FHIR_NS, name); 23149 composeBackboneElements(element); 23150 if (element.hasUidElement()) { 23151 composeOid("uid", element.getUidElement()); 23152 } 23153 if (element.hasNumberElement()) { 23154 composeUnsignedInt("number", element.getNumberElement()); 23155 } 23156 if (element.hasSopClassElement()) { 23157 composeOid("sopClass", element.getSopClassElement()); 23158 } 23159 if (element.hasTypeElement()) { 23160 composeString("type", element.getTypeElement()); 23161 } 23162 if (element.hasTitleElement()) { 23163 composeString("title", element.getTitleElement()); 23164 } 23165 if (element.hasContent()) { 23166 for (Attachment e : element.getContent()) 23167 composeAttachment("content", e); 23168 } 23169 composeElementClose(element); 23170 xml.exit(FHIR_NS, name); 23171 } 23172 } 23173 23174 protected void composeImmunization(String name, Immunization element) throws IOException { 23175 if (element != null) { 23176 composeDomainResourceAttributes(element); 23177 xml.enter(FHIR_NS, name); 23178 composeDomainResourceElements(element); 23179 if (element.hasIdentifier()) { 23180 for (Identifier e : element.getIdentifier()) 23181 composeIdentifier("identifier", e); 23182 } 23183 if (element.hasStatusElement()) { 23184 composeCode("status", element.getStatusElement()); 23185 } 23186 if (element.hasDateElement()) { 23187 composeDateTime("date", element.getDateElement()); 23188 } 23189 if (element.hasVaccineCode()) { 23190 composeCodeableConcept("vaccineCode", element.getVaccineCode()); 23191 } 23192 if (element.hasPatient()) { 23193 composeReference("patient", element.getPatient()); 23194 } 23195 if (element.hasWasNotGivenElement()) { 23196 composeBoolean("wasNotGiven", element.getWasNotGivenElement()); 23197 } 23198 if (element.hasReportedElement()) { 23199 composeBoolean("reported", element.getReportedElement()); 23200 } 23201 if (element.hasPerformer()) { 23202 composeReference("performer", element.getPerformer()); 23203 } 23204 if (element.hasRequester()) { 23205 composeReference("requester", element.getRequester()); 23206 } 23207 if (element.hasEncounter()) { 23208 composeReference("encounter", element.getEncounter()); 23209 } 23210 if (element.hasManufacturer()) { 23211 composeReference("manufacturer", element.getManufacturer()); 23212 } 23213 if (element.hasLocation()) { 23214 composeReference("location", element.getLocation()); 23215 } 23216 if (element.hasLotNumberElement()) { 23217 composeString("lotNumber", element.getLotNumberElement()); 23218 } 23219 if (element.hasExpirationDateElement()) { 23220 composeDate("expirationDate", element.getExpirationDateElement()); 23221 } 23222 if (element.hasSite()) { 23223 composeCodeableConcept("site", element.getSite()); 23224 } 23225 if (element.hasRoute()) { 23226 composeCodeableConcept("route", element.getRoute()); 23227 } 23228 if (element.hasDoseQuantity()) { 23229 composeSimpleQuantity("doseQuantity", element.getDoseQuantity()); 23230 } 23231 if (element.hasNote()) { 23232 for (Annotation e : element.getNote()) 23233 composeAnnotation("note", e); 23234 } 23235 if (element.hasExplanation()) { 23236 composeImmunizationImmunizationExplanationComponent("explanation", element.getExplanation()); 23237 } 23238 if (element.hasReaction()) { 23239 for (Immunization.ImmunizationReactionComponent e : element.getReaction()) 23240 composeImmunizationImmunizationReactionComponent("reaction", e); 23241 } 23242 if (element.hasVaccinationProtocol()) { 23243 for (Immunization.ImmunizationVaccinationProtocolComponent e : element.getVaccinationProtocol()) 23244 composeImmunizationImmunizationVaccinationProtocolComponent("vaccinationProtocol", e); 23245 } 23246 composeElementClose(element); 23247 xml.exit(FHIR_NS, name); 23248 } 23249 } 23250 23251 protected void composeImmunizationImmunizationExplanationComponent(String name, Immunization.ImmunizationExplanationComponent element) throws IOException { 23252 if (element != null) { 23253 composeElementAttributes(element); 23254 xml.enter(FHIR_NS, name); 23255 composeBackboneElements(element); 23256 if (element.hasReason()) { 23257 for (CodeableConcept e : element.getReason()) 23258 composeCodeableConcept("reason", e); 23259 } 23260 if (element.hasReasonNotGiven()) { 23261 for (CodeableConcept e : element.getReasonNotGiven()) 23262 composeCodeableConcept("reasonNotGiven", e); 23263 } 23264 composeElementClose(element); 23265 xml.exit(FHIR_NS, name); 23266 } 23267 } 23268 23269 protected void composeImmunizationImmunizationReactionComponent(String name, Immunization.ImmunizationReactionComponent element) throws IOException { 23270 if (element != null) { 23271 composeElementAttributes(element); 23272 xml.enter(FHIR_NS, name); 23273 composeBackboneElements(element); 23274 if (element.hasDateElement()) { 23275 composeDateTime("date", element.getDateElement()); 23276 } 23277 if (element.hasDetail()) { 23278 composeReference("detail", element.getDetail()); 23279 } 23280 if (element.hasReportedElement()) { 23281 composeBoolean("reported", element.getReportedElement()); 23282 } 23283 composeElementClose(element); 23284 xml.exit(FHIR_NS, name); 23285 } 23286 } 23287 23288 protected void composeImmunizationImmunizationVaccinationProtocolComponent(String name, Immunization.ImmunizationVaccinationProtocolComponent element) throws IOException { 23289 if (element != null) { 23290 composeElementAttributes(element); 23291 xml.enter(FHIR_NS, name); 23292 composeBackboneElements(element); 23293 if (element.hasDoseSequenceElement()) { 23294 composePositiveInt("doseSequence", element.getDoseSequenceElement()); 23295 } 23296 if (element.hasDescriptionElement()) { 23297 composeString("description", element.getDescriptionElement()); 23298 } 23299 if (element.hasAuthority()) { 23300 composeReference("authority", element.getAuthority()); 23301 } 23302 if (element.hasSeriesElement()) { 23303 composeString("series", element.getSeriesElement()); 23304 } 23305 if (element.hasSeriesDosesElement()) { 23306 composePositiveInt("seriesDoses", element.getSeriesDosesElement()); 23307 } 23308 if (element.hasTargetDisease()) { 23309 for (CodeableConcept e : element.getTargetDisease()) 23310 composeCodeableConcept("targetDisease", e); 23311 } 23312 if (element.hasDoseStatus()) { 23313 composeCodeableConcept("doseStatus", element.getDoseStatus()); 23314 } 23315 if (element.hasDoseStatusReason()) { 23316 composeCodeableConcept("doseStatusReason", element.getDoseStatusReason()); 23317 } 23318 composeElementClose(element); 23319 xml.exit(FHIR_NS, name); 23320 } 23321 } 23322 23323 protected void composeImmunizationRecommendation(String name, ImmunizationRecommendation element) throws IOException { 23324 if (element != null) { 23325 composeDomainResourceAttributes(element); 23326 xml.enter(FHIR_NS, name); 23327 composeDomainResourceElements(element); 23328 if (element.hasIdentifier()) { 23329 for (Identifier e : element.getIdentifier()) 23330 composeIdentifier("identifier", e); 23331 } 23332 if (element.hasPatient()) { 23333 composeReference("patient", element.getPatient()); 23334 } 23335 if (element.hasRecommendation()) { 23336 for (ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent e : element.getRecommendation()) 23337 composeImmunizationRecommendationImmunizationRecommendationRecommendationComponent("recommendation", e); 23338 } 23339 composeElementClose(element); 23340 xml.exit(FHIR_NS, name); 23341 } 23342 } 23343 23344 protected void composeImmunizationRecommendationImmunizationRecommendationRecommendationComponent(String name, ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent element) throws IOException { 23345 if (element != null) { 23346 composeElementAttributes(element); 23347 xml.enter(FHIR_NS, name); 23348 composeBackboneElements(element); 23349 if (element.hasDateElement()) { 23350 composeDateTime("date", element.getDateElement()); 23351 } 23352 if (element.hasVaccineCode()) { 23353 composeCodeableConcept("vaccineCode", element.getVaccineCode()); 23354 } 23355 if (element.hasDoseNumberElement()) { 23356 composePositiveInt("doseNumber", element.getDoseNumberElement()); 23357 } 23358 if (element.hasForecastStatus()) { 23359 composeCodeableConcept("forecastStatus", element.getForecastStatus()); 23360 } 23361 if (element.hasDateCriterion()) { 23362 for (ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent e : element.getDateCriterion()) 23363 composeImmunizationRecommendationImmunizationRecommendationRecommendationDateCriterionComponent("dateCriterion", e); 23364 } 23365 if (element.hasProtocol()) { 23366 composeImmunizationRecommendationImmunizationRecommendationRecommendationProtocolComponent("protocol", element.getProtocol()); 23367 } 23368 if (element.hasSupportingImmunization()) { 23369 for (Reference e : element.getSupportingImmunization()) 23370 composeReference("supportingImmunization", e); 23371 } 23372 if (element.hasSupportingPatientInformation()) { 23373 for (Reference e : element.getSupportingPatientInformation()) 23374 composeReference("supportingPatientInformation", e); 23375 } 23376 composeElementClose(element); 23377 xml.exit(FHIR_NS, name); 23378 } 23379 } 23380 23381 protected void composeImmunizationRecommendationImmunizationRecommendationRecommendationDateCriterionComponent(String name, ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent element) throws IOException { 23382 if (element != null) { 23383 composeElementAttributes(element); 23384 xml.enter(FHIR_NS, name); 23385 composeBackboneElements(element); 23386 if (element.hasCode()) { 23387 composeCodeableConcept("code", element.getCode()); 23388 } 23389 if (element.hasValueElement()) { 23390 composeDateTime("value", element.getValueElement()); 23391 } 23392 composeElementClose(element); 23393 xml.exit(FHIR_NS, name); 23394 } 23395 } 23396 23397 protected void composeImmunizationRecommendationImmunizationRecommendationRecommendationProtocolComponent(String name, ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent element) throws IOException { 23398 if (element != null) { 23399 composeElementAttributes(element); 23400 xml.enter(FHIR_NS, name); 23401 composeBackboneElements(element); 23402 if (element.hasDoseSequenceElement()) { 23403 composeInteger("doseSequence", element.getDoseSequenceElement()); 23404 } 23405 if (element.hasDescriptionElement()) { 23406 composeString("description", element.getDescriptionElement()); 23407 } 23408 if (element.hasAuthority()) { 23409 composeReference("authority", element.getAuthority()); 23410 } 23411 if (element.hasSeriesElement()) { 23412 composeString("series", element.getSeriesElement()); 23413 } 23414 composeElementClose(element); 23415 xml.exit(FHIR_NS, name); 23416 } 23417 } 23418 23419 protected void composeImplementationGuide(String name, ImplementationGuide element) throws IOException { 23420 if (element != null) { 23421 composeDomainResourceAttributes(element); 23422 xml.enter(FHIR_NS, name); 23423 composeDomainResourceElements(element); 23424 if (element.hasUrlElement()) { 23425 composeUri("url", element.getUrlElement()); 23426 } 23427 if (element.hasVersionElement()) { 23428 composeString("version", element.getVersionElement()); 23429 } 23430 if (element.hasNameElement()) { 23431 composeString("name", element.getNameElement()); 23432 } 23433 if (element.hasStatusElement()) 23434 composeEnumeration("status", element.getStatusElement(), new Enumerations.ConformanceResourceStatusEnumFactory()); 23435 if (element.hasExperimentalElement()) { 23436 composeBoolean("experimental", element.getExperimentalElement()); 23437 } 23438 if (element.hasPublisherElement()) { 23439 composeString("publisher", element.getPublisherElement()); 23440 } 23441 if (element.hasContact()) { 23442 for (ImplementationGuide.ImplementationGuideContactComponent e : element.getContact()) 23443 composeImplementationGuideImplementationGuideContactComponent("contact", e); 23444 } 23445 if (element.hasDateElement()) { 23446 composeDateTime("date", element.getDateElement()); 23447 } 23448 if (element.hasDescriptionElement()) { 23449 composeString("description", element.getDescriptionElement()); 23450 } 23451 if (element.hasUseContext()) { 23452 for (CodeableConcept e : element.getUseContext()) 23453 composeCodeableConcept("useContext", e); 23454 } 23455 if (element.hasCopyrightElement()) { 23456 composeString("copyright", element.getCopyrightElement()); 23457 } 23458 if (element.hasFhirVersionElement()) { 23459 composeId("fhirVersion", element.getFhirVersionElement()); 23460 } 23461 if (element.hasDependency()) { 23462 for (ImplementationGuide.ImplementationGuideDependencyComponent e : element.getDependency()) 23463 composeImplementationGuideImplementationGuideDependencyComponent("dependency", e); 23464 } 23465 if (element.hasPackage()) { 23466 for (ImplementationGuide.ImplementationGuidePackageComponent e : element.getPackage()) 23467 composeImplementationGuideImplementationGuidePackageComponent("package", e); 23468 } 23469 if (element.hasGlobal()) { 23470 for (ImplementationGuide.ImplementationGuideGlobalComponent e : element.getGlobal()) 23471 composeImplementationGuideImplementationGuideGlobalComponent("global", e); 23472 } 23473 if (element.hasBinary()) { 23474 for (UriType e : element.getBinary()) 23475 composeUri("binary", e); 23476 } 23477 if (element.hasPage()) { 23478 composeImplementationGuideImplementationGuidePageComponent("page", element.getPage()); 23479 } 23480 composeElementClose(element); 23481 xml.exit(FHIR_NS, name); 23482 } 23483 } 23484 23485 protected void composeImplementationGuideImplementationGuideContactComponent(String name, ImplementationGuide.ImplementationGuideContactComponent element) throws IOException { 23486 if (element != null) { 23487 composeElementAttributes(element); 23488 xml.enter(FHIR_NS, name); 23489 composeBackboneElements(element); 23490 if (element.hasNameElement()) { 23491 composeString("name", element.getNameElement()); 23492 } 23493 if (element.hasTelecom()) { 23494 for (ContactPoint e : element.getTelecom()) 23495 composeContactPoint("telecom", e); 23496 } 23497 composeElementClose(element); 23498 xml.exit(FHIR_NS, name); 23499 } 23500 } 23501 23502 protected void composeImplementationGuideImplementationGuideDependencyComponent(String name, ImplementationGuide.ImplementationGuideDependencyComponent element) throws IOException { 23503 if (element != null) { 23504 composeElementAttributes(element); 23505 xml.enter(FHIR_NS, name); 23506 composeBackboneElements(element); 23507 if (element.hasTypeElement()) 23508 composeEnumeration("type", element.getTypeElement(), new ImplementationGuide.GuideDependencyTypeEnumFactory()); 23509 if (element.hasUriElement()) { 23510 composeUri("uri", element.getUriElement()); 23511 } 23512 composeElementClose(element); 23513 xml.exit(FHIR_NS, name); 23514 } 23515 } 23516 23517 protected void composeImplementationGuideImplementationGuidePackageComponent(String name, ImplementationGuide.ImplementationGuidePackageComponent element) throws IOException { 23518 if (element != null) { 23519 composeElementAttributes(element); 23520 xml.enter(FHIR_NS, name); 23521 composeBackboneElements(element); 23522 if (element.hasNameElement()) { 23523 composeString("name", element.getNameElement()); 23524 } 23525 if (element.hasDescriptionElement()) { 23526 composeString("description", element.getDescriptionElement()); 23527 } 23528 if (element.hasResource()) { 23529 for (ImplementationGuide.ImplementationGuidePackageResourceComponent e : element.getResource()) 23530 composeImplementationGuideImplementationGuidePackageResourceComponent("resource", e); 23531 } 23532 composeElementClose(element); 23533 xml.exit(FHIR_NS, name); 23534 } 23535 } 23536 23537 protected void composeImplementationGuideImplementationGuidePackageResourceComponent(String name, ImplementationGuide.ImplementationGuidePackageResourceComponent element) throws IOException { 23538 if (element != null) { 23539 composeElementAttributes(element); 23540 xml.enter(FHIR_NS, name); 23541 composeBackboneElements(element); 23542 if (element.hasExampleElement()) { 23543 composeBoolean("example", element.getExampleElement()); 23544 } 23545 if (element.hasNameElement()) { 23546 composeString("name", element.getNameElement()); 23547 } 23548 if (element.hasDescriptionElement()) { 23549 composeString("description", element.getDescriptionElement()); 23550 } 23551 if (element.hasAcronymElement()) { 23552 composeString("acronym", element.getAcronymElement()); 23553 } 23554 if (element.hasSource()) { 23555 composeType("source", element.getSource()); 23556 } if (element.hasExampleFor()) { 23557 composeReference("exampleFor", element.getExampleFor()); 23558 } 23559 composeElementClose(element); 23560 xml.exit(FHIR_NS, name); 23561 } 23562 } 23563 23564 protected void composeImplementationGuideImplementationGuideGlobalComponent(String name, ImplementationGuide.ImplementationGuideGlobalComponent element) throws IOException { 23565 if (element != null) { 23566 composeElementAttributes(element); 23567 xml.enter(FHIR_NS, name); 23568 composeBackboneElements(element); 23569 if (element.hasTypeElement()) { 23570 composeCode("type", element.getTypeElement()); 23571 } 23572 if (element.hasProfile()) { 23573 composeReference("profile", element.getProfile()); 23574 } 23575 composeElementClose(element); 23576 xml.exit(FHIR_NS, name); 23577 } 23578 } 23579 23580 protected void composeImplementationGuideImplementationGuidePageComponent(String name, ImplementationGuide.ImplementationGuidePageComponent element) throws IOException { 23581 if (element != null) { 23582 composeElementAttributes(element); 23583 xml.enter(FHIR_NS, name); 23584 composeBackboneElements(element); 23585 if (element.hasSourceElement()) { 23586 composeUri("source", element.getSourceElement()); 23587 } 23588 if (element.hasNameElement()) { 23589 composeString("name", element.getNameElement()); 23590 } 23591 if (element.hasKindElement()) 23592 composeEnumeration("kind", element.getKindElement(), new ImplementationGuide.GuidePageKindEnumFactory()); 23593 if (element.hasType()) { 23594 for (CodeType e : element.getType()) 23595 composeCode("type", e); 23596 } 23597 if (element.hasPackage()) { 23598 for (StringType e : element.getPackage()) 23599 composeString("package", e); 23600 } 23601 if (element.hasFormatElement()) { 23602 composeCode("format", element.getFormatElement()); 23603 } 23604 if (element.hasPage()) { 23605 for (ImplementationGuide.ImplementationGuidePageComponent e : element.getPage()) 23606 composeImplementationGuideImplementationGuidePageComponent("page", e); 23607 } 23608 composeElementClose(element); 23609 xml.exit(FHIR_NS, name); 23610 } 23611 } 23612 23613 protected void composeLibrary(String name, Library element) throws IOException { 23614 if (element != null) { 23615 composeDomainResourceAttributes(element); 23616 xml.enter(FHIR_NS, name); 23617 composeDomainResourceElements(element); 23618 if (element.hasModuleMetadata()) { 23619 composeModuleMetadata("moduleMetadata", element.getModuleMetadata()); 23620 } 23621 if (element.hasModel()) { 23622 for (Library.LibraryModelComponent e : element.getModel()) 23623 composeLibraryLibraryModelComponent("model", e); 23624 } 23625 if (element.hasLibrary()) { 23626 for (Library.LibraryLibraryComponent e : element.getLibrary()) 23627 composeLibraryLibraryLibraryComponent("library", e); 23628 } 23629 if (element.hasCodeSystem()) { 23630 for (Library.LibraryCodeSystemComponent e : element.getCodeSystem()) 23631 composeLibraryLibraryCodeSystemComponent("codeSystem", e); 23632 } 23633 if (element.hasValueSet()) { 23634 for (Library.LibraryValueSetComponent e : element.getValueSet()) 23635 composeLibraryLibraryValueSetComponent("valueSet", e); 23636 } 23637 if (element.hasParameter()) { 23638 for (ParameterDefinition e : element.getParameter()) 23639 composeParameterDefinition("parameter", e); 23640 } 23641 if (element.hasDataRequirement()) { 23642 for (DataRequirement e : element.getDataRequirement()) 23643 composeDataRequirement("dataRequirement", e); 23644 } 23645 if (element.hasDocument()) { 23646 composeAttachment("document", element.getDocument()); 23647 } 23648 composeElementClose(element); 23649 xml.exit(FHIR_NS, name); 23650 } 23651 } 23652 23653 protected void composeLibraryLibraryModelComponent(String name, Library.LibraryModelComponent element) throws IOException { 23654 if (element != null) { 23655 composeElementAttributes(element); 23656 xml.enter(FHIR_NS, name); 23657 composeBackboneElements(element); 23658 if (element.hasNameElement()) { 23659 composeString("name", element.getNameElement()); 23660 } 23661 if (element.hasIdentifierElement()) { 23662 composeString("identifier", element.getIdentifierElement()); 23663 } 23664 if (element.hasVersionElement()) { 23665 composeString("version", element.getVersionElement()); 23666 } 23667 composeElementClose(element); 23668 xml.exit(FHIR_NS, name); 23669 } 23670 } 23671 23672 protected void composeLibraryLibraryLibraryComponent(String name, Library.LibraryLibraryComponent element) throws IOException { 23673 if (element != null) { 23674 composeElementAttributes(element); 23675 xml.enter(FHIR_NS, name); 23676 composeBackboneElements(element); 23677 if (element.hasNameElement()) { 23678 composeString("name", element.getNameElement()); 23679 } 23680 if (element.hasIdentifierElement()) { 23681 composeString("identifier", element.getIdentifierElement()); 23682 } 23683 if (element.hasVersionElement()) { 23684 composeString("version", element.getVersionElement()); 23685 } 23686 if (element.hasDocument()) { 23687 composeType("document", element.getDocument()); 23688 } composeElementClose(element); 23689 xml.exit(FHIR_NS, name); 23690 } 23691 } 23692 23693 protected void composeLibraryLibraryCodeSystemComponent(String name, Library.LibraryCodeSystemComponent element) throws IOException { 23694 if (element != null) { 23695 composeElementAttributes(element); 23696 xml.enter(FHIR_NS, name); 23697 composeBackboneElements(element); 23698 if (element.hasNameElement()) { 23699 composeString("name", element.getNameElement()); 23700 } 23701 if (element.hasIdentifierElement()) { 23702 composeString("identifier", element.getIdentifierElement()); 23703 } 23704 if (element.hasVersionElement()) { 23705 composeString("version", element.getVersionElement()); 23706 } 23707 composeElementClose(element); 23708 xml.exit(FHIR_NS, name); 23709 } 23710 } 23711 23712 protected void composeLibraryLibraryValueSetComponent(String name, Library.LibraryValueSetComponent element) throws IOException { 23713 if (element != null) { 23714 composeElementAttributes(element); 23715 xml.enter(FHIR_NS, name); 23716 composeBackboneElements(element); 23717 if (element.hasNameElement()) { 23718 composeString("name", element.getNameElement()); 23719 } 23720 if (element.hasIdentifierElement()) { 23721 composeString("identifier", element.getIdentifierElement()); 23722 } 23723 if (element.hasVersionElement()) { 23724 composeString("version", element.getVersionElement()); 23725 } 23726 if (element.hasCodeSystem()) { 23727 for (StringType e : element.getCodeSystem()) 23728 composeString("codeSystem", e); 23729 } 23730 composeElementClose(element); 23731 xml.exit(FHIR_NS, name); 23732 } 23733 } 23734 23735 protected void composeLinkage(String name, Linkage element) throws IOException { 23736 if (element != null) { 23737 composeDomainResourceAttributes(element); 23738 xml.enter(FHIR_NS, name); 23739 composeDomainResourceElements(element); 23740 if (element.hasAuthor()) { 23741 composeReference("author", element.getAuthor()); 23742 } 23743 if (element.hasItem()) { 23744 for (Linkage.LinkageItemComponent e : element.getItem()) 23745 composeLinkageLinkageItemComponent("item", e); 23746 } 23747 composeElementClose(element); 23748 xml.exit(FHIR_NS, name); 23749 } 23750 } 23751 23752 protected void composeLinkageLinkageItemComponent(String name, Linkage.LinkageItemComponent element) throws IOException { 23753 if (element != null) { 23754 composeElementAttributes(element); 23755 xml.enter(FHIR_NS, name); 23756 composeBackboneElements(element); 23757 if (element.hasTypeElement()) 23758 composeEnumeration("type", element.getTypeElement(), new Linkage.LinkageTypeEnumFactory()); 23759 if (element.hasResource()) { 23760 composeReference("resource", element.getResource()); 23761 } 23762 composeElementClose(element); 23763 xml.exit(FHIR_NS, name); 23764 } 23765 } 23766 23767 protected void composeListResource(String name, ListResource element) throws IOException { 23768 if (element != null) { 23769 composeDomainResourceAttributes(element); 23770 xml.enter(FHIR_NS, name); 23771 composeDomainResourceElements(element); 23772 if (element.hasIdentifier()) { 23773 for (Identifier e : element.getIdentifier()) 23774 composeIdentifier("identifier", e); 23775 } 23776 if (element.hasStatusElement()) 23777 composeEnumeration("status", element.getStatusElement(), new ListResource.ListStatusEnumFactory()); 23778 if (element.hasModeElement()) 23779 composeEnumeration("mode", element.getModeElement(), new ListResource.ListModeEnumFactory()); 23780 if (element.hasTitleElement()) { 23781 composeString("title", element.getTitleElement()); 23782 } 23783 if (element.hasCode()) { 23784 composeCodeableConcept("code", element.getCode()); 23785 } 23786 if (element.hasSubject()) { 23787 composeReference("subject", element.getSubject()); 23788 } 23789 if (element.hasEncounter()) { 23790 composeReference("encounter", element.getEncounter()); 23791 } 23792 if (element.hasDateElement()) { 23793 composeDateTime("date", element.getDateElement()); 23794 } 23795 if (element.hasSource()) { 23796 composeReference("source", element.getSource()); 23797 } 23798 if (element.hasOrderedBy()) { 23799 composeCodeableConcept("orderedBy", element.getOrderedBy()); 23800 } 23801 if (element.hasNote()) { 23802 for (Annotation e : element.getNote()) 23803 composeAnnotation("note", e); 23804 } 23805 if (element.hasEntry()) { 23806 for (ListResource.ListEntryComponent e : element.getEntry()) 23807 composeListResourceListEntryComponent("entry", e); 23808 } 23809 if (element.hasEmptyReason()) { 23810 composeCodeableConcept("emptyReason", element.getEmptyReason()); 23811 } 23812 composeElementClose(element); 23813 xml.exit(FHIR_NS, name); 23814 } 23815 } 23816 23817 protected void composeListResourceListEntryComponent(String name, ListResource.ListEntryComponent element) throws IOException { 23818 if (element != null) { 23819 composeElementAttributes(element); 23820 xml.enter(FHIR_NS, name); 23821 composeBackboneElements(element); 23822 if (element.hasFlag()) { 23823 composeCodeableConcept("flag", element.getFlag()); 23824 } 23825 if (element.hasDeletedElement()) { 23826 composeBoolean("deleted", element.getDeletedElement()); 23827 } 23828 if (element.hasDateElement()) { 23829 composeDateTime("date", element.getDateElement()); 23830 } 23831 if (element.hasItem()) { 23832 composeReference("item", element.getItem()); 23833 } 23834 composeElementClose(element); 23835 xml.exit(FHIR_NS, name); 23836 } 23837 } 23838 23839 protected void composeLocation(String name, Location element) throws IOException { 23840 if (element != null) { 23841 composeDomainResourceAttributes(element); 23842 xml.enter(FHIR_NS, name); 23843 composeDomainResourceElements(element); 23844 if (element.hasIdentifier()) { 23845 for (Identifier e : element.getIdentifier()) 23846 composeIdentifier("identifier", e); 23847 } 23848 if (element.hasStatusElement()) 23849 composeEnumeration("status", element.getStatusElement(), new Location.LocationStatusEnumFactory()); 23850 if (element.hasNameElement()) { 23851 composeString("name", element.getNameElement()); 23852 } 23853 if (element.hasDescriptionElement()) { 23854 composeString("description", element.getDescriptionElement()); 23855 } 23856 if (element.hasModeElement()) 23857 composeEnumeration("mode", element.getModeElement(), new Location.LocationModeEnumFactory()); 23858 if (element.hasType()) { 23859 composeCodeableConcept("type", element.getType()); 23860 } 23861 if (element.hasTelecom()) { 23862 for (ContactPoint e : element.getTelecom()) 23863 composeContactPoint("telecom", e); 23864 } 23865 if (element.hasAddress()) { 23866 composeAddress("address", element.getAddress()); 23867 } 23868 if (element.hasPhysicalType()) { 23869 composeCodeableConcept("physicalType", element.getPhysicalType()); 23870 } 23871 if (element.hasPosition()) { 23872 composeLocationLocationPositionComponent("position", element.getPosition()); 23873 } 23874 if (element.hasManagingOrganization()) { 23875 composeReference("managingOrganization", element.getManagingOrganization()); 23876 } 23877 if (element.hasPartOf()) { 23878 composeReference("partOf", element.getPartOf()); 23879 } 23880 composeElementClose(element); 23881 xml.exit(FHIR_NS, name); 23882 } 23883 } 23884 23885 protected void composeLocationLocationPositionComponent(String name, Location.LocationPositionComponent element) throws IOException { 23886 if (element != null) { 23887 composeElementAttributes(element); 23888 xml.enter(FHIR_NS, name); 23889 composeBackboneElements(element); 23890 if (element.hasLongitudeElement()) { 23891 composeDecimal("longitude", element.getLongitudeElement()); 23892 } 23893 if (element.hasLatitudeElement()) { 23894 composeDecimal("latitude", element.getLatitudeElement()); 23895 } 23896 if (element.hasAltitudeElement()) { 23897 composeDecimal("altitude", element.getAltitudeElement()); 23898 } 23899 composeElementClose(element); 23900 xml.exit(FHIR_NS, name); 23901 } 23902 } 23903 23904 protected void composeMeasure(String name, Measure element) throws IOException { 23905 if (element != null) { 23906 composeDomainResourceAttributes(element); 23907 xml.enter(FHIR_NS, name); 23908 composeDomainResourceElements(element); 23909 if (element.hasModuleMetadata()) { 23910 composeModuleMetadata("moduleMetadata", element.getModuleMetadata()); 23911 } 23912 if (element.hasLibrary()) { 23913 for (Reference e : element.getLibrary()) 23914 composeReference("library", e); 23915 } 23916 if (element.hasDisclaimerElement()) { 23917 composeMarkdown("disclaimer", element.getDisclaimerElement()); 23918 } 23919 if (element.hasScoringElement()) 23920 composeEnumeration("scoring", element.getScoringElement(), new Measure.MeasureScoringEnumFactory()); 23921 if (element.hasType()) 23922 for (Enumeration<Measure.MeasureType> e : element.getType()) 23923 composeEnumeration("type", e, new Measure.MeasureTypeEnumFactory()); 23924 if (element.hasRiskAdjustmentElement()) { 23925 composeString("riskAdjustment", element.getRiskAdjustmentElement()); 23926 } 23927 if (element.hasRateAggregationElement()) { 23928 composeString("rateAggregation", element.getRateAggregationElement()); 23929 } 23930 if (element.hasRationaleElement()) { 23931 composeMarkdown("rationale", element.getRationaleElement()); 23932 } 23933 if (element.hasClinicalRecommendationStatementElement()) { 23934 composeMarkdown("clinicalRecommendationStatement", element.getClinicalRecommendationStatementElement()); 23935 } 23936 if (element.hasImprovementNotationElement()) { 23937 composeString("improvementNotation", element.getImprovementNotationElement()); 23938 } 23939 if (element.hasDefinitionElement()) { 23940 composeMarkdown("definition", element.getDefinitionElement()); 23941 } 23942 if (element.hasGuidanceElement()) { 23943 composeMarkdown("guidance", element.getGuidanceElement()); 23944 } 23945 if (element.hasSetElement()) { 23946 composeString("set", element.getSetElement()); 23947 } 23948 if (element.hasGroup()) { 23949 for (Measure.MeasureGroupComponent e : element.getGroup()) 23950 composeMeasureMeasureGroupComponent("group", e); 23951 } 23952 if (element.hasSupplementalData()) { 23953 for (Measure.MeasureSupplementalDataComponent e : element.getSupplementalData()) 23954 composeMeasureMeasureSupplementalDataComponent("supplementalData", e); 23955 } 23956 composeElementClose(element); 23957 xml.exit(FHIR_NS, name); 23958 } 23959 } 23960 23961 protected void composeMeasureMeasureGroupComponent(String name, Measure.MeasureGroupComponent element) throws IOException { 23962 if (element != null) { 23963 composeElementAttributes(element); 23964 xml.enter(FHIR_NS, name); 23965 composeBackboneElements(element); 23966 if (element.hasIdentifier()) { 23967 composeIdentifier("identifier", element.getIdentifier()); 23968 } 23969 if (element.hasNameElement()) { 23970 composeString("name", element.getNameElement()); 23971 } 23972 if (element.hasDescriptionElement()) { 23973 composeString("description", element.getDescriptionElement()); 23974 } 23975 if (element.hasPopulation()) { 23976 for (Measure.MeasureGroupPopulationComponent e : element.getPopulation()) 23977 composeMeasureMeasureGroupPopulationComponent("population", e); 23978 } 23979 if (element.hasStratifier()) { 23980 for (Measure.MeasureGroupStratifierComponent e : element.getStratifier()) 23981 composeMeasureMeasureGroupStratifierComponent("stratifier", e); 23982 } 23983 composeElementClose(element); 23984 xml.exit(FHIR_NS, name); 23985 } 23986 } 23987 23988 protected void composeMeasureMeasureGroupPopulationComponent(String name, Measure.MeasureGroupPopulationComponent element) throws IOException { 23989 if (element != null) { 23990 composeElementAttributes(element); 23991 xml.enter(FHIR_NS, name); 23992 composeBackboneElements(element); 23993 if (element.hasTypeElement()) 23994 composeEnumeration("type", element.getTypeElement(), new Measure.MeasurePopulationTypeEnumFactory()); 23995 if (element.hasIdentifier()) { 23996 composeIdentifier("identifier", element.getIdentifier()); 23997 } 23998 if (element.hasNameElement()) { 23999 composeString("name", element.getNameElement()); 24000 } 24001 if (element.hasDescriptionElement()) { 24002 composeString("description", element.getDescriptionElement()); 24003 } 24004 if (element.hasCriteriaElement()) { 24005 composeString("criteria", element.getCriteriaElement()); 24006 } 24007 composeElementClose(element); 24008 xml.exit(FHIR_NS, name); 24009 } 24010 } 24011 24012 protected void composeMeasureMeasureGroupStratifierComponent(String name, Measure.MeasureGroupStratifierComponent element) throws IOException { 24013 if (element != null) { 24014 composeElementAttributes(element); 24015 xml.enter(FHIR_NS, name); 24016 composeBackboneElements(element); 24017 if (element.hasIdentifier()) { 24018 composeIdentifier("identifier", element.getIdentifier()); 24019 } 24020 if (element.hasCriteriaElement()) { 24021 composeString("criteria", element.getCriteriaElement()); 24022 } 24023 if (element.hasPathElement()) { 24024 composeString("path", element.getPathElement()); 24025 } 24026 composeElementClose(element); 24027 xml.exit(FHIR_NS, name); 24028 } 24029 } 24030 24031 protected void composeMeasureMeasureSupplementalDataComponent(String name, Measure.MeasureSupplementalDataComponent element) throws IOException { 24032 if (element != null) { 24033 composeElementAttributes(element); 24034 xml.enter(FHIR_NS, name); 24035 composeBackboneElements(element); 24036 if (element.hasIdentifier()) { 24037 composeIdentifier("identifier", element.getIdentifier()); 24038 } 24039 if (element.hasUsage()) 24040 for (Enumeration<Measure.MeasureDataUsage> e : element.getUsage()) 24041 composeEnumeration("usage", e, new Measure.MeasureDataUsageEnumFactory()); 24042 if (element.hasCriteriaElement()) { 24043 composeString("criteria", element.getCriteriaElement()); 24044 } 24045 if (element.hasPathElement()) { 24046 composeString("path", element.getPathElement()); 24047 } 24048 composeElementClose(element); 24049 xml.exit(FHIR_NS, name); 24050 } 24051 } 24052 24053 protected void composeMeasureReport(String name, MeasureReport element) throws IOException { 24054 if (element != null) { 24055 composeDomainResourceAttributes(element); 24056 xml.enter(FHIR_NS, name); 24057 composeDomainResourceElements(element); 24058 if (element.hasMeasure()) { 24059 composeReference("measure", element.getMeasure()); 24060 } 24061 if (element.hasTypeElement()) 24062 composeEnumeration("type", element.getTypeElement(), new MeasureReport.MeasureReportTypeEnumFactory()); 24063 if (element.hasPatient()) { 24064 composeReference("patient", element.getPatient()); 24065 } 24066 if (element.hasPeriod()) { 24067 composePeriod("period", element.getPeriod()); 24068 } 24069 if (element.hasStatusElement()) 24070 composeEnumeration("status", element.getStatusElement(), new MeasureReport.MeasureReportStatusEnumFactory()); 24071 if (element.hasDateElement()) { 24072 composeDateTime("date", element.getDateElement()); 24073 } 24074 if (element.hasReportingOrganization()) { 24075 composeReference("reportingOrganization", element.getReportingOrganization()); 24076 } 24077 if (element.hasGroup()) { 24078 for (MeasureReport.MeasureReportGroupComponent e : element.getGroup()) 24079 composeMeasureReportMeasureReportGroupComponent("group", e); 24080 } 24081 if (element.hasEvaluatedResources()) { 24082 composeReference("evaluatedResources", element.getEvaluatedResources()); 24083 } 24084 composeElementClose(element); 24085 xml.exit(FHIR_NS, name); 24086 } 24087 } 24088 24089 protected void composeMeasureReportMeasureReportGroupComponent(String name, MeasureReport.MeasureReportGroupComponent element) throws IOException { 24090 if (element != null) { 24091 composeElementAttributes(element); 24092 xml.enter(FHIR_NS, name); 24093 composeBackboneElements(element); 24094 if (element.hasIdentifier()) { 24095 composeIdentifier("identifier", element.getIdentifier()); 24096 } 24097 if (element.hasPopulation()) { 24098 for (MeasureReport.MeasureReportGroupPopulationComponent e : element.getPopulation()) 24099 composeMeasureReportMeasureReportGroupPopulationComponent("population", e); 24100 } 24101 if (element.hasMeasureScoreElement()) { 24102 composeDecimal("measureScore", element.getMeasureScoreElement()); 24103 } 24104 if (element.hasStratifier()) { 24105 for (MeasureReport.MeasureReportGroupStratifierComponent e : element.getStratifier()) 24106 composeMeasureReportMeasureReportGroupStratifierComponent("stratifier", e); 24107 } 24108 if (element.hasSupplementalData()) { 24109 for (MeasureReport.MeasureReportGroupSupplementalDataComponent e : element.getSupplementalData()) 24110 composeMeasureReportMeasureReportGroupSupplementalDataComponent("supplementalData", e); 24111 } 24112 composeElementClose(element); 24113 xml.exit(FHIR_NS, name); 24114 } 24115 } 24116 24117 protected void composeMeasureReportMeasureReportGroupPopulationComponent(String name, MeasureReport.MeasureReportGroupPopulationComponent element) throws IOException { 24118 if (element != null) { 24119 composeElementAttributes(element); 24120 xml.enter(FHIR_NS, name); 24121 composeBackboneElements(element); 24122 if (element.hasTypeElement()) { 24123 composeCode("type", element.getTypeElement()); 24124 } 24125 if (element.hasCountElement()) { 24126 composeInteger("count", element.getCountElement()); 24127 } 24128 if (element.hasPatients()) { 24129 composeReference("patients", element.getPatients()); 24130 } 24131 composeElementClose(element); 24132 xml.exit(FHIR_NS, name); 24133 } 24134 } 24135 24136 protected void composeMeasureReportMeasureReportGroupStratifierComponent(String name, MeasureReport.MeasureReportGroupStratifierComponent element) throws IOException { 24137 if (element != null) { 24138 composeElementAttributes(element); 24139 xml.enter(FHIR_NS, name); 24140 composeBackboneElements(element); 24141 if (element.hasIdentifier()) { 24142 composeIdentifier("identifier", element.getIdentifier()); 24143 } 24144 if (element.hasGroup()) { 24145 for (MeasureReport.MeasureReportGroupStratifierGroupComponent e : element.getGroup()) 24146 composeMeasureReportMeasureReportGroupStratifierGroupComponent("group", e); 24147 } 24148 composeElementClose(element); 24149 xml.exit(FHIR_NS, name); 24150 } 24151 } 24152 24153 protected void composeMeasureReportMeasureReportGroupStratifierGroupComponent(String name, MeasureReport.MeasureReportGroupStratifierGroupComponent element) throws IOException { 24154 if (element != null) { 24155 composeElementAttributes(element); 24156 xml.enter(FHIR_NS, name); 24157 composeBackboneElements(element); 24158 if (element.hasValueElement()) { 24159 composeString("value", element.getValueElement()); 24160 } 24161 if (element.hasPopulation()) { 24162 for (MeasureReport.MeasureReportGroupStratifierGroupPopulationComponent e : element.getPopulation()) 24163 composeMeasureReportMeasureReportGroupStratifierGroupPopulationComponent("population", e); 24164 } 24165 if (element.hasMeasureScoreElement()) { 24166 composeDecimal("measureScore", element.getMeasureScoreElement()); 24167 } 24168 composeElementClose(element); 24169 xml.exit(FHIR_NS, name); 24170 } 24171 } 24172 24173 protected void composeMeasureReportMeasureReportGroupStratifierGroupPopulationComponent(String name, MeasureReport.MeasureReportGroupStratifierGroupPopulationComponent element) throws IOException { 24174 if (element != null) { 24175 composeElementAttributes(element); 24176 xml.enter(FHIR_NS, name); 24177 composeBackboneElements(element); 24178 if (element.hasTypeElement()) { 24179 composeCode("type", element.getTypeElement()); 24180 } 24181 if (element.hasCountElement()) { 24182 composeInteger("count", element.getCountElement()); 24183 } 24184 if (element.hasPatients()) { 24185 composeReference("patients", element.getPatients()); 24186 } 24187 composeElementClose(element); 24188 xml.exit(FHIR_NS, name); 24189 } 24190 } 24191 24192 protected void composeMeasureReportMeasureReportGroupSupplementalDataComponent(String name, MeasureReport.MeasureReportGroupSupplementalDataComponent element) throws IOException { 24193 if (element != null) { 24194 composeElementAttributes(element); 24195 xml.enter(FHIR_NS, name); 24196 composeBackboneElements(element); 24197 if (element.hasIdentifier()) { 24198 composeIdentifier("identifier", element.getIdentifier()); 24199 } 24200 if (element.hasGroup()) { 24201 for (MeasureReport.MeasureReportGroupSupplementalDataGroupComponent e : element.getGroup()) 24202 composeMeasureReportMeasureReportGroupSupplementalDataGroupComponent("group", e); 24203 } 24204 composeElementClose(element); 24205 xml.exit(FHIR_NS, name); 24206 } 24207 } 24208 24209 protected void composeMeasureReportMeasureReportGroupSupplementalDataGroupComponent(String name, MeasureReport.MeasureReportGroupSupplementalDataGroupComponent element) throws IOException { 24210 if (element != null) { 24211 composeElementAttributes(element); 24212 xml.enter(FHIR_NS, name); 24213 composeBackboneElements(element); 24214 if (element.hasValueElement()) { 24215 composeString("value", element.getValueElement()); 24216 } 24217 if (element.hasCountElement()) { 24218 composeInteger("count", element.getCountElement()); 24219 } 24220 if (element.hasPatients()) { 24221 composeReference("patients", element.getPatients()); 24222 } 24223 composeElementClose(element); 24224 xml.exit(FHIR_NS, name); 24225 } 24226 } 24227 24228 protected void composeMedia(String name, Media element) throws IOException { 24229 if (element != null) { 24230 composeDomainResourceAttributes(element); 24231 xml.enter(FHIR_NS, name); 24232 composeDomainResourceElements(element); 24233 if (element.hasIdentifier()) { 24234 for (Identifier e : element.getIdentifier()) 24235 composeIdentifier("identifier", e); 24236 } 24237 if (element.hasTypeElement()) 24238 composeEnumeration("type", element.getTypeElement(), new Media.DigitalMediaTypeEnumFactory()); 24239 if (element.hasSubtype()) { 24240 composeCodeableConcept("subtype", element.getSubtype()); 24241 } 24242 if (element.hasView()) { 24243 composeCodeableConcept("view", element.getView()); 24244 } 24245 if (element.hasSubject()) { 24246 composeReference("subject", element.getSubject()); 24247 } 24248 if (element.hasOperator()) { 24249 composeReference("operator", element.getOperator()); 24250 } 24251 if (element.hasDeviceNameElement()) { 24252 composeString("deviceName", element.getDeviceNameElement()); 24253 } 24254 if (element.hasHeightElement()) { 24255 composePositiveInt("height", element.getHeightElement()); 24256 } 24257 if (element.hasWidthElement()) { 24258 composePositiveInt("width", element.getWidthElement()); 24259 } 24260 if (element.hasFramesElement()) { 24261 composePositiveInt("frames", element.getFramesElement()); 24262 } 24263 if (element.hasDurationElement()) { 24264 composeUnsignedInt("duration", element.getDurationElement()); 24265 } 24266 if (element.hasContent()) { 24267 composeAttachment("content", element.getContent()); 24268 } 24269 composeElementClose(element); 24270 xml.exit(FHIR_NS, name); 24271 } 24272 } 24273 24274 protected void composeMedication(String name, Medication element) throws IOException { 24275 if (element != null) { 24276 composeDomainResourceAttributes(element); 24277 xml.enter(FHIR_NS, name); 24278 composeDomainResourceElements(element); 24279 if (element.hasCode()) { 24280 composeCodeableConcept("code", element.getCode()); 24281 } 24282 if (element.hasIsBrandElement()) { 24283 composeBoolean("isBrand", element.getIsBrandElement()); 24284 } 24285 if (element.hasManufacturer()) { 24286 composeReference("manufacturer", element.getManufacturer()); 24287 } 24288 if (element.hasProduct()) { 24289 composeMedicationMedicationProductComponent("product", element.getProduct()); 24290 } 24291 if (element.hasPackage()) { 24292 composeMedicationMedicationPackageComponent("package", element.getPackage()); 24293 } 24294 composeElementClose(element); 24295 xml.exit(FHIR_NS, name); 24296 } 24297 } 24298 24299 protected void composeMedicationMedicationProductComponent(String name, Medication.MedicationProductComponent element) throws IOException { 24300 if (element != null) { 24301 composeElementAttributes(element); 24302 xml.enter(FHIR_NS, name); 24303 composeBackboneElements(element); 24304 if (element.hasForm()) { 24305 composeCodeableConcept("form", element.getForm()); 24306 } 24307 if (element.hasIngredient()) { 24308 for (Medication.MedicationProductIngredientComponent e : element.getIngredient()) 24309 composeMedicationMedicationProductIngredientComponent("ingredient", e); 24310 } 24311 if (element.hasBatch()) { 24312 for (Medication.MedicationProductBatchComponent e : element.getBatch()) 24313 composeMedicationMedicationProductBatchComponent("batch", e); 24314 } 24315 composeElementClose(element); 24316 xml.exit(FHIR_NS, name); 24317 } 24318 } 24319 24320 protected void composeMedicationMedicationProductIngredientComponent(String name, Medication.MedicationProductIngredientComponent element) throws IOException { 24321 if (element != null) { 24322 composeElementAttributes(element); 24323 xml.enter(FHIR_NS, name); 24324 composeBackboneElements(element); 24325 if (element.hasItem()) { 24326 composeType("item", element.getItem()); 24327 } if (element.hasAmount()) { 24328 composeRatio("amount", element.getAmount()); 24329 } 24330 composeElementClose(element); 24331 xml.exit(FHIR_NS, name); 24332 } 24333 } 24334 24335 protected void composeMedicationMedicationProductBatchComponent(String name, Medication.MedicationProductBatchComponent element) throws IOException { 24336 if (element != null) { 24337 composeElementAttributes(element); 24338 xml.enter(FHIR_NS, name); 24339 composeBackboneElements(element); 24340 if (element.hasLotNumberElement()) { 24341 composeString("lotNumber", element.getLotNumberElement()); 24342 } 24343 if (element.hasExpirationDateElement()) { 24344 composeDateTime("expirationDate", element.getExpirationDateElement()); 24345 } 24346 composeElementClose(element); 24347 xml.exit(FHIR_NS, name); 24348 } 24349 } 24350 24351 protected void composeMedicationMedicationPackageComponent(String name, Medication.MedicationPackageComponent element) throws IOException { 24352 if (element != null) { 24353 composeElementAttributes(element); 24354 xml.enter(FHIR_NS, name); 24355 composeBackboneElements(element); 24356 if (element.hasContainer()) { 24357 composeCodeableConcept("container", element.getContainer()); 24358 } 24359 if (element.hasContent()) { 24360 for (Medication.MedicationPackageContentComponent e : element.getContent()) 24361 composeMedicationMedicationPackageContentComponent("content", e); 24362 } 24363 composeElementClose(element); 24364 xml.exit(FHIR_NS, name); 24365 } 24366 } 24367 24368 protected void composeMedicationMedicationPackageContentComponent(String name, Medication.MedicationPackageContentComponent element) throws IOException { 24369 if (element != null) { 24370 composeElementAttributes(element); 24371 xml.enter(FHIR_NS, name); 24372 composeBackboneElements(element); 24373 if (element.hasItem()) { 24374 composeType("item", element.getItem()); 24375 } if (element.hasAmount()) { 24376 composeSimpleQuantity("amount", element.getAmount()); 24377 } 24378 composeElementClose(element); 24379 xml.exit(FHIR_NS, name); 24380 } 24381 } 24382 24383 protected void composeMedicationAdministration(String name, MedicationAdministration element) throws IOException { 24384 if (element != null) { 24385 composeDomainResourceAttributes(element); 24386 xml.enter(FHIR_NS, name); 24387 composeDomainResourceElements(element); 24388 if (element.hasIdentifier()) { 24389 for (Identifier e : element.getIdentifier()) 24390 composeIdentifier("identifier", e); 24391 } 24392 if (element.hasStatusElement()) 24393 composeEnumeration("status", element.getStatusElement(), new MedicationAdministration.MedicationAdministrationStatusEnumFactory()); 24394 if (element.hasMedication()) { 24395 composeType("medication", element.getMedication()); 24396 } if (element.hasPatient()) { 24397 composeReference("patient", element.getPatient()); 24398 } 24399 if (element.hasEncounter()) { 24400 composeReference("encounter", element.getEncounter()); 24401 } 24402 if (element.hasEffectiveTime()) { 24403 composeType("effectiveTime", element.getEffectiveTime()); 24404 } if (element.hasPractitioner()) { 24405 composeReference("practitioner", element.getPractitioner()); 24406 } 24407 if (element.hasPrescription()) { 24408 composeReference("prescription", element.getPrescription()); 24409 } 24410 if (element.hasWasNotGivenElement()) { 24411 composeBoolean("wasNotGiven", element.getWasNotGivenElement()); 24412 } 24413 if (element.hasReasonNotGiven()) { 24414 for (CodeableConcept e : element.getReasonNotGiven()) 24415 composeCodeableConcept("reasonNotGiven", e); 24416 } 24417 if (element.hasReasonGiven()) { 24418 for (CodeableConcept e : element.getReasonGiven()) 24419 composeCodeableConcept("reasonGiven", e); 24420 } 24421 if (element.hasDevice()) { 24422 for (Reference e : element.getDevice()) 24423 composeReference("device", e); 24424 } 24425 if (element.hasNote()) { 24426 for (Annotation e : element.getNote()) 24427 composeAnnotation("note", e); 24428 } 24429 if (element.hasDosage()) { 24430 composeMedicationAdministrationMedicationAdministrationDosageComponent("dosage", element.getDosage()); 24431 } 24432 composeElementClose(element); 24433 xml.exit(FHIR_NS, name); 24434 } 24435 } 24436 24437 protected void composeMedicationAdministrationMedicationAdministrationDosageComponent(String name, MedicationAdministration.MedicationAdministrationDosageComponent element) throws IOException { 24438 if (element != null) { 24439 composeElementAttributes(element); 24440 xml.enter(FHIR_NS, name); 24441 composeBackboneElements(element); 24442 if (element.hasTextElement()) { 24443 composeString("text", element.getTextElement()); 24444 } 24445 if (element.hasSite()) { 24446 composeType("site", element.getSite()); 24447 } if (element.hasRoute()) { 24448 composeCodeableConcept("route", element.getRoute()); 24449 } 24450 if (element.hasMethod()) { 24451 composeCodeableConcept("method", element.getMethod()); 24452 } 24453 if (element.hasQuantity()) { 24454 composeSimpleQuantity("quantity", element.getQuantity()); 24455 } 24456 if (element.hasRate()) { 24457 composeType("rate", element.getRate()); 24458 } composeElementClose(element); 24459 xml.exit(FHIR_NS, name); 24460 } 24461 } 24462 24463 protected void composeMedicationDispense(String name, MedicationDispense element) throws IOException { 24464 if (element != null) { 24465 composeDomainResourceAttributes(element); 24466 xml.enter(FHIR_NS, name); 24467 composeDomainResourceElements(element); 24468 if (element.hasIdentifier()) { 24469 composeIdentifier("identifier", element.getIdentifier()); 24470 } 24471 if (element.hasStatusElement()) 24472 composeEnumeration("status", element.getStatusElement(), new MedicationDispense.MedicationDispenseStatusEnumFactory()); 24473 if (element.hasMedication()) { 24474 composeType("medication", element.getMedication()); 24475 } if (element.hasPatient()) { 24476 composeReference("patient", element.getPatient()); 24477 } 24478 if (element.hasDispenser()) { 24479 composeReference("dispenser", element.getDispenser()); 24480 } 24481 if (element.hasAuthorizingPrescription()) { 24482 for (Reference e : element.getAuthorizingPrescription()) 24483 composeReference("authorizingPrescription", e); 24484 } 24485 if (element.hasType()) { 24486 composeCodeableConcept("type", element.getType()); 24487 } 24488 if (element.hasQuantity()) { 24489 composeSimpleQuantity("quantity", element.getQuantity()); 24490 } 24491 if (element.hasDaysSupply()) { 24492 composeSimpleQuantity("daysSupply", element.getDaysSupply()); 24493 } 24494 if (element.hasWhenPreparedElement()) { 24495 composeDateTime("whenPrepared", element.getWhenPreparedElement()); 24496 } 24497 if (element.hasWhenHandedOverElement()) { 24498 composeDateTime("whenHandedOver", element.getWhenHandedOverElement()); 24499 } 24500 if (element.hasDestination()) { 24501 composeReference("destination", element.getDestination()); 24502 } 24503 if (element.hasReceiver()) { 24504 for (Reference e : element.getReceiver()) 24505 composeReference("receiver", e); 24506 } 24507 if (element.hasNote()) { 24508 for (Annotation e : element.getNote()) 24509 composeAnnotation("note", e); 24510 } 24511 if (element.hasDosageInstruction()) { 24512 for (MedicationDispense.MedicationDispenseDosageInstructionComponent e : element.getDosageInstruction()) 24513 composeMedicationDispenseMedicationDispenseDosageInstructionComponent("dosageInstruction", e); 24514 } 24515 if (element.hasSubstitution()) { 24516 composeMedicationDispenseMedicationDispenseSubstitutionComponent("substitution", element.getSubstitution()); 24517 } 24518 composeElementClose(element); 24519 xml.exit(FHIR_NS, name); 24520 } 24521 } 24522 24523 protected void composeMedicationDispenseMedicationDispenseDosageInstructionComponent(String name, MedicationDispense.MedicationDispenseDosageInstructionComponent element) throws IOException { 24524 if (element != null) { 24525 composeElementAttributes(element); 24526 xml.enter(FHIR_NS, name); 24527 composeBackboneElements(element); 24528 if (element.hasTextElement()) { 24529 composeString("text", element.getTextElement()); 24530 } 24531 if (element.hasAdditionalInstructions()) { 24532 composeCodeableConcept("additionalInstructions", element.getAdditionalInstructions()); 24533 } 24534 if (element.hasTiming()) { 24535 composeTiming("timing", element.getTiming()); 24536 } 24537 if (element.hasAsNeeded()) { 24538 composeType("asNeeded", element.getAsNeeded()); 24539 } if (element.hasSite()) { 24540 composeType("site", element.getSite()); 24541 } if (element.hasRoute()) { 24542 composeCodeableConcept("route", element.getRoute()); 24543 } 24544 if (element.hasMethod()) { 24545 composeCodeableConcept("method", element.getMethod()); 24546 } 24547 if (element.hasDose()) { 24548 composeType("dose", element.getDose()); 24549 } if (element.hasRate()) { 24550 composeType("rate", element.getRate()); 24551 } if (element.hasMaxDosePerPeriod()) { 24552 composeRatio("maxDosePerPeriod", element.getMaxDosePerPeriod()); 24553 } 24554 composeElementClose(element); 24555 xml.exit(FHIR_NS, name); 24556 } 24557 } 24558 24559 protected void composeMedicationDispenseMedicationDispenseSubstitutionComponent(String name, MedicationDispense.MedicationDispenseSubstitutionComponent element) throws IOException { 24560 if (element != null) { 24561 composeElementAttributes(element); 24562 xml.enter(FHIR_NS, name); 24563 composeBackboneElements(element); 24564 if (element.hasType()) { 24565 composeCodeableConcept("type", element.getType()); 24566 } 24567 if (element.hasReason()) { 24568 for (CodeableConcept e : element.getReason()) 24569 composeCodeableConcept("reason", e); 24570 } 24571 if (element.hasResponsibleParty()) { 24572 for (Reference e : element.getResponsibleParty()) 24573 composeReference("responsibleParty", e); 24574 } 24575 composeElementClose(element); 24576 xml.exit(FHIR_NS, name); 24577 } 24578 } 24579 24580 protected void composeMedicationOrder(String name, MedicationOrder element) throws IOException { 24581 if (element != null) { 24582 composeDomainResourceAttributes(element); 24583 xml.enter(FHIR_NS, name); 24584 composeDomainResourceElements(element); 24585 if (element.hasIdentifier()) { 24586 for (Identifier e : element.getIdentifier()) 24587 composeIdentifier("identifier", e); 24588 } 24589 if (element.hasStatusElement()) 24590 composeEnumeration("status", element.getStatusElement(), new MedicationOrder.MedicationOrderStatusEnumFactory()); 24591 if (element.hasMedication()) { 24592 composeType("medication", element.getMedication()); 24593 } if (element.hasPatient()) { 24594 composeReference("patient", element.getPatient()); 24595 } 24596 if (element.hasEncounter()) { 24597 composeReference("encounter", element.getEncounter()); 24598 } 24599 if (element.hasDateWrittenElement()) { 24600 composeDateTime("dateWritten", element.getDateWrittenElement()); 24601 } 24602 if (element.hasPrescriber()) { 24603 composeReference("prescriber", element.getPrescriber()); 24604 } 24605 if (element.hasReasonCode()) { 24606 for (CodeableConcept e : element.getReasonCode()) 24607 composeCodeableConcept("reasonCode", e); 24608 } 24609 if (element.hasReasonReference()) { 24610 for (Reference e : element.getReasonReference()) 24611 composeReference("reasonReference", e); 24612 } 24613 if (element.hasDateEndedElement()) { 24614 composeDateTime("dateEnded", element.getDateEndedElement()); 24615 } 24616 if (element.hasReasonEnded()) { 24617 composeCodeableConcept("reasonEnded", element.getReasonEnded()); 24618 } 24619 if (element.hasNote()) { 24620 for (Annotation e : element.getNote()) 24621 composeAnnotation("note", e); 24622 } 24623 if (element.hasDosageInstruction()) { 24624 for (MedicationOrder.MedicationOrderDosageInstructionComponent e : element.getDosageInstruction()) 24625 composeMedicationOrderMedicationOrderDosageInstructionComponent("dosageInstruction", e); 24626 } 24627 if (element.hasDispenseRequest()) { 24628 composeMedicationOrderMedicationOrderDispenseRequestComponent("dispenseRequest", element.getDispenseRequest()); 24629 } 24630 if (element.hasSubstitution()) { 24631 composeMedicationOrderMedicationOrderSubstitutionComponent("substitution", element.getSubstitution()); 24632 } 24633 if (element.hasPriorPrescription()) { 24634 composeReference("priorPrescription", element.getPriorPrescription()); 24635 } 24636 composeElementClose(element); 24637 xml.exit(FHIR_NS, name); 24638 } 24639 } 24640 24641 protected void composeMedicationOrderMedicationOrderDosageInstructionComponent(String name, MedicationOrder.MedicationOrderDosageInstructionComponent element) throws IOException { 24642 if (element != null) { 24643 composeElementAttributes(element); 24644 xml.enter(FHIR_NS, name); 24645 composeBackboneElements(element); 24646 if (element.hasTextElement()) { 24647 composeString("text", element.getTextElement()); 24648 } 24649 if (element.hasAdditionalInstructions()) { 24650 composeCodeableConcept("additionalInstructions", element.getAdditionalInstructions()); 24651 } 24652 if (element.hasTiming()) { 24653 composeTiming("timing", element.getTiming()); 24654 } 24655 if (element.hasAsNeeded()) { 24656 composeType("asNeeded", element.getAsNeeded()); 24657 } if (element.hasSite()) { 24658 composeType("site", element.getSite()); 24659 } if (element.hasRoute()) { 24660 composeCodeableConcept("route", element.getRoute()); 24661 } 24662 if (element.hasMethod()) { 24663 composeCodeableConcept("method", element.getMethod()); 24664 } 24665 if (element.hasDose()) { 24666 composeType("dose", element.getDose()); 24667 } if (element.hasRate()) { 24668 composeType("rate", element.getRate()); 24669 } if (element.hasMaxDosePerPeriod()) { 24670 composeRatio("maxDosePerPeriod", element.getMaxDosePerPeriod()); 24671 } 24672 composeElementClose(element); 24673 xml.exit(FHIR_NS, name); 24674 } 24675 } 24676 24677 protected void composeMedicationOrderMedicationOrderDispenseRequestComponent(String name, MedicationOrder.MedicationOrderDispenseRequestComponent element) throws IOException { 24678 if (element != null) { 24679 composeElementAttributes(element); 24680 xml.enter(FHIR_NS, name); 24681 composeBackboneElements(element); 24682 if (element.hasMedication()) { 24683 composeType("medication", element.getMedication()); 24684 } if (element.hasValidityPeriod()) { 24685 composePeriod("validityPeriod", element.getValidityPeriod()); 24686 } 24687 if (element.hasNumberOfRepeatsAllowedElement()) { 24688 composePositiveInt("numberOfRepeatsAllowed", element.getNumberOfRepeatsAllowedElement()); 24689 } 24690 if (element.hasQuantity()) { 24691 composeSimpleQuantity("quantity", element.getQuantity()); 24692 } 24693 if (element.hasExpectedSupplyDuration()) { 24694 composeDuration("expectedSupplyDuration", element.getExpectedSupplyDuration()); 24695 } 24696 composeElementClose(element); 24697 xml.exit(FHIR_NS, name); 24698 } 24699 } 24700 24701 protected void composeMedicationOrderMedicationOrderSubstitutionComponent(String name, MedicationOrder.MedicationOrderSubstitutionComponent element) throws IOException { 24702 if (element != null) { 24703 composeElementAttributes(element); 24704 xml.enter(FHIR_NS, name); 24705 composeBackboneElements(element); 24706 if (element.hasType()) { 24707 composeCodeableConcept("type", element.getType()); 24708 } 24709 if (element.hasReason()) { 24710 composeCodeableConcept("reason", element.getReason()); 24711 } 24712 composeElementClose(element); 24713 xml.exit(FHIR_NS, name); 24714 } 24715 } 24716 24717 protected void composeMedicationStatement(String name, MedicationStatement element) throws IOException { 24718 if (element != null) { 24719 composeDomainResourceAttributes(element); 24720 xml.enter(FHIR_NS, name); 24721 composeDomainResourceElements(element); 24722 if (element.hasIdentifier()) { 24723 for (Identifier e : element.getIdentifier()) 24724 composeIdentifier("identifier", e); 24725 } 24726 if (element.hasStatusElement()) 24727 composeEnumeration("status", element.getStatusElement(), new MedicationStatement.MedicationStatementStatusEnumFactory()); 24728 if (element.hasMedication()) { 24729 composeType("medication", element.getMedication()); 24730 } if (element.hasPatient()) { 24731 composeReference("patient", element.getPatient()); 24732 } 24733 if (element.hasEffective()) { 24734 composeType("effective", element.getEffective()); 24735 } if (element.hasInformationSource()) { 24736 composeReference("informationSource", element.getInformationSource()); 24737 } 24738 if (element.hasSupportingInformation()) { 24739 for (Reference e : element.getSupportingInformation()) 24740 composeReference("supportingInformation", e); 24741 } 24742 if (element.hasDateAssertedElement()) { 24743 composeDateTime("dateAsserted", element.getDateAssertedElement()); 24744 } 24745 if (element.hasWasNotTakenElement()) { 24746 composeBoolean("wasNotTaken", element.getWasNotTakenElement()); 24747 } 24748 if (element.hasReasonNotTaken()) { 24749 for (CodeableConcept e : element.getReasonNotTaken()) 24750 composeCodeableConcept("reasonNotTaken", e); 24751 } 24752 if (element.hasReasonForUse()) { 24753 composeType("reasonForUse", element.getReasonForUse()); 24754 } if (element.hasNote()) { 24755 for (Annotation e : element.getNote()) 24756 composeAnnotation("note", e); 24757 } 24758 if (element.hasDosage()) { 24759 for (MedicationStatement.MedicationStatementDosageComponent e : element.getDosage()) 24760 composeMedicationStatementMedicationStatementDosageComponent("dosage", e); 24761 } 24762 composeElementClose(element); 24763 xml.exit(FHIR_NS, name); 24764 } 24765 } 24766 24767 protected void composeMedicationStatementMedicationStatementDosageComponent(String name, MedicationStatement.MedicationStatementDosageComponent element) throws IOException { 24768 if (element != null) { 24769 composeElementAttributes(element); 24770 xml.enter(FHIR_NS, name); 24771 composeBackboneElements(element); 24772 if (element.hasTextElement()) { 24773 composeString("text", element.getTextElement()); 24774 } 24775 if (element.hasTiming()) { 24776 composeTiming("timing", element.getTiming()); 24777 } 24778 if (element.hasAsNeeded()) { 24779 composeType("asNeeded", element.getAsNeeded()); 24780 } if (element.hasSite()) { 24781 composeType("site", element.getSite()); 24782 } if (element.hasRoute()) { 24783 composeCodeableConcept("route", element.getRoute()); 24784 } 24785 if (element.hasMethod()) { 24786 composeCodeableConcept("method", element.getMethod()); 24787 } 24788 if (element.hasQuantity()) { 24789 composeType("quantity", element.getQuantity()); 24790 } if (element.hasRate()) { 24791 composeType("rate", element.getRate()); 24792 } if (element.hasMaxDosePerPeriod()) { 24793 composeRatio("maxDosePerPeriod", element.getMaxDosePerPeriod()); 24794 } 24795 composeElementClose(element); 24796 xml.exit(FHIR_NS, name); 24797 } 24798 } 24799 24800 protected void composeMessageHeader(String name, MessageHeader element) throws IOException { 24801 if (element != null) { 24802 composeDomainResourceAttributes(element); 24803 xml.enter(FHIR_NS, name); 24804 composeDomainResourceElements(element); 24805 if (element.hasTimestampElement()) { 24806 composeInstant("timestamp", element.getTimestampElement()); 24807 } 24808 if (element.hasEvent()) { 24809 composeCoding("event", element.getEvent()); 24810 } 24811 if (element.hasResponse()) { 24812 composeMessageHeaderMessageHeaderResponseComponent("response", element.getResponse()); 24813 } 24814 if (element.hasSource()) { 24815 composeMessageHeaderMessageSourceComponent("source", element.getSource()); 24816 } 24817 if (element.hasDestination()) { 24818 for (MessageHeader.MessageDestinationComponent e : element.getDestination()) 24819 composeMessageHeaderMessageDestinationComponent("destination", e); 24820 } 24821 if (element.hasEnterer()) { 24822 composeReference("enterer", element.getEnterer()); 24823 } 24824 if (element.hasAuthor()) { 24825 composeReference("author", element.getAuthor()); 24826 } 24827 if (element.hasReceiver()) { 24828 composeReference("receiver", element.getReceiver()); 24829 } 24830 if (element.hasResponsible()) { 24831 composeReference("responsible", element.getResponsible()); 24832 } 24833 if (element.hasReason()) { 24834 composeCodeableConcept("reason", element.getReason()); 24835 } 24836 if (element.hasData()) { 24837 for (Reference e : element.getData()) 24838 composeReference("data", e); 24839 } 24840 composeElementClose(element); 24841 xml.exit(FHIR_NS, name); 24842 } 24843 } 24844 24845 protected void composeMessageHeaderMessageHeaderResponseComponent(String name, MessageHeader.MessageHeaderResponseComponent element) throws IOException { 24846 if (element != null) { 24847 composeElementAttributes(element); 24848 xml.enter(FHIR_NS, name); 24849 composeBackboneElements(element); 24850 if (element.hasIdentifierElement()) { 24851 composeId("identifier", element.getIdentifierElement()); 24852 } 24853 if (element.hasCodeElement()) 24854 composeEnumeration("code", element.getCodeElement(), new MessageHeader.ResponseTypeEnumFactory()); 24855 if (element.hasDetails()) { 24856 composeReference("details", element.getDetails()); 24857 } 24858 composeElementClose(element); 24859 xml.exit(FHIR_NS, name); 24860 } 24861 } 24862 24863 protected void composeMessageHeaderMessageSourceComponent(String name, MessageHeader.MessageSourceComponent element) throws IOException { 24864 if (element != null) { 24865 composeElementAttributes(element); 24866 xml.enter(FHIR_NS, name); 24867 composeBackboneElements(element); 24868 if (element.hasNameElement()) { 24869 composeString("name", element.getNameElement()); 24870 } 24871 if (element.hasSoftwareElement()) { 24872 composeString("software", element.getSoftwareElement()); 24873 } 24874 if (element.hasVersionElement()) { 24875 composeString("version", element.getVersionElement()); 24876 } 24877 if (element.hasContact()) { 24878 composeContactPoint("contact", element.getContact()); 24879 } 24880 if (element.hasEndpointElement()) { 24881 composeUri("endpoint", element.getEndpointElement()); 24882 } 24883 composeElementClose(element); 24884 xml.exit(FHIR_NS, name); 24885 } 24886 } 24887 24888 protected void composeMessageHeaderMessageDestinationComponent(String name, MessageHeader.MessageDestinationComponent element) throws IOException { 24889 if (element != null) { 24890 composeElementAttributes(element); 24891 xml.enter(FHIR_NS, name); 24892 composeBackboneElements(element); 24893 if (element.hasNameElement()) { 24894 composeString("name", element.getNameElement()); 24895 } 24896 if (element.hasTarget()) { 24897 composeReference("target", element.getTarget()); 24898 } 24899 if (element.hasEndpointElement()) { 24900 composeUri("endpoint", element.getEndpointElement()); 24901 } 24902 composeElementClose(element); 24903 xml.exit(FHIR_NS, name); 24904 } 24905 } 24906 24907 protected void composeModuleDefinition(String name, ModuleDefinition element) throws IOException { 24908 if (element != null) { 24909 composeDomainResourceAttributes(element); 24910 xml.enter(FHIR_NS, name); 24911 composeDomainResourceElements(element); 24912 if (element.hasIdentifier()) { 24913 for (Identifier e : element.getIdentifier()) 24914 composeIdentifier("identifier", e); 24915 } 24916 if (element.hasVersionElement()) { 24917 composeString("version", element.getVersionElement()); 24918 } 24919 if (element.hasModel()) { 24920 for (ModuleDefinition.ModuleDefinitionModelComponent e : element.getModel()) 24921 composeModuleDefinitionModuleDefinitionModelComponent("model", e); 24922 } 24923 if (element.hasLibrary()) { 24924 for (ModuleDefinition.ModuleDefinitionLibraryComponent e : element.getLibrary()) 24925 composeModuleDefinitionModuleDefinitionLibraryComponent("library", e); 24926 } 24927 if (element.hasCodeSystem()) { 24928 for (ModuleDefinition.ModuleDefinitionCodeSystemComponent e : element.getCodeSystem()) 24929 composeModuleDefinitionModuleDefinitionCodeSystemComponent("codeSystem", e); 24930 } 24931 if (element.hasValueSet()) { 24932 for (ModuleDefinition.ModuleDefinitionValueSetComponent e : element.getValueSet()) 24933 composeModuleDefinitionModuleDefinitionValueSetComponent("valueSet", e); 24934 } 24935 if (element.hasParameter()) { 24936 for (ModuleDefinition.ModuleDefinitionParameterComponent e : element.getParameter()) 24937 composeModuleDefinitionModuleDefinitionParameterComponent("parameter", e); 24938 } 24939 if (element.hasData()) { 24940 for (ModuleDefinition.ModuleDefinitionDataComponent e : element.getData()) 24941 composeModuleDefinitionModuleDefinitionDataComponent("data", e); 24942 } 24943 composeElementClose(element); 24944 xml.exit(FHIR_NS, name); 24945 } 24946 } 24947 24948 protected void composeModuleDefinitionModuleDefinitionModelComponent(String name, ModuleDefinition.ModuleDefinitionModelComponent element) throws IOException { 24949 if (element != null) { 24950 composeElementAttributes(element); 24951 xml.enter(FHIR_NS, name); 24952 composeBackboneElements(element); 24953 if (element.hasNameElement()) { 24954 composeString("name", element.getNameElement()); 24955 } 24956 if (element.hasIdentifierElement()) { 24957 composeString("identifier", element.getIdentifierElement()); 24958 } 24959 if (element.hasVersionElement()) { 24960 composeString("version", element.getVersionElement()); 24961 } 24962 composeElementClose(element); 24963 xml.exit(FHIR_NS, name); 24964 } 24965 } 24966 24967 protected void composeModuleDefinitionModuleDefinitionLibraryComponent(String name, ModuleDefinition.ModuleDefinitionLibraryComponent element) throws IOException { 24968 if (element != null) { 24969 composeElementAttributes(element); 24970 xml.enter(FHIR_NS, name); 24971 composeBackboneElements(element); 24972 if (element.hasNameElement()) { 24973 composeString("name", element.getNameElement()); 24974 } 24975 if (element.hasIdentifierElement()) { 24976 composeString("identifier", element.getIdentifierElement()); 24977 } 24978 if (element.hasVersionElement()) { 24979 composeString("version", element.getVersionElement()); 24980 } 24981 if (element.hasDocument()) { 24982 composeType("document", element.getDocument()); 24983 } composeElementClose(element); 24984 xml.exit(FHIR_NS, name); 24985 } 24986 } 24987 24988 protected void composeModuleDefinitionModuleDefinitionCodeSystemComponent(String name, ModuleDefinition.ModuleDefinitionCodeSystemComponent element) throws IOException { 24989 if (element != null) { 24990 composeElementAttributes(element); 24991 xml.enter(FHIR_NS, name); 24992 composeBackboneElements(element); 24993 if (element.hasNameElement()) { 24994 composeString("name", element.getNameElement()); 24995 } 24996 if (element.hasIdentifierElement()) { 24997 composeString("identifier", element.getIdentifierElement()); 24998 } 24999 if (element.hasVersionElement()) { 25000 composeString("version", element.getVersionElement()); 25001 } 25002 composeElementClose(element); 25003 xml.exit(FHIR_NS, name); 25004 } 25005 } 25006 25007 protected void composeModuleDefinitionModuleDefinitionValueSetComponent(String name, ModuleDefinition.ModuleDefinitionValueSetComponent element) throws IOException { 25008 if (element != null) { 25009 composeElementAttributes(element); 25010 xml.enter(FHIR_NS, name); 25011 composeBackboneElements(element); 25012 if (element.hasNameElement()) { 25013 composeString("name", element.getNameElement()); 25014 } 25015 if (element.hasIdentifierElement()) { 25016 composeString("identifier", element.getIdentifierElement()); 25017 } 25018 if (element.hasVersionElement()) { 25019 composeString("version", element.getVersionElement()); 25020 } 25021 if (element.hasCodeSystem()) { 25022 for (StringType e : element.getCodeSystem()) 25023 composeString("codeSystem", e); 25024 } 25025 composeElementClose(element); 25026 xml.exit(FHIR_NS, name); 25027 } 25028 } 25029 25030 protected void composeModuleDefinitionModuleDefinitionParameterComponent(String name, ModuleDefinition.ModuleDefinitionParameterComponent element) throws IOException { 25031 if (element != null) { 25032 composeElementAttributes(element); 25033 xml.enter(FHIR_NS, name); 25034 composeBackboneElements(element); 25035 if (element.hasNameElement()) { 25036 composeCode("name", element.getNameElement()); 25037 } 25038 if (element.hasUseElement()) { 25039 composeCode("use", element.getUseElement()); 25040 } 25041 if (element.hasDocumentationElement()) { 25042 composeString("documentation", element.getDocumentationElement()); 25043 } 25044 if (element.hasTypeElement()) { 25045 composeCode("type", element.getTypeElement()); 25046 } 25047 if (element.hasProfile()) { 25048 composeReference("profile", element.getProfile()); 25049 } 25050 composeElementClose(element); 25051 xml.exit(FHIR_NS, name); 25052 } 25053 } 25054 25055 protected void composeModuleDefinitionModuleDefinitionDataComponent(String name, ModuleDefinition.ModuleDefinitionDataComponent element) throws IOException { 25056 if (element != null) { 25057 composeElementAttributes(element); 25058 xml.enter(FHIR_NS, name); 25059 composeBackboneElements(element); 25060 if (element.hasTypeElement()) { 25061 composeCode("type", element.getTypeElement()); 25062 } 25063 if (element.hasProfile()) { 25064 composeReference("profile", element.getProfile()); 25065 } 25066 if (element.hasMustSupport()) { 25067 for (StringType e : element.getMustSupport()) 25068 composeString("mustSupport", e); 25069 } 25070 if (element.hasCodeFilter()) { 25071 for (ModuleDefinition.ModuleDefinitionDataCodeFilterComponent e : element.getCodeFilter()) 25072 composeModuleDefinitionModuleDefinitionDataCodeFilterComponent("codeFilter", e); 25073 } 25074 if (element.hasDateFilter()) { 25075 for (ModuleDefinition.ModuleDefinitionDataDateFilterComponent e : element.getDateFilter()) 25076 composeModuleDefinitionModuleDefinitionDataDateFilterComponent("dateFilter", e); 25077 } 25078 composeElementClose(element); 25079 xml.exit(FHIR_NS, name); 25080 } 25081 } 25082 25083 protected void composeModuleDefinitionModuleDefinitionDataCodeFilterComponent(String name, ModuleDefinition.ModuleDefinitionDataCodeFilterComponent element) throws IOException { 25084 if (element != null) { 25085 composeElementAttributes(element); 25086 xml.enter(FHIR_NS, name); 25087 composeBackboneElements(element); 25088 if (element.hasPathElement()) { 25089 composeString("path", element.getPathElement()); 25090 } 25091 if (element.hasValueSet()) { 25092 composeType("valueSet", element.getValueSet()); 25093 } if (element.hasCodeableConcept()) { 25094 for (CodeableConcept e : element.getCodeableConcept()) 25095 composeCodeableConcept("codeableConcept", e); 25096 } 25097 composeElementClose(element); 25098 xml.exit(FHIR_NS, name); 25099 } 25100 } 25101 25102 protected void composeModuleDefinitionModuleDefinitionDataDateFilterComponent(String name, ModuleDefinition.ModuleDefinitionDataDateFilterComponent element) throws IOException { 25103 if (element != null) { 25104 composeElementAttributes(element); 25105 xml.enter(FHIR_NS, name); 25106 composeBackboneElements(element); 25107 if (element.hasPathElement()) { 25108 composeString("path", element.getPathElement()); 25109 } 25110 if (element.hasValue()) { 25111 composeType("value", element.getValue()); 25112 } composeElementClose(element); 25113 xml.exit(FHIR_NS, name); 25114 } 25115 } 25116 25117 protected void composeNamingSystem(String name, NamingSystem element) throws IOException { 25118 if (element != null) { 25119 composeDomainResourceAttributes(element); 25120 xml.enter(FHIR_NS, name); 25121 composeDomainResourceElements(element); 25122 if (element.hasNameElement()) { 25123 composeString("name", element.getNameElement()); 25124 } 25125 if (element.hasStatusElement()) 25126 composeEnumeration("status", element.getStatusElement(), new Enumerations.ConformanceResourceStatusEnumFactory()); 25127 if (element.hasKindElement()) 25128 composeEnumeration("kind", element.getKindElement(), new NamingSystem.NamingSystemTypeEnumFactory()); 25129 if (element.hasDateElement()) { 25130 composeDateTime("date", element.getDateElement()); 25131 } 25132 if (element.hasPublisherElement()) { 25133 composeString("publisher", element.getPublisherElement()); 25134 } 25135 if (element.hasContact()) { 25136 for (NamingSystem.NamingSystemContactComponent e : element.getContact()) 25137 composeNamingSystemNamingSystemContactComponent("contact", e); 25138 } 25139 if (element.hasResponsibleElement()) { 25140 composeString("responsible", element.getResponsibleElement()); 25141 } 25142 if (element.hasType()) { 25143 composeCodeableConcept("type", element.getType()); 25144 } 25145 if (element.hasDescriptionElement()) { 25146 composeString("description", element.getDescriptionElement()); 25147 } 25148 if (element.hasUseContext()) { 25149 for (CodeableConcept e : element.getUseContext()) 25150 composeCodeableConcept("useContext", e); 25151 } 25152 if (element.hasUsageElement()) { 25153 composeString("usage", element.getUsageElement()); 25154 } 25155 if (element.hasUniqueId()) { 25156 for (NamingSystem.NamingSystemUniqueIdComponent e : element.getUniqueId()) 25157 composeNamingSystemNamingSystemUniqueIdComponent("uniqueId", e); 25158 } 25159 if (element.hasReplacedBy()) { 25160 composeReference("replacedBy", element.getReplacedBy()); 25161 } 25162 composeElementClose(element); 25163 xml.exit(FHIR_NS, name); 25164 } 25165 } 25166 25167 protected void composeNamingSystemNamingSystemContactComponent(String name, NamingSystem.NamingSystemContactComponent element) throws IOException { 25168 if (element != null) { 25169 composeElementAttributes(element); 25170 xml.enter(FHIR_NS, name); 25171 composeBackboneElements(element); 25172 if (element.hasNameElement()) { 25173 composeString("name", element.getNameElement()); 25174 } 25175 if (element.hasTelecom()) { 25176 for (ContactPoint e : element.getTelecom()) 25177 composeContactPoint("telecom", e); 25178 } 25179 composeElementClose(element); 25180 xml.exit(FHIR_NS, name); 25181 } 25182 } 25183 25184 protected void composeNamingSystemNamingSystemUniqueIdComponent(String name, NamingSystem.NamingSystemUniqueIdComponent element) throws IOException { 25185 if (element != null) { 25186 composeElementAttributes(element); 25187 xml.enter(FHIR_NS, name); 25188 composeBackboneElements(element); 25189 if (element.hasTypeElement()) 25190 composeEnumeration("type", element.getTypeElement(), new NamingSystem.NamingSystemIdentifierTypeEnumFactory()); 25191 if (element.hasValueElement()) { 25192 composeString("value", element.getValueElement()); 25193 } 25194 if (element.hasPreferredElement()) { 25195 composeBoolean("preferred", element.getPreferredElement()); 25196 } 25197 if (element.hasPeriod()) { 25198 composePeriod("period", element.getPeriod()); 25199 } 25200 composeElementClose(element); 25201 xml.exit(FHIR_NS, name); 25202 } 25203 } 25204 25205 protected void composeNutritionOrder(String name, NutritionOrder element) throws IOException { 25206 if (element != null) { 25207 composeDomainResourceAttributes(element); 25208 xml.enter(FHIR_NS, name); 25209 composeDomainResourceElements(element); 25210 if (element.hasIdentifier()) { 25211 for (Identifier e : element.getIdentifier()) 25212 composeIdentifier("identifier", e); 25213 } 25214 if (element.hasStatusElement()) 25215 composeEnumeration("status", element.getStatusElement(), new NutritionOrder.NutritionOrderStatusEnumFactory()); 25216 if (element.hasPatient()) { 25217 composeReference("patient", element.getPatient()); 25218 } 25219 if (element.hasEncounter()) { 25220 composeReference("encounter", element.getEncounter()); 25221 } 25222 if (element.hasDateTimeElement()) { 25223 composeDateTime("dateTime", element.getDateTimeElement()); 25224 } 25225 if (element.hasOrderer()) { 25226 composeReference("orderer", element.getOrderer()); 25227 } 25228 if (element.hasAllergyIntolerance()) { 25229 for (Reference e : element.getAllergyIntolerance()) 25230 composeReference("allergyIntolerance", e); 25231 } 25232 if (element.hasFoodPreferenceModifier()) { 25233 for (CodeableConcept e : element.getFoodPreferenceModifier()) 25234 composeCodeableConcept("foodPreferenceModifier", e); 25235 } 25236 if (element.hasExcludeFoodModifier()) { 25237 for (CodeableConcept e : element.getExcludeFoodModifier()) 25238 composeCodeableConcept("excludeFoodModifier", e); 25239 } 25240 if (element.hasOralDiet()) { 25241 composeNutritionOrderNutritionOrderOralDietComponent("oralDiet", element.getOralDiet()); 25242 } 25243 if (element.hasSupplement()) { 25244 for (NutritionOrder.NutritionOrderSupplementComponent e : element.getSupplement()) 25245 composeNutritionOrderNutritionOrderSupplementComponent("supplement", e); 25246 } 25247 if (element.hasEnteralFormula()) { 25248 composeNutritionOrderNutritionOrderEnteralFormulaComponent("enteralFormula", element.getEnteralFormula()); 25249 } 25250 composeElementClose(element); 25251 xml.exit(FHIR_NS, name); 25252 } 25253 } 25254 25255 protected void composeNutritionOrderNutritionOrderOralDietComponent(String name, NutritionOrder.NutritionOrderOralDietComponent element) throws IOException { 25256 if (element != null) { 25257 composeElementAttributes(element); 25258 xml.enter(FHIR_NS, name); 25259 composeBackboneElements(element); 25260 if (element.hasType()) { 25261 for (CodeableConcept e : element.getType()) 25262 composeCodeableConcept("type", e); 25263 } 25264 if (element.hasSchedule()) { 25265 for (Timing e : element.getSchedule()) 25266 composeTiming("schedule", e); 25267 } 25268 if (element.hasNutrient()) { 25269 for (NutritionOrder.NutritionOrderOralDietNutrientComponent e : element.getNutrient()) 25270 composeNutritionOrderNutritionOrderOralDietNutrientComponent("nutrient", e); 25271 } 25272 if (element.hasTexture()) { 25273 for (NutritionOrder.NutritionOrderOralDietTextureComponent e : element.getTexture()) 25274 composeNutritionOrderNutritionOrderOralDietTextureComponent("texture", e); 25275 } 25276 if (element.hasFluidConsistencyType()) { 25277 for (CodeableConcept e : element.getFluidConsistencyType()) 25278 composeCodeableConcept("fluidConsistencyType", e); 25279 } 25280 if (element.hasInstructionElement()) { 25281 composeString("instruction", element.getInstructionElement()); 25282 } 25283 composeElementClose(element); 25284 xml.exit(FHIR_NS, name); 25285 } 25286 } 25287 25288 protected void composeNutritionOrderNutritionOrderOralDietNutrientComponent(String name, NutritionOrder.NutritionOrderOralDietNutrientComponent element) throws IOException { 25289 if (element != null) { 25290 composeElementAttributes(element); 25291 xml.enter(FHIR_NS, name); 25292 composeBackboneElements(element); 25293 if (element.hasModifier()) { 25294 composeCodeableConcept("modifier", element.getModifier()); 25295 } 25296 if (element.hasAmount()) { 25297 composeSimpleQuantity("amount", element.getAmount()); 25298 } 25299 composeElementClose(element); 25300 xml.exit(FHIR_NS, name); 25301 } 25302 } 25303 25304 protected void composeNutritionOrderNutritionOrderOralDietTextureComponent(String name, NutritionOrder.NutritionOrderOralDietTextureComponent element) throws IOException { 25305 if (element != null) { 25306 composeElementAttributes(element); 25307 xml.enter(FHIR_NS, name); 25308 composeBackboneElements(element); 25309 if (element.hasModifier()) { 25310 composeCodeableConcept("modifier", element.getModifier()); 25311 } 25312 if (element.hasFoodType()) { 25313 composeCodeableConcept("foodType", element.getFoodType()); 25314 } 25315 composeElementClose(element); 25316 xml.exit(FHIR_NS, name); 25317 } 25318 } 25319 25320 protected void composeNutritionOrderNutritionOrderSupplementComponent(String name, NutritionOrder.NutritionOrderSupplementComponent element) throws IOException { 25321 if (element != null) { 25322 composeElementAttributes(element); 25323 xml.enter(FHIR_NS, name); 25324 composeBackboneElements(element); 25325 if (element.hasType()) { 25326 composeCodeableConcept("type", element.getType()); 25327 } 25328 if (element.hasProductNameElement()) { 25329 composeString("productName", element.getProductNameElement()); 25330 } 25331 if (element.hasSchedule()) { 25332 for (Timing e : element.getSchedule()) 25333 composeTiming("schedule", e); 25334 } 25335 if (element.hasQuantity()) { 25336 composeSimpleQuantity("quantity", element.getQuantity()); 25337 } 25338 if (element.hasInstructionElement()) { 25339 composeString("instruction", element.getInstructionElement()); 25340 } 25341 composeElementClose(element); 25342 xml.exit(FHIR_NS, name); 25343 } 25344 } 25345 25346 protected void composeNutritionOrderNutritionOrderEnteralFormulaComponent(String name, NutritionOrder.NutritionOrderEnteralFormulaComponent element) throws IOException { 25347 if (element != null) { 25348 composeElementAttributes(element); 25349 xml.enter(FHIR_NS, name); 25350 composeBackboneElements(element); 25351 if (element.hasBaseFormulaType()) { 25352 composeCodeableConcept("baseFormulaType", element.getBaseFormulaType()); 25353 } 25354 if (element.hasBaseFormulaProductNameElement()) { 25355 composeString("baseFormulaProductName", element.getBaseFormulaProductNameElement()); 25356 } 25357 if (element.hasAdditiveType()) { 25358 composeCodeableConcept("additiveType", element.getAdditiveType()); 25359 } 25360 if (element.hasAdditiveProductNameElement()) { 25361 composeString("additiveProductName", element.getAdditiveProductNameElement()); 25362 } 25363 if (element.hasCaloricDensity()) { 25364 composeSimpleQuantity("caloricDensity", element.getCaloricDensity()); 25365 } 25366 if (element.hasRouteofAdministration()) { 25367 composeCodeableConcept("routeofAdministration", element.getRouteofAdministration()); 25368 } 25369 if (element.hasAdministration()) { 25370 for (NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent e : element.getAdministration()) 25371 composeNutritionOrderNutritionOrderEnteralFormulaAdministrationComponent("administration", e); 25372 } 25373 if (element.hasMaxVolumeToDeliver()) { 25374 composeSimpleQuantity("maxVolumeToDeliver", element.getMaxVolumeToDeliver()); 25375 } 25376 if (element.hasAdministrationInstructionElement()) { 25377 composeString("administrationInstruction", element.getAdministrationInstructionElement()); 25378 } 25379 composeElementClose(element); 25380 xml.exit(FHIR_NS, name); 25381 } 25382 } 25383 25384 protected void composeNutritionOrderNutritionOrderEnteralFormulaAdministrationComponent(String name, NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent element) throws IOException { 25385 if (element != null) { 25386 composeElementAttributes(element); 25387 xml.enter(FHIR_NS, name); 25388 composeBackboneElements(element); 25389 if (element.hasSchedule()) { 25390 composeTiming("schedule", element.getSchedule()); 25391 } 25392 if (element.hasQuantity()) { 25393 composeSimpleQuantity("quantity", element.getQuantity()); 25394 } 25395 if (element.hasRate()) { 25396 composeType("rate", element.getRate()); 25397 } composeElementClose(element); 25398 xml.exit(FHIR_NS, name); 25399 } 25400 } 25401 25402 protected void composeObservation(String name, Observation element) throws IOException { 25403 if (element != null) { 25404 composeDomainResourceAttributes(element); 25405 xml.enter(FHIR_NS, name); 25406 composeDomainResourceElements(element); 25407 if (element.hasIdentifier()) { 25408 for (Identifier e : element.getIdentifier()) 25409 composeIdentifier("identifier", e); 25410 } 25411 if (element.hasStatusElement()) 25412 composeEnumeration("status", element.getStatusElement(), new Observation.ObservationStatusEnumFactory()); 25413 if (element.hasCategory()) { 25414 composeCodeableConcept("category", element.getCategory()); 25415 } 25416 if (element.hasCode()) { 25417 composeCodeableConcept("code", element.getCode()); 25418 } 25419 if (element.hasSubject()) { 25420 composeReference("subject", element.getSubject()); 25421 } 25422 if (element.hasEncounter()) { 25423 composeReference("encounter", element.getEncounter()); 25424 } 25425 if (element.hasEffective()) { 25426 composeType("effective", element.getEffective()); 25427 } if (element.hasIssuedElement()) { 25428 composeInstant("issued", element.getIssuedElement()); 25429 } 25430 if (element.hasPerformer()) { 25431 for (Reference e : element.getPerformer()) 25432 composeReference("performer", e); 25433 } 25434 if (element.hasValue()) { 25435 composeType("value", element.getValue()); 25436 } if (element.hasDataAbsentReason()) { 25437 composeCodeableConcept("dataAbsentReason", element.getDataAbsentReason()); 25438 } 25439 if (element.hasInterpretation()) { 25440 composeCodeableConcept("interpretation", element.getInterpretation()); 25441 } 25442 if (element.hasCommentElement()) { 25443 composeString("comment", element.getCommentElement()); 25444 } 25445 if (element.hasBodySite()) { 25446 composeCodeableConcept("bodySite", element.getBodySite()); 25447 } 25448 if (element.hasMethod()) { 25449 composeCodeableConcept("method", element.getMethod()); 25450 } 25451 if (element.hasSpecimen()) { 25452 composeReference("specimen", element.getSpecimen()); 25453 } 25454 if (element.hasDevice()) { 25455 composeReference("device", element.getDevice()); 25456 } 25457 if (element.hasReferenceRange()) { 25458 for (Observation.ObservationReferenceRangeComponent e : element.getReferenceRange()) 25459 composeObservationObservationReferenceRangeComponent("referenceRange", e); 25460 } 25461 if (element.hasRelated()) { 25462 for (Observation.ObservationRelatedComponent e : element.getRelated()) 25463 composeObservationObservationRelatedComponent("related", e); 25464 } 25465 if (element.hasComponent()) { 25466 for (Observation.ObservationComponentComponent e : element.getComponent()) 25467 composeObservationObservationComponentComponent("component", e); 25468 } 25469 composeElementClose(element); 25470 xml.exit(FHIR_NS, name); 25471 } 25472 } 25473 25474 protected void composeObservationObservationReferenceRangeComponent(String name, Observation.ObservationReferenceRangeComponent element) throws IOException { 25475 if (element != null) { 25476 composeElementAttributes(element); 25477 xml.enter(FHIR_NS, name); 25478 composeBackboneElements(element); 25479 if (element.hasLow()) { 25480 composeSimpleQuantity("low", element.getLow()); 25481 } 25482 if (element.hasHigh()) { 25483 composeSimpleQuantity("high", element.getHigh()); 25484 } 25485 if (element.hasMeaning()) { 25486 composeCodeableConcept("meaning", element.getMeaning()); 25487 } 25488 if (element.hasAge()) { 25489 composeRange("age", element.getAge()); 25490 } 25491 if (element.hasTextElement()) { 25492 composeString("text", element.getTextElement()); 25493 } 25494 composeElementClose(element); 25495 xml.exit(FHIR_NS, name); 25496 } 25497 } 25498 25499 protected void composeObservationObservationRelatedComponent(String name, Observation.ObservationRelatedComponent element) throws IOException { 25500 if (element != null) { 25501 composeElementAttributes(element); 25502 xml.enter(FHIR_NS, name); 25503 composeBackboneElements(element); 25504 if (element.hasTypeElement()) 25505 composeEnumeration("type", element.getTypeElement(), new Observation.ObservationRelationshipTypeEnumFactory()); 25506 if (element.hasTarget()) { 25507 composeReference("target", element.getTarget()); 25508 } 25509 composeElementClose(element); 25510 xml.exit(FHIR_NS, name); 25511 } 25512 } 25513 25514 protected void composeObservationObservationComponentComponent(String name, Observation.ObservationComponentComponent element) throws IOException { 25515 if (element != null) { 25516 composeElementAttributes(element); 25517 xml.enter(FHIR_NS, name); 25518 composeBackboneElements(element); 25519 if (element.hasCode()) { 25520 composeCodeableConcept("code", element.getCode()); 25521 } 25522 if (element.hasValue()) { 25523 composeType("value", element.getValue()); 25524 } if (element.hasDataAbsentReason()) { 25525 composeCodeableConcept("dataAbsentReason", element.getDataAbsentReason()); 25526 } 25527 if (element.hasReferenceRange()) { 25528 for (Observation.ObservationReferenceRangeComponent e : element.getReferenceRange()) 25529 composeObservationObservationReferenceRangeComponent("referenceRange", e); 25530 } 25531 composeElementClose(element); 25532 xml.exit(FHIR_NS, name); 25533 } 25534 } 25535 25536 protected void composeOperationDefinition(String name, OperationDefinition element) throws IOException { 25537 if (element != null) { 25538 composeDomainResourceAttributes(element); 25539 xml.enter(FHIR_NS, name); 25540 composeDomainResourceElements(element); 25541 if (element.hasUrlElement()) { 25542 composeUri("url", element.getUrlElement()); 25543 } 25544 if (element.hasVersionElement()) { 25545 composeString("version", element.getVersionElement()); 25546 } 25547 if (element.hasNameElement()) { 25548 composeString("name", element.getNameElement()); 25549 } 25550 if (element.hasStatusElement()) 25551 composeEnumeration("status", element.getStatusElement(), new Enumerations.ConformanceResourceStatusEnumFactory()); 25552 if (element.hasKindElement()) 25553 composeEnumeration("kind", element.getKindElement(), new OperationDefinition.OperationKindEnumFactory()); 25554 if (element.hasExperimentalElement()) { 25555 composeBoolean("experimental", element.getExperimentalElement()); 25556 } 25557 if (element.hasDateElement()) { 25558 composeDateTime("date", element.getDateElement()); 25559 } 25560 if (element.hasPublisherElement()) { 25561 composeString("publisher", element.getPublisherElement()); 25562 } 25563 if (element.hasContact()) { 25564 for (OperationDefinition.OperationDefinitionContactComponent e : element.getContact()) 25565 composeOperationDefinitionOperationDefinitionContactComponent("contact", e); 25566 } 25567 if (element.hasDescriptionElement()) { 25568 composeString("description", element.getDescriptionElement()); 25569 } 25570 if (element.hasUseContext()) { 25571 for (CodeableConcept e : element.getUseContext()) 25572 composeCodeableConcept("useContext", e); 25573 } 25574 if (element.hasRequirementsElement()) { 25575 composeString("requirements", element.getRequirementsElement()); 25576 } 25577 if (element.hasIdempotentElement()) { 25578 composeBoolean("idempotent", element.getIdempotentElement()); 25579 } 25580 if (element.hasCodeElement()) { 25581 composeCode("code", element.getCodeElement()); 25582 } 25583 if (element.hasCommentElement()) { 25584 composeString("comment", element.getCommentElement()); 25585 } 25586 if (element.hasBase()) { 25587 composeReference("base", element.getBase()); 25588 } 25589 if (element.hasSystemElement()) { 25590 composeBoolean("system", element.getSystemElement()); 25591 } 25592 if (element.hasType()) { 25593 for (CodeType e : element.getType()) 25594 composeCode("type", e); 25595 } 25596 if (element.hasInstanceElement()) { 25597 composeBoolean("instance", element.getInstanceElement()); 25598 } 25599 if (element.hasParameter()) { 25600 for (OperationDefinition.OperationDefinitionParameterComponent e : element.getParameter()) 25601 composeOperationDefinitionOperationDefinitionParameterComponent("parameter", e); 25602 } 25603 composeElementClose(element); 25604 xml.exit(FHIR_NS, name); 25605 } 25606 } 25607 25608 protected void composeOperationDefinitionOperationDefinitionContactComponent(String name, OperationDefinition.OperationDefinitionContactComponent element) throws IOException { 25609 if (element != null) { 25610 composeElementAttributes(element); 25611 xml.enter(FHIR_NS, name); 25612 composeBackboneElements(element); 25613 if (element.hasNameElement()) { 25614 composeString("name", element.getNameElement()); 25615 } 25616 if (element.hasTelecom()) { 25617 for (ContactPoint e : element.getTelecom()) 25618 composeContactPoint("telecom", e); 25619 } 25620 composeElementClose(element); 25621 xml.exit(FHIR_NS, name); 25622 } 25623 } 25624 25625 protected void composeOperationDefinitionOperationDefinitionParameterComponent(String name, OperationDefinition.OperationDefinitionParameterComponent element) throws IOException { 25626 if (element != null) { 25627 composeElementAttributes(element); 25628 xml.enter(FHIR_NS, name); 25629 composeBackboneElements(element); 25630 if (element.hasNameElement()) { 25631 composeCode("name", element.getNameElement()); 25632 } 25633 if (element.hasUseElement()) 25634 composeEnumeration("use", element.getUseElement(), new OperationDefinition.OperationParameterUseEnumFactory()); 25635 if (element.hasMinElement()) { 25636 composeInteger("min", element.getMinElement()); 25637 } 25638 if (element.hasMaxElement()) { 25639 composeString("max", element.getMaxElement()); 25640 } 25641 if (element.hasDocumentationElement()) { 25642 composeString("documentation", element.getDocumentationElement()); 25643 } 25644 if (element.hasTypeElement()) { 25645 composeCode("type", element.getTypeElement()); 25646 } 25647 if (element.hasSearchTypeElement()) 25648 composeEnumeration("searchType", element.getSearchTypeElement(), new Enumerations.SearchParamTypeEnumFactory()); 25649 if (element.hasProfile()) { 25650 composeReference("profile", element.getProfile()); 25651 } 25652 if (element.hasBinding()) { 25653 composeOperationDefinitionOperationDefinitionParameterBindingComponent("binding", element.getBinding()); 25654 } 25655 if (element.hasPart()) { 25656 for (OperationDefinition.OperationDefinitionParameterComponent e : element.getPart()) 25657 composeOperationDefinitionOperationDefinitionParameterComponent("part", e); 25658 } 25659 composeElementClose(element); 25660 xml.exit(FHIR_NS, name); 25661 } 25662 } 25663 25664 protected void composeOperationDefinitionOperationDefinitionParameterBindingComponent(String name, OperationDefinition.OperationDefinitionParameterBindingComponent element) throws IOException { 25665 if (element != null) { 25666 composeElementAttributes(element); 25667 xml.enter(FHIR_NS, name); 25668 composeBackboneElements(element); 25669 if (element.hasStrengthElement()) 25670 composeEnumeration("strength", element.getStrengthElement(), new Enumerations.BindingStrengthEnumFactory()); 25671 if (element.hasValueSet()) { 25672 composeType("valueSet", element.getValueSet()); 25673 } composeElementClose(element); 25674 xml.exit(FHIR_NS, name); 25675 } 25676 } 25677 25678 protected void composeOperationOutcome(String name, OperationOutcome element) throws IOException { 25679 if (element != null) { 25680 composeDomainResourceAttributes(element); 25681 xml.enter(FHIR_NS, name); 25682 composeDomainResourceElements(element); 25683 if (element.hasIssue()) { 25684 for (OperationOutcome.OperationOutcomeIssueComponent e : element.getIssue()) 25685 composeOperationOutcomeOperationOutcomeIssueComponent("issue", e); 25686 } 25687 composeElementClose(element); 25688 xml.exit(FHIR_NS, name); 25689 } 25690 } 25691 25692 protected void composeOperationOutcomeOperationOutcomeIssueComponent(String name, OperationOutcome.OperationOutcomeIssueComponent element) throws IOException { 25693 if (element != null) { 25694 composeElementAttributes(element); 25695 xml.enter(FHIR_NS, name); 25696 composeBackboneElements(element); 25697 if (element.hasSeverityElement()) 25698 composeEnumeration("severity", element.getSeverityElement(), new OperationOutcome.IssueSeverityEnumFactory()); 25699 if (element.hasCodeElement()) 25700 composeEnumeration("code", element.getCodeElement(), new OperationOutcome.IssueTypeEnumFactory()); 25701 if (element.hasDetails()) { 25702 composeCodeableConcept("details", element.getDetails()); 25703 } 25704 if (element.hasDiagnosticsElement()) { 25705 composeString("diagnostics", element.getDiagnosticsElement()); 25706 } 25707 if (element.hasLocation()) { 25708 for (StringType e : element.getLocation()) 25709 composeString("location", e); 25710 } 25711 if (element.hasExpression()) { 25712 for (StringType e : element.getExpression()) 25713 composeString("expression", e); 25714 } 25715 composeElementClose(element); 25716 xml.exit(FHIR_NS, name); 25717 } 25718 } 25719 25720 protected void composeOrder(String name, Order element) throws IOException { 25721 if (element != null) { 25722 composeDomainResourceAttributes(element); 25723 xml.enter(FHIR_NS, name); 25724 composeDomainResourceElements(element); 25725 if (element.hasIdentifier()) { 25726 for (Identifier e : element.getIdentifier()) 25727 composeIdentifier("identifier", e); 25728 } 25729 if (element.hasDateElement()) { 25730 composeDateTime("date", element.getDateElement()); 25731 } 25732 if (element.hasSubject()) { 25733 composeReference("subject", element.getSubject()); 25734 } 25735 if (element.hasSource()) { 25736 composeReference("source", element.getSource()); 25737 } 25738 if (element.hasTarget()) { 25739 composeReference("target", element.getTarget()); 25740 } 25741 if (element.hasReason()) { 25742 composeType("reason", element.getReason()); 25743 } if (element.hasWhen()) { 25744 composeOrderOrderWhenComponent("when", element.getWhen()); 25745 } 25746 if (element.hasDetail()) { 25747 for (Reference e : element.getDetail()) 25748 composeReference("detail", e); 25749 } 25750 composeElementClose(element); 25751 xml.exit(FHIR_NS, name); 25752 } 25753 } 25754 25755 protected void composeOrderOrderWhenComponent(String name, Order.OrderWhenComponent element) throws IOException { 25756 if (element != null) { 25757 composeElementAttributes(element); 25758 xml.enter(FHIR_NS, name); 25759 composeBackboneElements(element); 25760 if (element.hasCode()) { 25761 composeCodeableConcept("code", element.getCode()); 25762 } 25763 if (element.hasSchedule()) { 25764 composeTiming("schedule", element.getSchedule()); 25765 } 25766 composeElementClose(element); 25767 xml.exit(FHIR_NS, name); 25768 } 25769 } 25770 25771 protected void composeOrderResponse(String name, OrderResponse element) throws IOException { 25772 if (element != null) { 25773 composeDomainResourceAttributes(element); 25774 xml.enter(FHIR_NS, name); 25775 composeDomainResourceElements(element); 25776 if (element.hasIdentifier()) { 25777 for (Identifier e : element.getIdentifier()) 25778 composeIdentifier("identifier", e); 25779 } 25780 if (element.hasRequest()) { 25781 composeReference("request", element.getRequest()); 25782 } 25783 if (element.hasDateElement()) { 25784 composeDateTime("date", element.getDateElement()); 25785 } 25786 if (element.hasWho()) { 25787 composeReference("who", element.getWho()); 25788 } 25789 if (element.hasOrderStatusElement()) 25790 composeEnumeration("orderStatus", element.getOrderStatusElement(), new OrderResponse.OrderStatusEnumFactory()); 25791 if (element.hasDescriptionElement()) { 25792 composeString("description", element.getDescriptionElement()); 25793 } 25794 if (element.hasFulfillment()) { 25795 for (Reference e : element.getFulfillment()) 25796 composeReference("fulfillment", e); 25797 } 25798 composeElementClose(element); 25799 xml.exit(FHIR_NS, name); 25800 } 25801 } 25802 25803 protected void composeOrderSet(String name, OrderSet element) throws IOException { 25804 if (element != null) { 25805 composeDomainResourceAttributes(element); 25806 xml.enter(FHIR_NS, name); 25807 composeDomainResourceElements(element); 25808 if (element.hasModuleMetadata()) { 25809 composeModuleMetadata("moduleMetadata", element.getModuleMetadata()); 25810 } 25811 if (element.hasLibrary()) { 25812 for (Reference e : element.getLibrary()) 25813 composeReference("library", e); 25814 } 25815 if (element.hasAction()) { 25816 for (ActionDefinition e : element.getAction()) 25817 composeActionDefinition("action", e); 25818 } 25819 composeElementClose(element); 25820 xml.exit(FHIR_NS, name); 25821 } 25822 } 25823 25824 protected void composeOrganization(String name, Organization element) throws IOException { 25825 if (element != null) { 25826 composeDomainResourceAttributes(element); 25827 xml.enter(FHIR_NS, name); 25828 composeDomainResourceElements(element); 25829 if (element.hasIdentifier()) { 25830 for (Identifier e : element.getIdentifier()) 25831 composeIdentifier("identifier", e); 25832 } 25833 if (element.hasActiveElement()) { 25834 composeBoolean("active", element.getActiveElement()); 25835 } 25836 if (element.hasType()) { 25837 composeCodeableConcept("type", element.getType()); 25838 } 25839 if (element.hasNameElement()) { 25840 composeString("name", element.getNameElement()); 25841 } 25842 if (element.hasTelecom()) { 25843 for (ContactPoint e : element.getTelecom()) 25844 composeContactPoint("telecom", e); 25845 } 25846 if (element.hasAddress()) { 25847 for (Address e : element.getAddress()) 25848 composeAddress("address", e); 25849 } 25850 if (element.hasPartOf()) { 25851 composeReference("partOf", element.getPartOf()); 25852 } 25853 if (element.hasContact()) { 25854 for (Organization.OrganizationContactComponent e : element.getContact()) 25855 composeOrganizationOrganizationContactComponent("contact", e); 25856 } 25857 composeElementClose(element); 25858 xml.exit(FHIR_NS, name); 25859 } 25860 } 25861 25862 protected void composeOrganizationOrganizationContactComponent(String name, Organization.OrganizationContactComponent element) throws IOException { 25863 if (element != null) { 25864 composeElementAttributes(element); 25865 xml.enter(FHIR_NS, name); 25866 composeBackboneElements(element); 25867 if (element.hasPurpose()) { 25868 composeCodeableConcept("purpose", element.getPurpose()); 25869 } 25870 if (element.hasName()) { 25871 composeHumanName("name", element.getName()); 25872 } 25873 if (element.hasTelecom()) { 25874 for (ContactPoint e : element.getTelecom()) 25875 composeContactPoint("telecom", e); 25876 } 25877 if (element.hasAddress()) { 25878 composeAddress("address", element.getAddress()); 25879 } 25880 composeElementClose(element); 25881 xml.exit(FHIR_NS, name); 25882 } 25883 } 25884 25885 protected void composePatient(String name, Patient element) throws IOException { 25886 if (element != null) { 25887 composeDomainResourceAttributes(element); 25888 xml.enter(FHIR_NS, name); 25889 composeDomainResourceElements(element); 25890 if (element.hasIdentifier()) { 25891 for (Identifier e : element.getIdentifier()) 25892 composeIdentifier("identifier", e); 25893 } 25894 if (element.hasActiveElement()) { 25895 composeBoolean("active", element.getActiveElement()); 25896 } 25897 if (element.hasName()) { 25898 for (HumanName e : element.getName()) 25899 composeHumanName("name", e); 25900 } 25901 if (element.hasTelecom()) { 25902 for (ContactPoint e : element.getTelecom()) 25903 composeContactPoint("telecom", e); 25904 } 25905 if (element.hasGenderElement()) 25906 composeEnumeration("gender", element.getGenderElement(), new Enumerations.AdministrativeGenderEnumFactory()); 25907 if (element.hasBirthDateElement()) { 25908 composeDate("birthDate", element.getBirthDateElement()); 25909 } 25910 if (element.hasDeceased()) { 25911 composeType("deceased", element.getDeceased()); 25912 } if (element.hasAddress()) { 25913 for (Address e : element.getAddress()) 25914 composeAddress("address", e); 25915 } 25916 if (element.hasMaritalStatus()) { 25917 composeCodeableConcept("maritalStatus", element.getMaritalStatus()); 25918 } 25919 if (element.hasMultipleBirth()) { 25920 composeType("multipleBirth", element.getMultipleBirth()); 25921 } if (element.hasPhoto()) { 25922 for (Attachment e : element.getPhoto()) 25923 composeAttachment("photo", e); 25924 } 25925 if (element.hasContact()) { 25926 for (Patient.ContactComponent e : element.getContact()) 25927 composePatientContactComponent("contact", e); 25928 } 25929 if (element.hasAnimal()) { 25930 composePatientAnimalComponent("animal", element.getAnimal()); 25931 } 25932 if (element.hasCommunication()) { 25933 for (Patient.PatientCommunicationComponent e : element.getCommunication()) 25934 composePatientPatientCommunicationComponent("communication", e); 25935 } 25936 if (element.hasCareProvider()) { 25937 for (Reference e : element.getCareProvider()) 25938 composeReference("careProvider", e); 25939 } 25940 if (element.hasManagingOrganization()) { 25941 composeReference("managingOrganization", element.getManagingOrganization()); 25942 } 25943 if (element.hasLink()) { 25944 for (Patient.PatientLinkComponent e : element.getLink()) 25945 composePatientPatientLinkComponent("link", e); 25946 } 25947 composeElementClose(element); 25948 xml.exit(FHIR_NS, name); 25949 } 25950 } 25951 25952 protected void composePatientContactComponent(String name, Patient.ContactComponent element) throws IOException { 25953 if (element != null) { 25954 composeElementAttributes(element); 25955 xml.enter(FHIR_NS, name); 25956 composeBackboneElements(element); 25957 if (element.hasRelationship()) { 25958 for (CodeableConcept e : element.getRelationship()) 25959 composeCodeableConcept("relationship", e); 25960 } 25961 if (element.hasName()) { 25962 composeHumanName("name", element.getName()); 25963 } 25964 if (element.hasTelecom()) { 25965 for (ContactPoint e : element.getTelecom()) 25966 composeContactPoint("telecom", e); 25967 } 25968 if (element.hasAddress()) { 25969 composeAddress("address", element.getAddress()); 25970 } 25971 if (element.hasGenderElement()) 25972 composeEnumeration("gender", element.getGenderElement(), new Enumerations.AdministrativeGenderEnumFactory()); 25973 if (element.hasOrganization()) { 25974 composeReference("organization", element.getOrganization()); 25975 } 25976 if (element.hasPeriod()) { 25977 composePeriod("period", element.getPeriod()); 25978 } 25979 composeElementClose(element); 25980 xml.exit(FHIR_NS, name); 25981 } 25982 } 25983 25984 protected void composePatientAnimalComponent(String name, Patient.AnimalComponent element) throws IOException { 25985 if (element != null) { 25986 composeElementAttributes(element); 25987 xml.enter(FHIR_NS, name); 25988 composeBackboneElements(element); 25989 if (element.hasSpecies()) { 25990 composeCodeableConcept("species", element.getSpecies()); 25991 } 25992 if (element.hasBreed()) { 25993 composeCodeableConcept("breed", element.getBreed()); 25994 } 25995 if (element.hasGenderStatus()) { 25996 composeCodeableConcept("genderStatus", element.getGenderStatus()); 25997 } 25998 composeElementClose(element); 25999 xml.exit(FHIR_NS, name); 26000 } 26001 } 26002 26003 protected void composePatientPatientCommunicationComponent(String name, Patient.PatientCommunicationComponent element) throws IOException { 26004 if (element != null) { 26005 composeElementAttributes(element); 26006 xml.enter(FHIR_NS, name); 26007 composeBackboneElements(element); 26008 if (element.hasLanguage()) { 26009 composeCodeableConcept("language", element.getLanguage()); 26010 } 26011 if (element.hasPreferredElement()) { 26012 composeBoolean("preferred", element.getPreferredElement()); 26013 } 26014 composeElementClose(element); 26015 xml.exit(FHIR_NS, name); 26016 } 26017 } 26018 26019 protected void composePatientPatientLinkComponent(String name, Patient.PatientLinkComponent element) throws IOException { 26020 if (element != null) { 26021 composeElementAttributes(element); 26022 xml.enter(FHIR_NS, name); 26023 composeBackboneElements(element); 26024 if (element.hasOther()) { 26025 composeReference("other", element.getOther()); 26026 } 26027 if (element.hasTypeElement()) 26028 composeEnumeration("type", element.getTypeElement(), new Patient.LinkTypeEnumFactory()); 26029 composeElementClose(element); 26030 xml.exit(FHIR_NS, name); 26031 } 26032 } 26033 26034 protected void composePaymentNotice(String name, PaymentNotice element) throws IOException { 26035 if (element != null) { 26036 composeDomainResourceAttributes(element); 26037 xml.enter(FHIR_NS, name); 26038 composeDomainResourceElements(element); 26039 if (element.hasIdentifier()) { 26040 for (Identifier e : element.getIdentifier()) 26041 composeIdentifier("identifier", e); 26042 } 26043 if (element.hasRuleset()) { 26044 composeCoding("ruleset", element.getRuleset()); 26045 } 26046 if (element.hasOriginalRuleset()) { 26047 composeCoding("originalRuleset", element.getOriginalRuleset()); 26048 } 26049 if (element.hasCreatedElement()) { 26050 composeDateTime("created", element.getCreatedElement()); 26051 } 26052 if (element.hasTarget()) { 26053 composeType("target", element.getTarget()); 26054 } if (element.hasProvider()) { 26055 composeType("provider", element.getProvider()); 26056 } if (element.hasOrganization()) { 26057 composeType("organization", element.getOrganization()); 26058 } if (element.hasRequest()) { 26059 composeType("request", element.getRequest()); 26060 } if (element.hasResponse()) { 26061 composeType("response", element.getResponse()); 26062 } if (element.hasPaymentStatus()) { 26063 composeCoding("paymentStatus", element.getPaymentStatus()); 26064 } 26065 if (element.hasStatusDateElement()) { 26066 composeDate("statusDate", element.getStatusDateElement()); 26067 } 26068 composeElementClose(element); 26069 xml.exit(FHIR_NS, name); 26070 } 26071 } 26072 26073 protected void composePaymentReconciliation(String name, PaymentReconciliation element) throws IOException { 26074 if (element != null) { 26075 composeDomainResourceAttributes(element); 26076 xml.enter(FHIR_NS, name); 26077 composeDomainResourceElements(element); 26078 if (element.hasIdentifier()) { 26079 for (Identifier e : element.getIdentifier()) 26080 composeIdentifier("identifier", e); 26081 } 26082 if (element.hasRequest()) { 26083 composeType("request", element.getRequest()); 26084 } if (element.hasOutcomeElement()) 26085 composeEnumeration("outcome", element.getOutcomeElement(), new Enumerations.RemittanceOutcomeEnumFactory()); 26086 if (element.hasDispositionElement()) { 26087 composeString("disposition", element.getDispositionElement()); 26088 } 26089 if (element.hasRuleset()) { 26090 composeCoding("ruleset", element.getRuleset()); 26091 } 26092 if (element.hasOriginalRuleset()) { 26093 composeCoding("originalRuleset", element.getOriginalRuleset()); 26094 } 26095 if (element.hasCreatedElement()) { 26096 composeDateTime("created", element.getCreatedElement()); 26097 } 26098 if (element.hasPeriod()) { 26099 composePeriod("period", element.getPeriod()); 26100 } 26101 if (element.hasOrganization()) { 26102 composeType("organization", element.getOrganization()); 26103 } if (element.hasRequestProvider()) { 26104 composeType("requestProvider", element.getRequestProvider()); 26105 } if (element.hasRequestOrganization()) { 26106 composeType("requestOrganization", element.getRequestOrganization()); 26107 } if (element.hasDetail()) { 26108 for (PaymentReconciliation.DetailsComponent e : element.getDetail()) 26109 composePaymentReconciliationDetailsComponent("detail", e); 26110 } 26111 if (element.hasForm()) { 26112 composeCoding("form", element.getForm()); 26113 } 26114 if (element.hasTotal()) { 26115 composeMoney("total", element.getTotal()); 26116 } 26117 if (element.hasNote()) { 26118 for (PaymentReconciliation.NotesComponent e : element.getNote()) 26119 composePaymentReconciliationNotesComponent("note", e); 26120 } 26121 composeElementClose(element); 26122 xml.exit(FHIR_NS, name); 26123 } 26124 } 26125 26126 protected void composePaymentReconciliationDetailsComponent(String name, PaymentReconciliation.DetailsComponent element) throws IOException { 26127 if (element != null) { 26128 composeElementAttributes(element); 26129 xml.enter(FHIR_NS, name); 26130 composeBackboneElements(element); 26131 if (element.hasType()) { 26132 composeCoding("type", element.getType()); 26133 } 26134 if (element.hasRequest()) { 26135 composeType("request", element.getRequest()); 26136 } if (element.hasResponce()) { 26137 composeType("responce", element.getResponce()); 26138 } if (element.hasSubmitter()) { 26139 composeType("submitter", element.getSubmitter()); 26140 } if (element.hasPayee()) { 26141 composeType("payee", element.getPayee()); 26142 } if (element.hasDateElement()) { 26143 composeDate("date", element.getDateElement()); 26144 } 26145 if (element.hasAmount()) { 26146 composeMoney("amount", element.getAmount()); 26147 } 26148 composeElementClose(element); 26149 xml.exit(FHIR_NS, name); 26150 } 26151 } 26152 26153 protected void composePaymentReconciliationNotesComponent(String name, PaymentReconciliation.NotesComponent element) throws IOException { 26154 if (element != null) { 26155 composeElementAttributes(element); 26156 xml.enter(FHIR_NS, name); 26157 composeBackboneElements(element); 26158 if (element.hasType()) { 26159 composeCoding("type", element.getType()); 26160 } 26161 if (element.hasTextElement()) { 26162 composeString("text", element.getTextElement()); 26163 } 26164 composeElementClose(element); 26165 xml.exit(FHIR_NS, name); 26166 } 26167 } 26168 26169 protected void composePerson(String name, Person element) throws IOException { 26170 if (element != null) { 26171 composeDomainResourceAttributes(element); 26172 xml.enter(FHIR_NS, name); 26173 composeDomainResourceElements(element); 26174 if (element.hasIdentifier()) { 26175 for (Identifier e : element.getIdentifier()) 26176 composeIdentifier("identifier", e); 26177 } 26178 if (element.hasName()) { 26179 for (HumanName e : element.getName()) 26180 composeHumanName("name", e); 26181 } 26182 if (element.hasTelecom()) { 26183 for (ContactPoint e : element.getTelecom()) 26184 composeContactPoint("telecom", e); 26185 } 26186 if (element.hasGenderElement()) 26187 composeEnumeration("gender", element.getGenderElement(), new Enumerations.AdministrativeGenderEnumFactory()); 26188 if (element.hasBirthDateElement()) { 26189 composeDate("birthDate", element.getBirthDateElement()); 26190 } 26191 if (element.hasAddress()) { 26192 for (Address e : element.getAddress()) 26193 composeAddress("address", e); 26194 } 26195 if (element.hasPhoto()) { 26196 composeAttachment("photo", element.getPhoto()); 26197 } 26198 if (element.hasManagingOrganization()) { 26199 composeReference("managingOrganization", element.getManagingOrganization()); 26200 } 26201 if (element.hasActiveElement()) { 26202 composeBoolean("active", element.getActiveElement()); 26203 } 26204 if (element.hasLink()) { 26205 for (Person.PersonLinkComponent e : element.getLink()) 26206 composePersonPersonLinkComponent("link", e); 26207 } 26208 composeElementClose(element); 26209 xml.exit(FHIR_NS, name); 26210 } 26211 } 26212 26213 protected void composePersonPersonLinkComponent(String name, Person.PersonLinkComponent element) throws IOException { 26214 if (element != null) { 26215 composeElementAttributes(element); 26216 xml.enter(FHIR_NS, name); 26217 composeBackboneElements(element); 26218 if (element.hasTarget()) { 26219 composeReference("target", element.getTarget()); 26220 } 26221 if (element.hasAssuranceElement()) 26222 composeEnumeration("assurance", element.getAssuranceElement(), new Person.IdentityAssuranceLevelEnumFactory()); 26223 composeElementClose(element); 26224 xml.exit(FHIR_NS, name); 26225 } 26226 } 26227 26228 protected void composePractitioner(String name, Practitioner element) throws IOException { 26229 if (element != null) { 26230 composeDomainResourceAttributes(element); 26231 xml.enter(FHIR_NS, name); 26232 composeDomainResourceElements(element); 26233 if (element.hasIdentifier()) { 26234 for (Identifier e : element.getIdentifier()) 26235 composeIdentifier("identifier", e); 26236 } 26237 if (element.hasActiveElement()) { 26238 composeBoolean("active", element.getActiveElement()); 26239 } 26240 if (element.hasName()) { 26241 for (HumanName e : element.getName()) 26242 composeHumanName("name", e); 26243 } 26244 if (element.hasTelecom()) { 26245 for (ContactPoint e : element.getTelecom()) 26246 composeContactPoint("telecom", e); 26247 } 26248 if (element.hasAddress()) { 26249 for (Address e : element.getAddress()) 26250 composeAddress("address", e); 26251 } 26252 if (element.hasGenderElement()) 26253 composeEnumeration("gender", element.getGenderElement(), new Enumerations.AdministrativeGenderEnumFactory()); 26254 if (element.hasBirthDateElement()) { 26255 composeDate("birthDate", element.getBirthDateElement()); 26256 } 26257 if (element.hasPhoto()) { 26258 for (Attachment e : element.getPhoto()) 26259 composeAttachment("photo", e); 26260 } 26261 if (element.hasPractitionerRole()) { 26262 for (Practitioner.PractitionerPractitionerRoleComponent e : element.getPractitionerRole()) 26263 composePractitionerPractitionerPractitionerRoleComponent("practitionerRole", e); 26264 } 26265 if (element.hasQualification()) { 26266 for (Practitioner.PractitionerQualificationComponent e : element.getQualification()) 26267 composePractitionerPractitionerQualificationComponent("qualification", e); 26268 } 26269 if (element.hasCommunication()) { 26270 for (CodeableConcept e : element.getCommunication()) 26271 composeCodeableConcept("communication", e); 26272 } 26273 composeElementClose(element); 26274 xml.exit(FHIR_NS, name); 26275 } 26276 } 26277 26278 protected void composePractitionerPractitionerPractitionerRoleComponent(String name, Practitioner.PractitionerPractitionerRoleComponent element) throws IOException { 26279 if (element != null) { 26280 composeElementAttributes(element); 26281 xml.enter(FHIR_NS, name); 26282 composeBackboneElements(element); 26283 if (element.hasOrganization()) { 26284 composeReference("organization", element.getOrganization()); 26285 } 26286 if (element.hasRole()) { 26287 composeCodeableConcept("role", element.getRole()); 26288 } 26289 if (element.hasSpecialty()) { 26290 for (CodeableConcept e : element.getSpecialty()) 26291 composeCodeableConcept("specialty", e); 26292 } 26293 if (element.hasIdentifier()) { 26294 for (Identifier e : element.getIdentifier()) 26295 composeIdentifier("identifier", e); 26296 } 26297 if (element.hasTelecom()) { 26298 for (ContactPoint e : element.getTelecom()) 26299 composeContactPoint("telecom", e); 26300 } 26301 if (element.hasPeriod()) { 26302 composePeriod("period", element.getPeriod()); 26303 } 26304 if (element.hasLocation()) { 26305 for (Reference e : element.getLocation()) 26306 composeReference("location", e); 26307 } 26308 if (element.hasHealthcareService()) { 26309 for (Reference e : element.getHealthcareService()) 26310 composeReference("healthcareService", e); 26311 } 26312 composeElementClose(element); 26313 xml.exit(FHIR_NS, name); 26314 } 26315 } 26316 26317 protected void composePractitionerPractitionerQualificationComponent(String name, Practitioner.PractitionerQualificationComponent element) throws IOException { 26318 if (element != null) { 26319 composeElementAttributes(element); 26320 xml.enter(FHIR_NS, name); 26321 composeBackboneElements(element); 26322 if (element.hasIdentifier()) { 26323 for (Identifier e : element.getIdentifier()) 26324 composeIdentifier("identifier", e); 26325 } 26326 if (element.hasCode()) { 26327 composeCodeableConcept("code", element.getCode()); 26328 } 26329 if (element.hasPeriod()) { 26330 composePeriod("period", element.getPeriod()); 26331 } 26332 if (element.hasIssuer()) { 26333 composeReference("issuer", element.getIssuer()); 26334 } 26335 composeElementClose(element); 26336 xml.exit(FHIR_NS, name); 26337 } 26338 } 26339 26340 protected void composePractitionerRole(String name, PractitionerRole element) throws IOException { 26341 if (element != null) { 26342 composeDomainResourceAttributes(element); 26343 xml.enter(FHIR_NS, name); 26344 composeDomainResourceElements(element); 26345 if (element.hasIdentifier()) { 26346 for (Identifier e : element.getIdentifier()) 26347 composeIdentifier("identifier", e); 26348 } 26349 if (element.hasActiveElement()) { 26350 composeBoolean("active", element.getActiveElement()); 26351 } 26352 if (element.hasPractitioner()) { 26353 composeReference("practitioner", element.getPractitioner()); 26354 } 26355 if (element.hasOrganization()) { 26356 composeReference("organization", element.getOrganization()); 26357 } 26358 if (element.hasRole()) { 26359 for (CodeableConcept e : element.getRole()) 26360 composeCodeableConcept("role", e); 26361 } 26362 if (element.hasSpecialty()) { 26363 for (CodeableConcept e : element.getSpecialty()) 26364 composeCodeableConcept("specialty", e); 26365 } 26366 if (element.hasLocation()) { 26367 for (Reference e : element.getLocation()) 26368 composeReference("location", e); 26369 } 26370 if (element.hasHealthcareService()) { 26371 for (Reference e : element.getHealthcareService()) 26372 composeReference("healthcareService", e); 26373 } 26374 if (element.hasTelecom()) { 26375 for (ContactPoint e : element.getTelecom()) 26376 composeContactPoint("telecom", e); 26377 } 26378 if (element.hasPeriod()) { 26379 composePeriod("period", element.getPeriod()); 26380 } 26381 if (element.hasAvailableTime()) { 26382 for (PractitionerRole.PractitionerRoleAvailableTimeComponent e : element.getAvailableTime()) 26383 composePractitionerRolePractitionerRoleAvailableTimeComponent("availableTime", e); 26384 } 26385 if (element.hasNotAvailable()) { 26386 for (PractitionerRole.PractitionerRoleNotAvailableComponent e : element.getNotAvailable()) 26387 composePractitionerRolePractitionerRoleNotAvailableComponent("notAvailable", e); 26388 } 26389 if (element.hasAvailabilityExceptionsElement()) { 26390 composeString("availabilityExceptions", element.getAvailabilityExceptionsElement()); 26391 } 26392 composeElementClose(element); 26393 xml.exit(FHIR_NS, name); 26394 } 26395 } 26396 26397 protected void composePractitionerRolePractitionerRoleAvailableTimeComponent(String name, PractitionerRole.PractitionerRoleAvailableTimeComponent element) throws IOException { 26398 if (element != null) { 26399 composeElementAttributes(element); 26400 xml.enter(FHIR_NS, name); 26401 composeBackboneElements(element); 26402 if (element.hasDaysOfWeek()) { 26403 for (CodeType e : element.getDaysOfWeek()) 26404 composeCode("daysOfWeek", e); 26405 } 26406 if (element.hasAllDayElement()) { 26407 composeBoolean("allDay", element.getAllDayElement()); 26408 } 26409 if (element.hasAvailableStartTimeElement()) { 26410 composeTime("availableStartTime", element.getAvailableStartTimeElement()); 26411 } 26412 if (element.hasAvailableEndTimeElement()) { 26413 composeTime("availableEndTime", element.getAvailableEndTimeElement()); 26414 } 26415 composeElementClose(element); 26416 xml.exit(FHIR_NS, name); 26417 } 26418 } 26419 26420 protected void composePractitionerRolePractitionerRoleNotAvailableComponent(String name, PractitionerRole.PractitionerRoleNotAvailableComponent element) throws IOException { 26421 if (element != null) { 26422 composeElementAttributes(element); 26423 xml.enter(FHIR_NS, name); 26424 composeBackboneElements(element); 26425 if (element.hasDescriptionElement()) { 26426 composeString("description", element.getDescriptionElement()); 26427 } 26428 if (element.hasDuring()) { 26429 composePeriod("during", element.getDuring()); 26430 } 26431 composeElementClose(element); 26432 xml.exit(FHIR_NS, name); 26433 } 26434 } 26435 26436 protected void composeProcedure(String name, Procedure element) throws IOException { 26437 if (element != null) { 26438 composeDomainResourceAttributes(element); 26439 xml.enter(FHIR_NS, name); 26440 composeDomainResourceElements(element); 26441 if (element.hasIdentifier()) { 26442 for (Identifier e : element.getIdentifier()) 26443 composeIdentifier("identifier", e); 26444 } 26445 if (element.hasSubject()) { 26446 composeReference("subject", element.getSubject()); 26447 } 26448 if (element.hasStatusElement()) 26449 composeEnumeration("status", element.getStatusElement(), new Procedure.ProcedureStatusEnumFactory()); 26450 if (element.hasCategory()) { 26451 composeCodeableConcept("category", element.getCategory()); 26452 } 26453 if (element.hasCode()) { 26454 composeCodeableConcept("code", element.getCode()); 26455 } 26456 if (element.hasNotPerformedElement()) { 26457 composeBoolean("notPerformed", element.getNotPerformedElement()); 26458 } 26459 if (element.hasReasonNotPerformed()) { 26460 for (CodeableConcept e : element.getReasonNotPerformed()) 26461 composeCodeableConcept("reasonNotPerformed", e); 26462 } 26463 if (element.hasBodySite()) { 26464 for (CodeableConcept e : element.getBodySite()) 26465 composeCodeableConcept("bodySite", e); 26466 } 26467 if (element.hasReason()) { 26468 composeType("reason", element.getReason()); 26469 } if (element.hasPerformer()) { 26470 for (Procedure.ProcedurePerformerComponent e : element.getPerformer()) 26471 composeProcedureProcedurePerformerComponent("performer", e); 26472 } 26473 if (element.hasPerformed()) { 26474 composeType("performed", element.getPerformed()); 26475 } if (element.hasEncounter()) { 26476 composeReference("encounter", element.getEncounter()); 26477 } 26478 if (element.hasLocation()) { 26479 composeReference("location", element.getLocation()); 26480 } 26481 if (element.hasOutcome()) { 26482 composeCodeableConcept("outcome", element.getOutcome()); 26483 } 26484 if (element.hasReport()) { 26485 for (Reference e : element.getReport()) 26486 composeReference("report", e); 26487 } 26488 if (element.hasComplication()) { 26489 for (CodeableConcept e : element.getComplication()) 26490 composeCodeableConcept("complication", e); 26491 } 26492 if (element.hasFollowUp()) { 26493 for (CodeableConcept e : element.getFollowUp()) 26494 composeCodeableConcept("followUp", e); 26495 } 26496 if (element.hasRequest()) { 26497 composeReference("request", element.getRequest()); 26498 } 26499 if (element.hasNotes()) { 26500 for (Annotation e : element.getNotes()) 26501 composeAnnotation("notes", e); 26502 } 26503 if (element.hasFocalDevice()) { 26504 for (Procedure.ProcedureFocalDeviceComponent e : element.getFocalDevice()) 26505 composeProcedureProcedureFocalDeviceComponent("focalDevice", e); 26506 } 26507 if (element.hasUsed()) { 26508 for (Reference e : element.getUsed()) 26509 composeReference("used", e); 26510 } 26511 composeElementClose(element); 26512 xml.exit(FHIR_NS, name); 26513 } 26514 } 26515 26516 protected void composeProcedureProcedurePerformerComponent(String name, Procedure.ProcedurePerformerComponent element) throws IOException { 26517 if (element != null) { 26518 composeElementAttributes(element); 26519 xml.enter(FHIR_NS, name); 26520 composeBackboneElements(element); 26521 if (element.hasActor()) { 26522 composeReference("actor", element.getActor()); 26523 } 26524 if (element.hasRole()) { 26525 composeCodeableConcept("role", element.getRole()); 26526 } 26527 composeElementClose(element); 26528 xml.exit(FHIR_NS, name); 26529 } 26530 } 26531 26532 protected void composeProcedureProcedureFocalDeviceComponent(String name, Procedure.ProcedureFocalDeviceComponent element) throws IOException { 26533 if (element != null) { 26534 composeElementAttributes(element); 26535 xml.enter(FHIR_NS, name); 26536 composeBackboneElements(element); 26537 if (element.hasAction()) { 26538 composeCodeableConcept("action", element.getAction()); 26539 } 26540 if (element.hasManipulated()) { 26541 composeReference("manipulated", element.getManipulated()); 26542 } 26543 composeElementClose(element); 26544 xml.exit(FHIR_NS, name); 26545 } 26546 } 26547 26548 protected void composeProcedureRequest(String name, ProcedureRequest element) throws IOException { 26549 if (element != null) { 26550 composeDomainResourceAttributes(element); 26551 xml.enter(FHIR_NS, name); 26552 composeDomainResourceElements(element); 26553 if (element.hasIdentifier()) { 26554 for (Identifier e : element.getIdentifier()) 26555 composeIdentifier("identifier", e); 26556 } 26557 if (element.hasSubject()) { 26558 composeReference("subject", element.getSubject()); 26559 } 26560 if (element.hasCode()) { 26561 composeCodeableConcept("code", element.getCode()); 26562 } 26563 if (element.hasBodySite()) { 26564 for (CodeableConcept e : element.getBodySite()) 26565 composeCodeableConcept("bodySite", e); 26566 } 26567 if (element.hasReason()) { 26568 composeType("reason", element.getReason()); 26569 } if (element.hasScheduled()) { 26570 composeType("scheduled", element.getScheduled()); 26571 } if (element.hasEncounter()) { 26572 composeReference("encounter", element.getEncounter()); 26573 } 26574 if (element.hasPerformer()) { 26575 composeReference("performer", element.getPerformer()); 26576 } 26577 if (element.hasStatusElement()) 26578 composeEnumeration("status", element.getStatusElement(), new ProcedureRequest.ProcedureRequestStatusEnumFactory()); 26579 if (element.hasNotes()) { 26580 for (Annotation e : element.getNotes()) 26581 composeAnnotation("notes", e); 26582 } 26583 if (element.hasAsNeeded()) { 26584 composeType("asNeeded", element.getAsNeeded()); 26585 } if (element.hasOrderedOnElement()) { 26586 composeDateTime("orderedOn", element.getOrderedOnElement()); 26587 } 26588 if (element.hasOrderer()) { 26589 composeReference("orderer", element.getOrderer()); 26590 } 26591 if (element.hasPriorityElement()) 26592 composeEnumeration("priority", element.getPriorityElement(), new ProcedureRequest.ProcedureRequestPriorityEnumFactory()); 26593 composeElementClose(element); 26594 xml.exit(FHIR_NS, name); 26595 } 26596 } 26597 26598 protected void composeProcessRequest(String name, ProcessRequest element) throws IOException { 26599 if (element != null) { 26600 composeDomainResourceAttributes(element); 26601 xml.enter(FHIR_NS, name); 26602 composeDomainResourceElements(element); 26603 if (element.hasActionElement()) 26604 composeEnumeration("action", element.getActionElement(), new ProcessRequest.ActionListEnumFactory()); 26605 if (element.hasIdentifier()) { 26606 for (Identifier e : element.getIdentifier()) 26607 composeIdentifier("identifier", e); 26608 } 26609 if (element.hasRuleset()) { 26610 composeCoding("ruleset", element.getRuleset()); 26611 } 26612 if (element.hasOriginalRuleset()) { 26613 composeCoding("originalRuleset", element.getOriginalRuleset()); 26614 } 26615 if (element.hasCreatedElement()) { 26616 composeDateTime("created", element.getCreatedElement()); 26617 } 26618 if (element.hasTarget()) { 26619 composeType("target", element.getTarget()); 26620 } if (element.hasProvider()) { 26621 composeType("provider", element.getProvider()); 26622 } if (element.hasOrganization()) { 26623 composeType("organization", element.getOrganization()); 26624 } if (element.hasRequest()) { 26625 composeType("request", element.getRequest()); 26626 } if (element.hasResponse()) { 26627 composeType("response", element.getResponse()); 26628 } if (element.hasNullifyElement()) { 26629 composeBoolean("nullify", element.getNullifyElement()); 26630 } 26631 if (element.hasReferenceElement()) { 26632 composeString("reference", element.getReferenceElement()); 26633 } 26634 if (element.hasItem()) { 26635 for (ProcessRequest.ItemsComponent e : element.getItem()) 26636 composeProcessRequestItemsComponent("item", e); 26637 } 26638 if (element.hasInclude()) { 26639 for (StringType e : element.getInclude()) 26640 composeString("include", e); 26641 } 26642 if (element.hasExclude()) { 26643 for (StringType e : element.getExclude()) 26644 composeString("exclude", e); 26645 } 26646 if (element.hasPeriod()) { 26647 composePeriod("period", element.getPeriod()); 26648 } 26649 composeElementClose(element); 26650 xml.exit(FHIR_NS, name); 26651 } 26652 } 26653 26654 protected void composeProcessRequestItemsComponent(String name, ProcessRequest.ItemsComponent element) throws IOException { 26655 if (element != null) { 26656 composeElementAttributes(element); 26657 xml.enter(FHIR_NS, name); 26658 composeBackboneElements(element); 26659 if (element.hasSequenceLinkIdElement()) { 26660 composeInteger("sequenceLinkId", element.getSequenceLinkIdElement()); 26661 } 26662 composeElementClose(element); 26663 xml.exit(FHIR_NS, name); 26664 } 26665 } 26666 26667 protected void composeProcessResponse(String name, ProcessResponse element) throws IOException { 26668 if (element != null) { 26669 composeDomainResourceAttributes(element); 26670 xml.enter(FHIR_NS, name); 26671 composeDomainResourceElements(element); 26672 if (element.hasIdentifier()) { 26673 for (Identifier e : element.getIdentifier()) 26674 composeIdentifier("identifier", e); 26675 } 26676 if (element.hasRequest()) { 26677 composeType("request", element.getRequest()); 26678 } if (element.hasOutcome()) { 26679 composeCoding("outcome", element.getOutcome()); 26680 } 26681 if (element.hasDispositionElement()) { 26682 composeString("disposition", element.getDispositionElement()); 26683 } 26684 if (element.hasRuleset()) { 26685 composeCoding("ruleset", element.getRuleset()); 26686 } 26687 if (element.hasOriginalRuleset()) { 26688 composeCoding("originalRuleset", element.getOriginalRuleset()); 26689 } 26690 if (element.hasCreatedElement()) { 26691 composeDateTime("created", element.getCreatedElement()); 26692 } 26693 if (element.hasOrganization()) { 26694 composeType("organization", element.getOrganization()); 26695 } if (element.hasRequestProvider()) { 26696 composeType("requestProvider", element.getRequestProvider()); 26697 } if (element.hasRequestOrganization()) { 26698 composeType("requestOrganization", element.getRequestOrganization()); 26699 } if (element.hasForm()) { 26700 composeCoding("form", element.getForm()); 26701 } 26702 if (element.hasNotes()) { 26703 for (ProcessResponse.ProcessResponseNotesComponent e : element.getNotes()) 26704 composeProcessResponseProcessResponseNotesComponent("notes", e); 26705 } 26706 if (element.hasError()) { 26707 for (Coding e : element.getError()) 26708 composeCoding("error", e); 26709 } 26710 composeElementClose(element); 26711 xml.exit(FHIR_NS, name); 26712 } 26713 } 26714 26715 protected void composeProcessResponseProcessResponseNotesComponent(String name, ProcessResponse.ProcessResponseNotesComponent element) throws IOException { 26716 if (element != null) { 26717 composeElementAttributes(element); 26718 xml.enter(FHIR_NS, name); 26719 composeBackboneElements(element); 26720 if (element.hasType()) { 26721 composeCoding("type", element.getType()); 26722 } 26723 if (element.hasTextElement()) { 26724 composeString("text", element.getTextElement()); 26725 } 26726 composeElementClose(element); 26727 xml.exit(FHIR_NS, name); 26728 } 26729 } 26730 26731 protected void composeProtocol(String name, Protocol element) throws IOException { 26732 if (element != null) { 26733 composeDomainResourceAttributes(element); 26734 xml.enter(FHIR_NS, name); 26735 composeDomainResourceElements(element); 26736 if (element.hasIdentifier()) { 26737 for (Identifier e : element.getIdentifier()) 26738 composeIdentifier("identifier", e); 26739 } 26740 if (element.hasTitleElement()) { 26741 composeString("title", element.getTitleElement()); 26742 } 26743 if (element.hasStatusElement()) 26744 composeEnumeration("status", element.getStatusElement(), new Protocol.ProtocolStatusEnumFactory()); 26745 if (element.hasTypeElement()) 26746 composeEnumeration("type", element.getTypeElement(), new Protocol.ProtocolTypeEnumFactory()); 26747 if (element.hasSubject()) { 26748 composeReference("subject", element.getSubject()); 26749 } 26750 if (element.hasGroup()) { 26751 composeReference("group", element.getGroup()); 26752 } 26753 if (element.hasPurposeElement()) { 26754 composeString("purpose", element.getPurposeElement()); 26755 } 26756 if (element.hasAuthor()) { 26757 composeReference("author", element.getAuthor()); 26758 } 26759 if (element.hasStep()) { 26760 for (Protocol.ProtocolStepComponent e : element.getStep()) 26761 composeProtocolProtocolStepComponent("step", e); 26762 } 26763 composeElementClose(element); 26764 xml.exit(FHIR_NS, name); 26765 } 26766 } 26767 26768 protected void composeProtocolProtocolStepComponent(String name, Protocol.ProtocolStepComponent element) throws IOException { 26769 if (element != null) { 26770 composeElementAttributes(element); 26771 xml.enter(FHIR_NS, name); 26772 composeBackboneElements(element); 26773 if (element.hasNameElement()) { 26774 composeString("name", element.getNameElement()); 26775 } 26776 if (element.hasDescriptionElement()) { 26777 composeString("description", element.getDescriptionElement()); 26778 } 26779 if (element.hasDuration()) { 26780 composeDuration("duration", element.getDuration()); 26781 } 26782 if (element.hasPrecondition()) { 26783 composeProtocolProtocolStepPreconditionComponent("precondition", element.getPrecondition()); 26784 } 26785 if (element.hasExit()) { 26786 composeProtocolProtocolStepPreconditionComponent("exit", element.getExit()); 26787 } 26788 if (element.hasFirstActivityElement()) { 26789 composeUri("firstActivity", element.getFirstActivityElement()); 26790 } 26791 if (element.hasActivity()) { 26792 for (Protocol.ProtocolStepActivityComponent e : element.getActivity()) 26793 composeProtocolProtocolStepActivityComponent("activity", e); 26794 } 26795 if (element.hasNext()) { 26796 for (Protocol.ProtocolStepNextComponent e : element.getNext()) 26797 composeProtocolProtocolStepNextComponent("next", e); 26798 } 26799 composeElementClose(element); 26800 xml.exit(FHIR_NS, name); 26801 } 26802 } 26803 26804 protected void composeProtocolProtocolStepPreconditionComponent(String name, Protocol.ProtocolStepPreconditionComponent element) throws IOException { 26805 if (element != null) { 26806 composeElementAttributes(element); 26807 xml.enter(FHIR_NS, name); 26808 composeBackboneElements(element); 26809 if (element.hasDescriptionElement()) { 26810 composeString("description", element.getDescriptionElement()); 26811 } 26812 if (element.hasCondition()) { 26813 composeProtocolProtocolStepPreconditionConditionComponent("condition", element.getCondition()); 26814 } 26815 if (element.hasIntersection()) { 26816 for (Protocol.ProtocolStepPreconditionComponent e : element.getIntersection()) 26817 composeProtocolProtocolStepPreconditionComponent("intersection", e); 26818 } 26819 if (element.hasUnion()) { 26820 for (Protocol.ProtocolStepPreconditionComponent e : element.getUnion()) 26821 composeProtocolProtocolStepPreconditionComponent("union", e); 26822 } 26823 if (element.hasExclude()) { 26824 for (Protocol.ProtocolStepPreconditionComponent e : element.getExclude()) 26825 composeProtocolProtocolStepPreconditionComponent("exclude", e); 26826 } 26827 composeElementClose(element); 26828 xml.exit(FHIR_NS, name); 26829 } 26830 } 26831 26832 protected void composeProtocolProtocolStepPreconditionConditionComponent(String name, Protocol.ProtocolStepPreconditionConditionComponent element) throws IOException { 26833 if (element != null) { 26834 composeElementAttributes(element); 26835 xml.enter(FHIR_NS, name); 26836 composeBackboneElements(element); 26837 if (element.hasType()) { 26838 composeCodeableConcept("type", element.getType()); 26839 } 26840 if (element.hasValue()) { 26841 composeType("value", element.getValue()); 26842 } composeElementClose(element); 26843 xml.exit(FHIR_NS, name); 26844 } 26845 } 26846 26847 protected void composeProtocolProtocolStepActivityComponent(String name, Protocol.ProtocolStepActivityComponent element) throws IOException { 26848 if (element != null) { 26849 composeElementAttributes(element); 26850 xml.enter(FHIR_NS, name); 26851 composeBackboneElements(element); 26852 if (element.hasAlternative()) { 26853 for (UriType e : element.getAlternative()) 26854 composeUri("alternative", e); 26855 } 26856 if (element.hasComponent()) { 26857 for (Protocol.ProtocolStepActivityComponentComponent e : element.getComponent()) 26858 composeProtocolProtocolStepActivityComponentComponent("component", e); 26859 } 26860 if (element.hasFollowing()) { 26861 for (UriType e : element.getFollowing()) 26862 composeUri("following", e); 26863 } 26864 if (element.hasWait()) { 26865 composeDuration("wait", element.getWait()); 26866 } 26867 if (element.hasDetail()) { 26868 composeProtocolProtocolStepActivityDetailComponent("detail", element.getDetail()); 26869 } 26870 composeElementClose(element); 26871 xml.exit(FHIR_NS, name); 26872 } 26873 } 26874 26875 protected void composeProtocolProtocolStepActivityComponentComponent(String name, Protocol.ProtocolStepActivityComponentComponent element) throws IOException { 26876 if (element != null) { 26877 composeElementAttributes(element); 26878 xml.enter(FHIR_NS, name); 26879 composeBackboneElements(element); 26880 if (element.hasSequenceElement()) { 26881 composeInteger("sequence", element.getSequenceElement()); 26882 } 26883 if (element.hasActivityElement()) { 26884 composeUri("activity", element.getActivityElement()); 26885 } 26886 composeElementClose(element); 26887 xml.exit(FHIR_NS, name); 26888 } 26889 } 26890 26891 protected void composeProtocolProtocolStepActivityDetailComponent(String name, Protocol.ProtocolStepActivityDetailComponent element) throws IOException { 26892 if (element != null) { 26893 composeElementAttributes(element); 26894 xml.enter(FHIR_NS, name); 26895 composeBackboneElements(element); 26896 if (element.hasCategoryElement()) 26897 composeEnumeration("category", element.getCategoryElement(), new Protocol.ActivityDefinitionCategoryEnumFactory()); 26898 if (element.hasCode()) { 26899 composeCodeableConcept("code", element.getCode()); 26900 } 26901 if (element.hasTiming()) { 26902 composeType("timing", element.getTiming()); 26903 } if (element.hasLocation()) { 26904 composeReference("location", element.getLocation()); 26905 } 26906 if (element.hasPerformer()) { 26907 for (Reference e : element.getPerformer()) 26908 composeReference("performer", e); 26909 } 26910 if (element.hasProduct()) { 26911 composeReference("product", element.getProduct()); 26912 } 26913 if (element.hasQuantity()) { 26914 composeSimpleQuantity("quantity", element.getQuantity()); 26915 } 26916 if (element.hasDescriptionElement()) { 26917 composeString("description", element.getDescriptionElement()); 26918 } 26919 composeElementClose(element); 26920 xml.exit(FHIR_NS, name); 26921 } 26922 } 26923 26924 protected void composeProtocolProtocolStepNextComponent(String name, Protocol.ProtocolStepNextComponent element) throws IOException { 26925 if (element != null) { 26926 composeElementAttributes(element); 26927 xml.enter(FHIR_NS, name); 26928 composeBackboneElements(element); 26929 if (element.hasDescriptionElement()) { 26930 composeString("description", element.getDescriptionElement()); 26931 } 26932 if (element.hasReferenceElement()) { 26933 composeUri("reference", element.getReferenceElement()); 26934 } 26935 if (element.hasCondition()) { 26936 composeProtocolProtocolStepPreconditionComponent("condition", element.getCondition()); 26937 } 26938 composeElementClose(element); 26939 xml.exit(FHIR_NS, name); 26940 } 26941 } 26942 26943 protected void composeProvenance(String name, Provenance element) throws IOException { 26944 if (element != null) { 26945 composeDomainResourceAttributes(element); 26946 xml.enter(FHIR_NS, name); 26947 composeDomainResourceElements(element); 26948 if (element.hasTarget()) { 26949 for (Reference e : element.getTarget()) 26950 composeReference("target", e); 26951 } 26952 if (element.hasPeriod()) { 26953 composePeriod("period", element.getPeriod()); 26954 } 26955 if (element.hasRecordedElement()) { 26956 composeInstant("recorded", element.getRecordedElement()); 26957 } 26958 if (element.hasReason()) { 26959 for (Coding e : element.getReason()) 26960 composeCoding("reason", e); 26961 } 26962 if (element.hasActivity()) { 26963 composeCoding("activity", element.getActivity()); 26964 } 26965 if (element.hasLocation()) { 26966 composeReference("location", element.getLocation()); 26967 } 26968 if (element.hasPolicy()) { 26969 for (UriType e : element.getPolicy()) 26970 composeUri("policy", e); 26971 } 26972 if (element.hasAgent()) { 26973 for (Provenance.ProvenanceAgentComponent e : element.getAgent()) 26974 composeProvenanceProvenanceAgentComponent("agent", e); 26975 } 26976 if (element.hasEntity()) { 26977 for (Provenance.ProvenanceEntityComponent e : element.getEntity()) 26978 composeProvenanceProvenanceEntityComponent("entity", e); 26979 } 26980 if (element.hasSignature()) { 26981 for (Signature e : element.getSignature()) 26982 composeSignature("signature", e); 26983 } 26984 composeElementClose(element); 26985 xml.exit(FHIR_NS, name); 26986 } 26987 } 26988 26989 protected void composeProvenanceProvenanceAgentComponent(String name, Provenance.ProvenanceAgentComponent element) throws IOException { 26990 if (element != null) { 26991 composeElementAttributes(element); 26992 xml.enter(FHIR_NS, name); 26993 composeBackboneElements(element); 26994 if (element.hasRole()) { 26995 composeCoding("role", element.getRole()); 26996 } 26997 if (element.hasActor()) { 26998 composeReference("actor", element.getActor()); 26999 } 27000 if (element.hasUserId()) { 27001 composeIdentifier("userId", element.getUserId()); 27002 } 27003 if (element.hasRelatedAgent()) { 27004 for (Provenance.ProvenanceAgentRelatedAgentComponent e : element.getRelatedAgent()) 27005 composeProvenanceProvenanceAgentRelatedAgentComponent("relatedAgent", e); 27006 } 27007 composeElementClose(element); 27008 xml.exit(FHIR_NS, name); 27009 } 27010 } 27011 27012 protected void composeProvenanceProvenanceAgentRelatedAgentComponent(String name, Provenance.ProvenanceAgentRelatedAgentComponent element) throws IOException { 27013 if (element != null) { 27014 composeElementAttributes(element); 27015 xml.enter(FHIR_NS, name); 27016 composeBackboneElements(element); 27017 if (element.hasType()) { 27018 composeCodeableConcept("type", element.getType()); 27019 } 27020 if (element.hasTargetElement()) { 27021 composeUri("target", element.getTargetElement()); 27022 } 27023 composeElementClose(element); 27024 xml.exit(FHIR_NS, name); 27025 } 27026 } 27027 27028 protected void composeProvenanceProvenanceEntityComponent(String name, Provenance.ProvenanceEntityComponent element) throws IOException { 27029 if (element != null) { 27030 composeElementAttributes(element); 27031 xml.enter(FHIR_NS, name); 27032 composeBackboneElements(element); 27033 if (element.hasRoleElement()) 27034 composeEnumeration("role", element.getRoleElement(), new Provenance.ProvenanceEntityRoleEnumFactory()); 27035 if (element.hasType()) { 27036 composeCoding("type", element.getType()); 27037 } 27038 if (element.hasReferenceElement()) { 27039 composeUri("reference", element.getReferenceElement()); 27040 } 27041 if (element.hasDisplayElement()) { 27042 composeString("display", element.getDisplayElement()); 27043 } 27044 if (element.hasAgent()) { 27045 composeProvenanceProvenanceAgentComponent("agent", element.getAgent()); 27046 } 27047 composeElementClose(element); 27048 xml.exit(FHIR_NS, name); 27049 } 27050 } 27051 27052 protected void composeQuestionnaire(String name, Questionnaire element) throws IOException { 27053 if (element != null) { 27054 composeDomainResourceAttributes(element); 27055 xml.enter(FHIR_NS, name); 27056 composeDomainResourceElements(element); 27057 if (element.hasUrlElement()) { 27058 composeUri("url", element.getUrlElement()); 27059 } 27060 if (element.hasIdentifier()) { 27061 for (Identifier e : element.getIdentifier()) 27062 composeIdentifier("identifier", e); 27063 } 27064 if (element.hasVersionElement()) { 27065 composeString("version", element.getVersionElement()); 27066 } 27067 if (element.hasStatusElement()) 27068 composeEnumeration("status", element.getStatusElement(), new Questionnaire.QuestionnaireStatusEnumFactory()); 27069 if (element.hasDateElement()) { 27070 composeDateTime("date", element.getDateElement()); 27071 } 27072 if (element.hasPublisherElement()) { 27073 composeString("publisher", element.getPublisherElement()); 27074 } 27075 if (element.hasTelecom()) { 27076 for (ContactPoint e : element.getTelecom()) 27077 composeContactPoint("telecom", e); 27078 } 27079 if (element.hasUseContext()) { 27080 for (CodeableConcept e : element.getUseContext()) 27081 composeCodeableConcept("useContext", e); 27082 } 27083 if (element.hasTitleElement()) { 27084 composeString("title", element.getTitleElement()); 27085 } 27086 if (element.hasConcept()) { 27087 for (Coding e : element.getConcept()) 27088 composeCoding("concept", e); 27089 } 27090 if (element.hasSubjectType()) { 27091 for (CodeType e : element.getSubjectType()) 27092 composeCode("subjectType", e); 27093 } 27094 if (element.hasItem()) { 27095 for (Questionnaire.QuestionnaireItemComponent e : element.getItem()) 27096 composeQuestionnaireQuestionnaireItemComponent("item", e); 27097 } 27098 composeElementClose(element); 27099 xml.exit(FHIR_NS, name); 27100 } 27101 } 27102 27103 protected void composeQuestionnaireQuestionnaireItemComponent(String name, Questionnaire.QuestionnaireItemComponent element) throws IOException { 27104 if (element != null) { 27105 composeElementAttributes(element); 27106 xml.enter(FHIR_NS, name); 27107 composeBackboneElements(element); 27108 if (element.hasLinkIdElement()) { 27109 composeString("linkId", element.getLinkIdElement()); 27110 } 27111 if (element.hasConcept()) { 27112 for (Coding e : element.getConcept()) 27113 composeCoding("concept", e); 27114 } 27115 if (element.hasPrefixElement()) { 27116 composeString("prefix", element.getPrefixElement()); 27117 } 27118 if (element.hasTextElement()) { 27119 composeString("text", element.getTextElement()); 27120 } 27121 if (element.hasTypeElement()) 27122 composeEnumeration("type", element.getTypeElement(), new Questionnaire.QuestionnaireItemTypeEnumFactory()); 27123 if (element.hasEnableWhen()) { 27124 for (Questionnaire.QuestionnaireItemEnableWhenComponent e : element.getEnableWhen()) 27125 composeQuestionnaireQuestionnaireItemEnableWhenComponent("enableWhen", e); 27126 } 27127 if (element.hasRequiredElement()) { 27128 composeBoolean("required", element.getRequiredElement()); 27129 } 27130 if (element.hasRepeatsElement()) { 27131 composeBoolean("repeats", element.getRepeatsElement()); 27132 } 27133 if (element.hasReadOnlyElement()) { 27134 composeBoolean("readOnly", element.getReadOnlyElement()); 27135 } 27136 if (element.hasMaxLengthElement()) { 27137 composeInteger("maxLength", element.getMaxLengthElement()); 27138 } 27139 if (element.hasOptions()) { 27140 composeReference("options", element.getOptions()); 27141 } 27142 if (element.hasOption()) { 27143 for (Questionnaire.QuestionnaireItemOptionComponent e : element.getOption()) 27144 composeQuestionnaireQuestionnaireItemOptionComponent("option", e); 27145 } 27146 if (element.hasInitial()) { 27147 composeType("initial", element.getInitial()); 27148 } if (element.hasItem()) { 27149 for (Questionnaire.QuestionnaireItemComponent e : element.getItem()) 27150 composeQuestionnaireQuestionnaireItemComponent("item", e); 27151 } 27152 composeElementClose(element); 27153 xml.exit(FHIR_NS, name); 27154 } 27155 } 27156 27157 protected void composeQuestionnaireQuestionnaireItemEnableWhenComponent(String name, Questionnaire.QuestionnaireItemEnableWhenComponent element) throws IOException { 27158 if (element != null) { 27159 composeElementAttributes(element); 27160 xml.enter(FHIR_NS, name); 27161 composeBackboneElements(element); 27162 if (element.hasQuestionElement()) { 27163 composeString("question", element.getQuestionElement()); 27164 } 27165 if (element.hasAnsweredElement()) { 27166 composeBoolean("answered", element.getAnsweredElement()); 27167 } 27168 if (element.hasAnswer()) { 27169 composeType("answer", element.getAnswer()); 27170 } composeElementClose(element); 27171 xml.exit(FHIR_NS, name); 27172 } 27173 } 27174 27175 protected void composeQuestionnaireQuestionnaireItemOptionComponent(String name, Questionnaire.QuestionnaireItemOptionComponent element) throws IOException { 27176 if (element != null) { 27177 composeElementAttributes(element); 27178 xml.enter(FHIR_NS, name); 27179 composeBackboneElements(element); 27180 if (element.hasValue()) { 27181 composeType("value", element.getValue()); 27182 } composeElementClose(element); 27183 xml.exit(FHIR_NS, name); 27184 } 27185 } 27186 27187 protected void composeQuestionnaireResponse(String name, QuestionnaireResponse element) throws IOException { 27188 if (element != null) { 27189 composeDomainResourceAttributes(element); 27190 xml.enter(FHIR_NS, name); 27191 composeDomainResourceElements(element); 27192 if (element.hasIdentifier()) { 27193 composeIdentifier("identifier", element.getIdentifier()); 27194 } 27195 if (element.hasQuestionnaire()) { 27196 composeReference("questionnaire", element.getQuestionnaire()); 27197 } 27198 if (element.hasStatusElement()) 27199 composeEnumeration("status", element.getStatusElement(), new QuestionnaireResponse.QuestionnaireResponseStatusEnumFactory()); 27200 if (element.hasSubject()) { 27201 composeReference("subject", element.getSubject()); 27202 } 27203 if (element.hasAuthor()) { 27204 composeReference("author", element.getAuthor()); 27205 } 27206 if (element.hasAuthoredElement()) { 27207 composeDateTime("authored", element.getAuthoredElement()); 27208 } 27209 if (element.hasSource()) { 27210 composeReference("source", element.getSource()); 27211 } 27212 if (element.hasEncounter()) { 27213 composeReference("encounter", element.getEncounter()); 27214 } 27215 if (element.hasItem()) { 27216 for (QuestionnaireResponse.QuestionnaireResponseItemComponent e : element.getItem()) 27217 composeQuestionnaireResponseQuestionnaireResponseItemComponent("item", e); 27218 } 27219 composeElementClose(element); 27220 xml.exit(FHIR_NS, name); 27221 } 27222 } 27223 27224 protected void composeQuestionnaireResponseQuestionnaireResponseItemComponent(String name, QuestionnaireResponse.QuestionnaireResponseItemComponent element) throws IOException { 27225 if (element != null) { 27226 composeElementAttributes(element); 27227 xml.enter(FHIR_NS, name); 27228 composeBackboneElements(element); 27229 if (element.hasLinkIdElement()) { 27230 composeString("linkId", element.getLinkIdElement()); 27231 } 27232 if (element.hasTextElement()) { 27233 composeString("text", element.getTextElement()); 27234 } 27235 if (element.hasSubject()) { 27236 composeReference("subject", element.getSubject()); 27237 } 27238 if (element.hasAnswer()) { 27239 for (QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent e : element.getAnswer()) 27240 composeQuestionnaireResponseQuestionnaireResponseItemAnswerComponent("answer", e); 27241 } 27242 if (element.hasItem()) { 27243 for (QuestionnaireResponse.QuestionnaireResponseItemComponent e : element.getItem()) 27244 composeQuestionnaireResponseQuestionnaireResponseItemComponent("item", e); 27245 } 27246 composeElementClose(element); 27247 xml.exit(FHIR_NS, name); 27248 } 27249 } 27250 27251 protected void composeQuestionnaireResponseQuestionnaireResponseItemAnswerComponent(String name, QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent element) throws IOException { 27252 if (element != null) { 27253 composeElementAttributes(element); 27254 xml.enter(FHIR_NS, name); 27255 composeBackboneElements(element); 27256 if (element.hasValue()) { 27257 composeType("value", element.getValue()); 27258 } if (element.hasItem()) { 27259 for (QuestionnaireResponse.QuestionnaireResponseItemComponent e : element.getItem()) 27260 composeQuestionnaireResponseQuestionnaireResponseItemComponent("item", e); 27261 } 27262 composeElementClose(element); 27263 xml.exit(FHIR_NS, name); 27264 } 27265 } 27266 27267 protected void composeReferralRequest(String name, ReferralRequest element) throws IOException { 27268 if (element != null) { 27269 composeDomainResourceAttributes(element); 27270 xml.enter(FHIR_NS, name); 27271 composeDomainResourceElements(element); 27272 if (element.hasIdentifier()) { 27273 for (Identifier e : element.getIdentifier()) 27274 composeIdentifier("identifier", e); 27275 } 27276 if (element.hasBasedOn()) { 27277 for (Reference e : element.getBasedOn()) 27278 composeReference("basedOn", e); 27279 } 27280 if (element.hasParent()) { 27281 composeIdentifier("parent", element.getParent()); 27282 } 27283 if (element.hasStatusElement()) 27284 composeEnumeration("status", element.getStatusElement(), new ReferralRequest.ReferralStatusEnumFactory()); 27285 if (element.hasCategoryElement()) 27286 composeEnumeration("category", element.getCategoryElement(), new ReferralRequest.ReferralCategoryEnumFactory()); 27287 if (element.hasType()) { 27288 composeCodeableConcept("type", element.getType()); 27289 } 27290 if (element.hasPriority()) { 27291 composeCodeableConcept("priority", element.getPriority()); 27292 } 27293 if (element.hasPatient()) { 27294 composeReference("patient", element.getPatient()); 27295 } 27296 if (element.hasContext()) { 27297 composeReference("context", element.getContext()); 27298 } 27299 if (element.hasFulfillmentTime()) { 27300 composePeriod("fulfillmentTime", element.getFulfillmentTime()); 27301 } 27302 if (element.hasAuthoredElement()) { 27303 composeDateTime("authored", element.getAuthoredElement()); 27304 } 27305 if (element.hasRequester()) { 27306 composeReference("requester", element.getRequester()); 27307 } 27308 if (element.hasSpecialty()) { 27309 composeCodeableConcept("specialty", element.getSpecialty()); 27310 } 27311 if (element.hasRecipient()) { 27312 for (Reference e : element.getRecipient()) 27313 composeReference("recipient", e); 27314 } 27315 if (element.hasReason()) { 27316 composeCodeableConcept("reason", element.getReason()); 27317 } 27318 if (element.hasDescriptionElement()) { 27319 composeString("description", element.getDescriptionElement()); 27320 } 27321 if (element.hasServiceRequested()) { 27322 for (CodeableConcept e : element.getServiceRequested()) 27323 composeCodeableConcept("serviceRequested", e); 27324 } 27325 if (element.hasSupportingInformation()) { 27326 for (Reference e : element.getSupportingInformation()) 27327 composeReference("supportingInformation", e); 27328 } 27329 composeElementClose(element); 27330 xml.exit(FHIR_NS, name); 27331 } 27332 } 27333 27334 protected void composeRelatedPerson(String name, RelatedPerson element) throws IOException { 27335 if (element != null) { 27336 composeDomainResourceAttributes(element); 27337 xml.enter(FHIR_NS, name); 27338 composeDomainResourceElements(element); 27339 if (element.hasIdentifier()) { 27340 for (Identifier e : element.getIdentifier()) 27341 composeIdentifier("identifier", e); 27342 } 27343 if (element.hasPatient()) { 27344 composeReference("patient", element.getPatient()); 27345 } 27346 if (element.hasRelationship()) { 27347 composeCodeableConcept("relationship", element.getRelationship()); 27348 } 27349 if (element.hasName()) { 27350 composeHumanName("name", element.getName()); 27351 } 27352 if (element.hasTelecom()) { 27353 for (ContactPoint e : element.getTelecom()) 27354 composeContactPoint("telecom", e); 27355 } 27356 if (element.hasGenderElement()) 27357 composeEnumeration("gender", element.getGenderElement(), new Enumerations.AdministrativeGenderEnumFactory()); 27358 if (element.hasBirthDateElement()) { 27359 composeDate("birthDate", element.getBirthDateElement()); 27360 } 27361 if (element.hasAddress()) { 27362 for (Address e : element.getAddress()) 27363 composeAddress("address", e); 27364 } 27365 if (element.hasPhoto()) { 27366 for (Attachment e : element.getPhoto()) 27367 composeAttachment("photo", e); 27368 } 27369 if (element.hasPeriod()) { 27370 composePeriod("period", element.getPeriod()); 27371 } 27372 composeElementClose(element); 27373 xml.exit(FHIR_NS, name); 27374 } 27375 } 27376 27377 protected void composeRiskAssessment(String name, RiskAssessment element) throws IOException { 27378 if (element != null) { 27379 composeDomainResourceAttributes(element); 27380 xml.enter(FHIR_NS, name); 27381 composeDomainResourceElements(element); 27382 if (element.hasSubject()) { 27383 composeReference("subject", element.getSubject()); 27384 } 27385 if (element.hasDateElement()) { 27386 composeDateTime("date", element.getDateElement()); 27387 } 27388 if (element.hasCondition()) { 27389 composeReference("condition", element.getCondition()); 27390 } 27391 if (element.hasEncounter()) { 27392 composeReference("encounter", element.getEncounter()); 27393 } 27394 if (element.hasPerformer()) { 27395 composeReference("performer", element.getPerformer()); 27396 } 27397 if (element.hasIdentifier()) { 27398 composeIdentifier("identifier", element.getIdentifier()); 27399 } 27400 if (element.hasMethod()) { 27401 composeCodeableConcept("method", element.getMethod()); 27402 } 27403 if (element.hasBasis()) { 27404 for (Reference e : element.getBasis()) 27405 composeReference("basis", e); 27406 } 27407 if (element.hasPrediction()) { 27408 for (RiskAssessment.RiskAssessmentPredictionComponent e : element.getPrediction()) 27409 composeRiskAssessmentRiskAssessmentPredictionComponent("prediction", e); 27410 } 27411 if (element.hasMitigationElement()) { 27412 composeString("mitigation", element.getMitigationElement()); 27413 } 27414 composeElementClose(element); 27415 xml.exit(FHIR_NS, name); 27416 } 27417 } 27418 27419 protected void composeRiskAssessmentRiskAssessmentPredictionComponent(String name, RiskAssessment.RiskAssessmentPredictionComponent element) throws IOException { 27420 if (element != null) { 27421 composeElementAttributes(element); 27422 xml.enter(FHIR_NS, name); 27423 composeBackboneElements(element); 27424 if (element.hasOutcome()) { 27425 composeCodeableConcept("outcome", element.getOutcome()); 27426 } 27427 if (element.hasProbability()) { 27428 composeType("probability", element.getProbability()); 27429 } if (element.hasRelativeRiskElement()) { 27430 composeDecimal("relativeRisk", element.getRelativeRiskElement()); 27431 } 27432 if (element.hasWhen()) { 27433 composeType("when", element.getWhen()); 27434 } if (element.hasRationaleElement()) { 27435 composeString("rationale", element.getRationaleElement()); 27436 } 27437 composeElementClose(element); 27438 xml.exit(FHIR_NS, name); 27439 } 27440 } 27441 27442 protected void composeSchedule(String name, Schedule element) throws IOException { 27443 if (element != null) { 27444 composeDomainResourceAttributes(element); 27445 xml.enter(FHIR_NS, name); 27446 composeDomainResourceElements(element); 27447 if (element.hasIdentifier()) { 27448 for (Identifier e : element.getIdentifier()) 27449 composeIdentifier("identifier", e); 27450 } 27451 if (element.hasServiceCategory()) { 27452 composeCodeableConcept("serviceCategory", element.getServiceCategory()); 27453 } 27454 if (element.hasServiceType()) { 27455 for (CodeableConcept e : element.getServiceType()) 27456 composeCodeableConcept("serviceType", e); 27457 } 27458 if (element.hasSpecialty()) { 27459 for (CodeableConcept e : element.getSpecialty()) 27460 composeCodeableConcept("specialty", e); 27461 } 27462 if (element.hasActor()) { 27463 composeReference("actor", element.getActor()); 27464 } 27465 if (element.hasPlanningHorizon()) { 27466 composePeriod("planningHorizon", element.getPlanningHorizon()); 27467 } 27468 if (element.hasCommentElement()) { 27469 composeString("comment", element.getCommentElement()); 27470 } 27471 composeElementClose(element); 27472 xml.exit(FHIR_NS, name); 27473 } 27474 } 27475 27476 protected void composeSearchParameter(String name, SearchParameter element) throws IOException { 27477 if (element != null) { 27478 composeDomainResourceAttributes(element); 27479 xml.enter(FHIR_NS, name); 27480 composeDomainResourceElements(element); 27481 if (element.hasUrlElement()) { 27482 composeUri("url", element.getUrlElement()); 27483 } 27484 if (element.hasNameElement()) { 27485 composeString("name", element.getNameElement()); 27486 } 27487 if (element.hasStatusElement()) 27488 composeEnumeration("status", element.getStatusElement(), new Enumerations.ConformanceResourceStatusEnumFactory()); 27489 if (element.hasExperimentalElement()) { 27490 composeBoolean("experimental", element.getExperimentalElement()); 27491 } 27492 if (element.hasDateElement()) { 27493 composeDateTime("date", element.getDateElement()); 27494 } 27495 if (element.hasPublisherElement()) { 27496 composeString("publisher", element.getPublisherElement()); 27497 } 27498 if (element.hasContact()) { 27499 for (SearchParameter.SearchParameterContactComponent e : element.getContact()) 27500 composeSearchParameterSearchParameterContactComponent("contact", e); 27501 } 27502 if (element.hasUseContext()) { 27503 for (CodeableConcept e : element.getUseContext()) 27504 composeCodeableConcept("useContext", e); 27505 } 27506 if (element.hasRequirementsElement()) { 27507 composeString("requirements", element.getRequirementsElement()); 27508 } 27509 if (element.hasCodeElement()) { 27510 composeCode("code", element.getCodeElement()); 27511 } 27512 if (element.hasBaseElement()) { 27513 composeCode("base", element.getBaseElement()); 27514 } 27515 if (element.hasTypeElement()) 27516 composeEnumeration("type", element.getTypeElement(), new Enumerations.SearchParamTypeEnumFactory()); 27517 if (element.hasDescriptionElement()) { 27518 composeString("description", element.getDescriptionElement()); 27519 } 27520 if (element.hasExpressionElement()) { 27521 composeString("expression", element.getExpressionElement()); 27522 } 27523 if (element.hasXpathElement()) { 27524 composeString("xpath", element.getXpathElement()); 27525 } 27526 if (element.hasXpathUsageElement()) 27527 composeEnumeration("xpathUsage", element.getXpathUsageElement(), new SearchParameter.XPathUsageTypeEnumFactory()); 27528 if (element.hasTarget()) { 27529 for (CodeType e : element.getTarget()) 27530 composeCode("target", e); 27531 } 27532 composeElementClose(element); 27533 xml.exit(FHIR_NS, name); 27534 } 27535 } 27536 27537 protected void composeSearchParameterSearchParameterContactComponent(String name, SearchParameter.SearchParameterContactComponent element) throws IOException { 27538 if (element != null) { 27539 composeElementAttributes(element); 27540 xml.enter(FHIR_NS, name); 27541 composeBackboneElements(element); 27542 if (element.hasNameElement()) { 27543 composeString("name", element.getNameElement()); 27544 } 27545 if (element.hasTelecom()) { 27546 for (ContactPoint e : element.getTelecom()) 27547 composeContactPoint("telecom", e); 27548 } 27549 composeElementClose(element); 27550 xml.exit(FHIR_NS, name); 27551 } 27552 } 27553 27554 protected void composeSequence(String name, Sequence element) throws IOException { 27555 if (element != null) { 27556 composeDomainResourceAttributes(element); 27557 xml.enter(FHIR_NS, name); 27558 composeDomainResourceElements(element); 27559 if (element.hasTypeElement()) 27560 composeEnumeration("type", element.getTypeElement(), new Sequence.SequenceTypeEnumFactory()); 27561 if (element.hasPatient()) { 27562 composeReference("patient", element.getPatient()); 27563 } 27564 if (element.hasSpecimen()) { 27565 composeReference("specimen", element.getSpecimen()); 27566 } 27567 if (element.hasDevice()) { 27568 composeReference("device", element.getDevice()); 27569 } 27570 if (element.hasQuantity()) { 27571 composeQuantity("quantity", element.getQuantity()); 27572 } 27573 if (element.hasSpecies()) { 27574 composeCodeableConcept("species", element.getSpecies()); 27575 } 27576 if (element.hasReferenceSeq()) { 27577 for (Sequence.SequenceReferenceSeqComponent e : element.getReferenceSeq()) 27578 composeSequenceSequenceReferenceSeqComponent("referenceSeq", e); 27579 } 27580 if (element.hasVariation()) { 27581 composeSequenceSequenceVariationComponent("variation", element.getVariation()); 27582 } 27583 if (element.hasQuality()) { 27584 for (Sequence.SequenceQualityComponent e : element.getQuality()) 27585 composeSequenceSequenceQualityComponent("quality", e); 27586 } 27587 if (element.hasAllelicState()) { 27588 composeCodeableConcept("allelicState", element.getAllelicState()); 27589 } 27590 if (element.hasAllelicFrequencyElement()) { 27591 composeDecimal("allelicFrequency", element.getAllelicFrequencyElement()); 27592 } 27593 if (element.hasCopyNumberEvent()) { 27594 composeCodeableConcept("copyNumberEvent", element.getCopyNumberEvent()); 27595 } 27596 if (element.hasReadCoverageElement()) { 27597 composeInteger("readCoverage", element.getReadCoverageElement()); 27598 } 27599 if (element.hasRepository()) { 27600 for (Sequence.SequenceRepositoryComponent e : element.getRepository()) 27601 composeSequenceSequenceRepositoryComponent("repository", e); 27602 } 27603 if (element.hasPointer()) { 27604 for (Reference e : element.getPointer()) 27605 composeReference("pointer", e); 27606 } 27607 if (element.hasObservedSeqElement()) { 27608 composeString("observedSeq", element.getObservedSeqElement()); 27609 } 27610 if (element.hasObservation()) { 27611 composeReference("observation", element.getObservation()); 27612 } 27613 if (element.hasStructureVariation()) { 27614 composeSequenceSequenceStructureVariationComponent("structureVariation", element.getStructureVariation()); 27615 } 27616 composeElementClose(element); 27617 xml.exit(FHIR_NS, name); 27618 } 27619 } 27620 27621 protected void composeSequenceSequenceReferenceSeqComponent(String name, Sequence.SequenceReferenceSeqComponent element) throws IOException { 27622 if (element != null) { 27623 composeElementAttributes(element); 27624 xml.enter(FHIR_NS, name); 27625 composeBackboneElements(element); 27626 if (element.hasChromosome()) { 27627 composeCodeableConcept("chromosome", element.getChromosome()); 27628 } 27629 if (element.hasGenomeBuildElement()) { 27630 composeString("genomeBuild", element.getGenomeBuildElement()); 27631 } 27632 if (element.hasReferenceSeqId()) { 27633 composeCodeableConcept("referenceSeqId", element.getReferenceSeqId()); 27634 } 27635 if (element.hasReferenceSeqPointer()) { 27636 composeReference("referenceSeqPointer", element.getReferenceSeqPointer()); 27637 } 27638 if (element.hasReferenceSeqStringElement()) { 27639 composeString("referenceSeqString", element.getReferenceSeqStringElement()); 27640 } 27641 if (element.hasWindowStartElement()) { 27642 composeInteger("windowStart", element.getWindowStartElement()); 27643 } 27644 if (element.hasWindowEndElement()) { 27645 composeInteger("windowEnd", element.getWindowEndElement()); 27646 } 27647 composeElementClose(element); 27648 xml.exit(FHIR_NS, name); 27649 } 27650 } 27651 27652 protected void composeSequenceSequenceVariationComponent(String name, Sequence.SequenceVariationComponent element) throws IOException { 27653 if (element != null) { 27654 composeElementAttributes(element); 27655 xml.enter(FHIR_NS, name); 27656 composeBackboneElements(element); 27657 if (element.hasStartElement()) { 27658 composeInteger("start", element.getStartElement()); 27659 } 27660 if (element.hasEndElement()) { 27661 composeInteger("end", element.getEndElement()); 27662 } 27663 if (element.hasObservedAlleleElement()) { 27664 composeString("observedAllele", element.getObservedAlleleElement()); 27665 } 27666 if (element.hasReferenceAlleleElement()) { 27667 composeString("referenceAllele", element.getReferenceAlleleElement()); 27668 } 27669 if (element.hasCigarElement()) { 27670 composeString("cigar", element.getCigarElement()); 27671 } 27672 composeElementClose(element); 27673 xml.exit(FHIR_NS, name); 27674 } 27675 } 27676 27677 protected void composeSequenceSequenceQualityComponent(String name, Sequence.SequenceQualityComponent element) throws IOException { 27678 if (element != null) { 27679 composeElementAttributes(element); 27680 xml.enter(FHIR_NS, name); 27681 composeBackboneElements(element); 27682 if (element.hasStartElement()) { 27683 composeInteger("start", element.getStartElement()); 27684 } 27685 if (element.hasEndElement()) { 27686 composeInteger("end", element.getEndElement()); 27687 } 27688 if (element.hasScore()) { 27689 composeQuantity("score", element.getScore()); 27690 } 27691 if (element.hasMethodElement()) { 27692 composeString("method", element.getMethodElement()); 27693 } 27694 composeElementClose(element); 27695 xml.exit(FHIR_NS, name); 27696 } 27697 } 27698 27699 protected void composeSequenceSequenceRepositoryComponent(String name, Sequence.SequenceRepositoryComponent element) throws IOException { 27700 if (element != null) { 27701 composeElementAttributes(element); 27702 xml.enter(FHIR_NS, name); 27703 composeBackboneElements(element); 27704 if (element.hasUrlElement()) { 27705 composeUri("url", element.getUrlElement()); 27706 } 27707 if (element.hasNameElement()) { 27708 composeString("name", element.getNameElement()); 27709 } 27710 if (element.hasVariantIdElement()) { 27711 composeString("variantId", element.getVariantIdElement()); 27712 } 27713 if (element.hasReadIdElement()) { 27714 composeString("readId", element.getReadIdElement()); 27715 } 27716 composeElementClose(element); 27717 xml.exit(FHIR_NS, name); 27718 } 27719 } 27720 27721 protected void composeSequenceSequenceStructureVariationComponent(String name, Sequence.SequenceStructureVariationComponent element) throws IOException { 27722 if (element != null) { 27723 composeElementAttributes(element); 27724 xml.enter(FHIR_NS, name); 27725 composeBackboneElements(element); 27726 if (element.hasPrecisionOfBoundariesElement()) { 27727 composeString("precisionOfBoundaries", element.getPrecisionOfBoundariesElement()); 27728 } 27729 if (element.hasReportedaCGHRatioElement()) { 27730 composeDecimal("reportedaCGHRatio", element.getReportedaCGHRatioElement()); 27731 } 27732 if (element.hasLengthElement()) { 27733 composeInteger("length", element.getLengthElement()); 27734 } 27735 if (element.hasOuter()) { 27736 composeSequenceSequenceStructureVariationOuterComponent("outer", element.getOuter()); 27737 } 27738 if (element.hasInner()) { 27739 composeSequenceSequenceStructureVariationInnerComponent("inner", element.getInner()); 27740 } 27741 composeElementClose(element); 27742 xml.exit(FHIR_NS, name); 27743 } 27744 } 27745 27746 protected void composeSequenceSequenceStructureVariationOuterComponent(String name, Sequence.SequenceStructureVariationOuterComponent element) throws IOException { 27747 if (element != null) { 27748 composeElementAttributes(element); 27749 xml.enter(FHIR_NS, name); 27750 composeBackboneElements(element); 27751 if (element.hasStartElement()) { 27752 composeInteger("start", element.getStartElement()); 27753 } 27754 if (element.hasEndElement()) { 27755 composeInteger("end", element.getEndElement()); 27756 } 27757 composeElementClose(element); 27758 xml.exit(FHIR_NS, name); 27759 } 27760 } 27761 27762 protected void composeSequenceSequenceStructureVariationInnerComponent(String name, Sequence.SequenceStructureVariationInnerComponent element) throws IOException { 27763 if (element != null) { 27764 composeElementAttributes(element); 27765 xml.enter(FHIR_NS, name); 27766 composeBackboneElements(element); 27767 if (element.hasStartElement()) { 27768 composeInteger("start", element.getStartElement()); 27769 } 27770 if (element.hasEndElement()) { 27771 composeInteger("end", element.getEndElement()); 27772 } 27773 composeElementClose(element); 27774 xml.exit(FHIR_NS, name); 27775 } 27776 } 27777 27778 protected void composeSlot(String name, Slot element) throws IOException { 27779 if (element != null) { 27780 composeDomainResourceAttributes(element); 27781 xml.enter(FHIR_NS, name); 27782 composeDomainResourceElements(element); 27783 if (element.hasIdentifier()) { 27784 for (Identifier e : element.getIdentifier()) 27785 composeIdentifier("identifier", e); 27786 } 27787 if (element.hasServiceCategory()) { 27788 composeCodeableConcept("serviceCategory", element.getServiceCategory()); 27789 } 27790 if (element.hasServiceType()) { 27791 for (CodeableConcept e : element.getServiceType()) 27792 composeCodeableConcept("serviceType", e); 27793 } 27794 if (element.hasSpecialty()) { 27795 for (CodeableConcept e : element.getSpecialty()) 27796 composeCodeableConcept("specialty", e); 27797 } 27798 if (element.hasAppointmentType()) { 27799 composeCodeableConcept("appointmentType", element.getAppointmentType()); 27800 } 27801 if (element.hasSchedule()) { 27802 composeReference("schedule", element.getSchedule()); 27803 } 27804 if (element.hasStatusElement()) 27805 composeEnumeration("status", element.getStatusElement(), new Slot.SlotStatusEnumFactory()); 27806 if (element.hasStartElement()) { 27807 composeInstant("start", element.getStartElement()); 27808 } 27809 if (element.hasEndElement()) { 27810 composeInstant("end", element.getEndElement()); 27811 } 27812 if (element.hasOverbookedElement()) { 27813 composeBoolean("overbooked", element.getOverbookedElement()); 27814 } 27815 if (element.hasCommentElement()) { 27816 composeString("comment", element.getCommentElement()); 27817 } 27818 composeElementClose(element); 27819 xml.exit(FHIR_NS, name); 27820 } 27821 } 27822 27823 protected void composeSpecimen(String name, Specimen element) throws IOException { 27824 if (element != null) { 27825 composeDomainResourceAttributes(element); 27826 xml.enter(FHIR_NS, name); 27827 composeDomainResourceElements(element); 27828 if (element.hasIdentifier()) { 27829 for (Identifier e : element.getIdentifier()) 27830 composeIdentifier("identifier", e); 27831 } 27832 if (element.hasAccessionIdentifier()) { 27833 composeIdentifier("accessionIdentifier", element.getAccessionIdentifier()); 27834 } 27835 if (element.hasStatusElement()) 27836 composeEnumeration("status", element.getStatusElement(), new Specimen.SpecimenStatusEnumFactory()); 27837 if (element.hasType()) { 27838 composeCodeableConcept("type", element.getType()); 27839 } 27840 if (element.hasSubject()) { 27841 composeReference("subject", element.getSubject()); 27842 } 27843 if (element.hasReceivedTimeElement()) { 27844 composeDateTime("receivedTime", element.getReceivedTimeElement()); 27845 } 27846 if (element.hasParent()) { 27847 for (Reference e : element.getParent()) 27848 composeReference("parent", e); 27849 } 27850 if (element.hasCollection()) { 27851 composeSpecimenSpecimenCollectionComponent("collection", element.getCollection()); 27852 } 27853 if (element.hasTreatment()) { 27854 for (Specimen.SpecimenTreatmentComponent e : element.getTreatment()) 27855 composeSpecimenSpecimenTreatmentComponent("treatment", e); 27856 } 27857 if (element.hasContainer()) { 27858 for (Specimen.SpecimenContainerComponent e : element.getContainer()) 27859 composeSpecimenSpecimenContainerComponent("container", e); 27860 } 27861 composeElementClose(element); 27862 xml.exit(FHIR_NS, name); 27863 } 27864 } 27865 27866 protected void composeSpecimenSpecimenCollectionComponent(String name, Specimen.SpecimenCollectionComponent element) throws IOException { 27867 if (element != null) { 27868 composeElementAttributes(element); 27869 xml.enter(FHIR_NS, name); 27870 composeBackboneElements(element); 27871 if (element.hasCollector()) { 27872 composeReference("collector", element.getCollector()); 27873 } 27874 if (element.hasCommentElement()) { 27875 composeString("comment", element.getCommentElement()); 27876 } 27877 if (element.hasCollected()) { 27878 composeType("collected", element.getCollected()); 27879 } if (element.hasQuantity()) { 27880 composeSimpleQuantity("quantity", element.getQuantity()); 27881 } 27882 if (element.hasMethod()) { 27883 composeCodeableConcept("method", element.getMethod()); 27884 } 27885 if (element.hasBodySite()) { 27886 composeCodeableConcept("bodySite", element.getBodySite()); 27887 } 27888 composeElementClose(element); 27889 xml.exit(FHIR_NS, name); 27890 } 27891 } 27892 27893 protected void composeSpecimenSpecimenTreatmentComponent(String name, Specimen.SpecimenTreatmentComponent element) throws IOException { 27894 if (element != null) { 27895 composeElementAttributes(element); 27896 xml.enter(FHIR_NS, name); 27897 composeBackboneElements(element); 27898 if (element.hasDescriptionElement()) { 27899 composeString("description", element.getDescriptionElement()); 27900 } 27901 if (element.hasProcedure()) { 27902 composeCodeableConcept("procedure", element.getProcedure()); 27903 } 27904 if (element.hasAdditive()) { 27905 for (Reference e : element.getAdditive()) 27906 composeReference("additive", e); 27907 } 27908 composeElementClose(element); 27909 xml.exit(FHIR_NS, name); 27910 } 27911 } 27912 27913 protected void composeSpecimenSpecimenContainerComponent(String name, Specimen.SpecimenContainerComponent element) throws IOException { 27914 if (element != null) { 27915 composeElementAttributes(element); 27916 xml.enter(FHIR_NS, name); 27917 composeBackboneElements(element); 27918 if (element.hasIdentifier()) { 27919 for (Identifier e : element.getIdentifier()) 27920 composeIdentifier("identifier", e); 27921 } 27922 if (element.hasDescriptionElement()) { 27923 composeString("description", element.getDescriptionElement()); 27924 } 27925 if (element.hasType()) { 27926 composeCodeableConcept("type", element.getType()); 27927 } 27928 if (element.hasCapacity()) { 27929 composeSimpleQuantity("capacity", element.getCapacity()); 27930 } 27931 if (element.hasSpecimenQuantity()) { 27932 composeSimpleQuantity("specimenQuantity", element.getSpecimenQuantity()); 27933 } 27934 if (element.hasAdditive()) { 27935 composeType("additive", element.getAdditive()); 27936 } composeElementClose(element); 27937 xml.exit(FHIR_NS, name); 27938 } 27939 } 27940 27941 protected void composeStructureDefinition(String name, StructureDefinition element) throws IOException { 27942 if (element != null) { 27943 composeDomainResourceAttributes(element); 27944 xml.enter(FHIR_NS, name); 27945 composeDomainResourceElements(element); 27946 if (element.hasUrlElement()) { 27947 composeUri("url", element.getUrlElement()); 27948 } 27949 if (element.hasIdentifier()) { 27950 for (Identifier e : element.getIdentifier()) 27951 composeIdentifier("identifier", e); 27952 } 27953 if (element.hasVersionElement()) { 27954 composeString("version", element.getVersionElement()); 27955 } 27956 if (element.hasNameElement()) { 27957 composeString("name", element.getNameElement()); 27958 } 27959 if (element.hasDisplayElement()) { 27960 composeString("display", element.getDisplayElement()); 27961 } 27962 if (element.hasStatusElement()) 27963 composeEnumeration("status", element.getStatusElement(), new Enumerations.ConformanceResourceStatusEnumFactory()); 27964 if (element.hasExperimentalElement()) { 27965 composeBoolean("experimental", element.getExperimentalElement()); 27966 } 27967 if (element.hasPublisherElement()) { 27968 composeString("publisher", element.getPublisherElement()); 27969 } 27970 if (element.hasContact()) { 27971 for (StructureDefinition.StructureDefinitionContactComponent e : element.getContact()) 27972 composeStructureDefinitionStructureDefinitionContactComponent("contact", e); 27973 } 27974 if (element.hasDateElement()) { 27975 composeDateTime("date", element.getDateElement()); 27976 } 27977 if (element.hasDescriptionElement()) { 27978 composeString("description", element.getDescriptionElement()); 27979 } 27980 if (element.hasUseContext()) { 27981 for (CodeableConcept e : element.getUseContext()) 27982 composeCodeableConcept("useContext", e); 27983 } 27984 if (element.hasRequirementsElement()) { 27985 composeString("requirements", element.getRequirementsElement()); 27986 } 27987 if (element.hasCopyrightElement()) { 27988 composeString("copyright", element.getCopyrightElement()); 27989 } 27990 if (element.hasCode()) { 27991 for (Coding e : element.getCode()) 27992 composeCoding("code", e); 27993 } 27994 if (element.hasFhirVersionElement()) { 27995 composeId("fhirVersion", element.getFhirVersionElement()); 27996 } 27997 if (element.hasMapping()) { 27998 for (StructureDefinition.StructureDefinitionMappingComponent e : element.getMapping()) 27999 composeStructureDefinitionStructureDefinitionMappingComponent("mapping", e); 28000 } 28001 if (element.hasKindElement()) 28002 composeEnumeration("kind", element.getKindElement(), new StructureDefinition.StructureDefinitionKindEnumFactory()); 28003 if (element.hasAbstractElement()) { 28004 composeBoolean("abstract", element.getAbstractElement()); 28005 } 28006 if (element.hasContextTypeElement()) 28007 composeEnumeration("contextType", element.getContextTypeElement(), new StructureDefinition.ExtensionContextEnumFactory()); 28008 if (element.hasContext()) { 28009 for (StringType e : element.getContext()) 28010 composeString("context", e); 28011 } 28012 if (element.hasBaseTypeElement()) { 28013 composeCode("baseType", element.getBaseTypeElement()); 28014 } 28015 if (element.hasBaseDefinitionElement()) { 28016 composeUri("baseDefinition", element.getBaseDefinitionElement()); 28017 } 28018 if (element.hasDerivationElement()) 28019 composeEnumeration("derivation", element.getDerivationElement(), new StructureDefinition.TypeDerivationRuleEnumFactory()); 28020 if (element.hasSnapshot()) { 28021 composeStructureDefinitionStructureDefinitionSnapshotComponent("snapshot", element.getSnapshot()); 28022 } 28023 if (element.hasDifferential()) { 28024 composeStructureDefinitionStructureDefinitionDifferentialComponent("differential", element.getDifferential()); 28025 } 28026 composeElementClose(element); 28027 xml.exit(FHIR_NS, name); 28028 } 28029 } 28030 28031 protected void composeStructureDefinitionStructureDefinitionContactComponent(String name, StructureDefinition.StructureDefinitionContactComponent element) throws IOException { 28032 if (element != null) { 28033 composeElementAttributes(element); 28034 xml.enter(FHIR_NS, name); 28035 composeBackboneElements(element); 28036 if (element.hasNameElement()) { 28037 composeString("name", element.getNameElement()); 28038 } 28039 if (element.hasTelecom()) { 28040 for (ContactPoint e : element.getTelecom()) 28041 composeContactPoint("telecom", e); 28042 } 28043 composeElementClose(element); 28044 xml.exit(FHIR_NS, name); 28045 } 28046 } 28047 28048 protected void composeStructureDefinitionStructureDefinitionMappingComponent(String name, StructureDefinition.StructureDefinitionMappingComponent element) throws IOException { 28049 if (element != null) { 28050 composeElementAttributes(element); 28051 xml.enter(FHIR_NS, name); 28052 composeBackboneElements(element); 28053 if (element.hasIdentityElement()) { 28054 composeId("identity", element.getIdentityElement()); 28055 } 28056 if (element.hasUriElement()) { 28057 composeUri("uri", element.getUriElement()); 28058 } 28059 if (element.hasNameElement()) { 28060 composeString("name", element.getNameElement()); 28061 } 28062 if (element.hasCommentsElement()) { 28063 composeString("comments", element.getCommentsElement()); 28064 } 28065 composeElementClose(element); 28066 xml.exit(FHIR_NS, name); 28067 } 28068 } 28069 28070 protected void composeStructureDefinitionStructureDefinitionSnapshotComponent(String name, StructureDefinition.StructureDefinitionSnapshotComponent element) throws IOException { 28071 if (element != null) { 28072 composeElementAttributes(element); 28073 xml.enter(FHIR_NS, name); 28074 composeBackboneElements(element); 28075 if (element.hasElement()) { 28076 for (ElementDefinition e : element.getElement()) 28077 composeElementDefinition("element", e); 28078 } 28079 composeElementClose(element); 28080 xml.exit(FHIR_NS, name); 28081 } 28082 } 28083 28084 protected void composeStructureDefinitionStructureDefinitionDifferentialComponent(String name, StructureDefinition.StructureDefinitionDifferentialComponent element) throws IOException { 28085 if (element != null) { 28086 composeElementAttributes(element); 28087 xml.enter(FHIR_NS, name); 28088 composeBackboneElements(element); 28089 if (element.hasElement()) { 28090 for (ElementDefinition e : element.getElement()) 28091 composeElementDefinition("element", e); 28092 } 28093 composeElementClose(element); 28094 xml.exit(FHIR_NS, name); 28095 } 28096 } 28097 28098 protected void composeStructureMap(String name, StructureMap element) throws IOException { 28099 if (element != null) { 28100 composeDomainResourceAttributes(element); 28101 xml.enter(FHIR_NS, name); 28102 composeDomainResourceElements(element); 28103 if (element.hasUrlElement()) { 28104 composeUri("url", element.getUrlElement()); 28105 } 28106 if (element.hasIdentifier()) { 28107 for (Identifier e : element.getIdentifier()) 28108 composeIdentifier("identifier", e); 28109 } 28110 if (element.hasVersionElement()) { 28111 composeString("version", element.getVersionElement()); 28112 } 28113 if (element.hasNameElement()) { 28114 composeString("name", element.getNameElement()); 28115 } 28116 if (element.hasStatusElement()) 28117 composeEnumeration("status", element.getStatusElement(), new Enumerations.ConformanceResourceStatusEnumFactory()); 28118 if (element.hasExperimentalElement()) { 28119 composeBoolean("experimental", element.getExperimentalElement()); 28120 } 28121 if (element.hasPublisherElement()) { 28122 composeString("publisher", element.getPublisherElement()); 28123 } 28124 if (element.hasContact()) { 28125 for (StructureMap.StructureMapContactComponent e : element.getContact()) 28126 composeStructureMapStructureMapContactComponent("contact", e); 28127 } 28128 if (element.hasDateElement()) { 28129 composeDateTime("date", element.getDateElement()); 28130 } 28131 if (element.hasDescriptionElement()) { 28132 composeString("description", element.getDescriptionElement()); 28133 } 28134 if (element.hasUseContext()) { 28135 for (CodeableConcept e : element.getUseContext()) 28136 composeCodeableConcept("useContext", e); 28137 } 28138 if (element.hasRequirementsElement()) { 28139 composeString("requirements", element.getRequirementsElement()); 28140 } 28141 if (element.hasCopyrightElement()) { 28142 composeString("copyright", element.getCopyrightElement()); 28143 } 28144 if (element.hasStructure()) { 28145 for (StructureMap.StructureMapStructureComponent e : element.getStructure()) 28146 composeStructureMapStructureMapStructureComponent("structure", e); 28147 } 28148 if (element.hasImport()) { 28149 for (UriType e : element.getImport()) 28150 composeUri("import", e); 28151 } 28152 if (element.hasGroup()) { 28153 for (StructureMap.StructureMapGroupComponent e : element.getGroup()) 28154 composeStructureMapStructureMapGroupComponent("group", e); 28155 } 28156 composeElementClose(element); 28157 xml.exit(FHIR_NS, name); 28158 } 28159 } 28160 28161 protected void composeStructureMapStructureMapContactComponent(String name, StructureMap.StructureMapContactComponent element) throws IOException { 28162 if (element != null) { 28163 composeElementAttributes(element); 28164 xml.enter(FHIR_NS, name); 28165 composeBackboneElements(element); 28166 if (element.hasNameElement()) { 28167 composeString("name", element.getNameElement()); 28168 } 28169 if (element.hasTelecom()) { 28170 for (ContactPoint e : element.getTelecom()) 28171 composeContactPoint("telecom", e); 28172 } 28173 composeElementClose(element); 28174 xml.exit(FHIR_NS, name); 28175 } 28176 } 28177 28178 protected void composeStructureMapStructureMapStructureComponent(String name, StructureMap.StructureMapStructureComponent element) throws IOException { 28179 if (element != null) { 28180 composeElementAttributes(element); 28181 xml.enter(FHIR_NS, name); 28182 composeBackboneElements(element); 28183 if (element.hasUrlElement()) { 28184 composeUri("url", element.getUrlElement()); 28185 } 28186 if (element.hasModeElement()) 28187 composeEnumeration("mode", element.getModeElement(), new StructureMap.StructureMapModelModeEnumFactory()); 28188 if (element.hasDocumentationElement()) { 28189 composeString("documentation", element.getDocumentationElement()); 28190 } 28191 composeElementClose(element); 28192 xml.exit(FHIR_NS, name); 28193 } 28194 } 28195 28196 protected void composeStructureMapStructureMapGroupComponent(String name, StructureMap.StructureMapGroupComponent element) throws IOException { 28197 if (element != null) { 28198 composeElementAttributes(element); 28199 xml.enter(FHIR_NS, name); 28200 composeBackboneElements(element); 28201 if (element.hasNameElement()) { 28202 composeId("name", element.getNameElement()); 28203 } 28204 if (element.hasExtendsElement()) { 28205 composeId("extends", element.getExtendsElement()); 28206 } 28207 if (element.hasDocumentationElement()) { 28208 composeString("documentation", element.getDocumentationElement()); 28209 } 28210 if (element.hasInput()) { 28211 for (StructureMap.StructureMapGroupInputComponent e : element.getInput()) 28212 composeStructureMapStructureMapGroupInputComponent("input", e); 28213 } 28214 if (element.hasRule()) { 28215 for (StructureMap.StructureMapGroupRuleComponent e : element.getRule()) 28216 composeStructureMapStructureMapGroupRuleComponent("rule", e); 28217 } 28218 composeElementClose(element); 28219 xml.exit(FHIR_NS, name); 28220 } 28221 } 28222 28223 protected void composeStructureMapStructureMapGroupInputComponent(String name, StructureMap.StructureMapGroupInputComponent element) throws IOException { 28224 if (element != null) { 28225 composeElementAttributes(element); 28226 xml.enter(FHIR_NS, name); 28227 composeBackboneElements(element); 28228 if (element.hasNameElement()) { 28229 composeId("name", element.getNameElement()); 28230 } 28231 if (element.hasTypeElement()) { 28232 composeString("type", element.getTypeElement()); 28233 } 28234 if (element.hasModeElement()) 28235 composeEnumeration("mode", element.getModeElement(), new StructureMap.StructureMapInputModeEnumFactory()); 28236 if (element.hasDocumentationElement()) { 28237 composeString("documentation", element.getDocumentationElement()); 28238 } 28239 composeElementClose(element); 28240 xml.exit(FHIR_NS, name); 28241 } 28242 } 28243 28244 protected void composeStructureMapStructureMapGroupRuleComponent(String name, StructureMap.StructureMapGroupRuleComponent element) throws IOException { 28245 if (element != null) { 28246 composeElementAttributes(element); 28247 xml.enter(FHIR_NS, name); 28248 composeBackboneElements(element); 28249 if (element.hasNameElement()) { 28250 composeId("name", element.getNameElement()); 28251 } 28252 if (element.hasSource()) { 28253 for (StructureMap.StructureMapGroupRuleSourceComponent e : element.getSource()) 28254 composeStructureMapStructureMapGroupRuleSourceComponent("source", e); 28255 } 28256 if (element.hasTarget()) { 28257 for (StructureMap.StructureMapGroupRuleTargetComponent e : element.getTarget()) 28258 composeStructureMapStructureMapGroupRuleTargetComponent("target", e); 28259 } 28260 if (element.hasRule()) { 28261 for (StructureMap.StructureMapGroupRuleComponent e : element.getRule()) 28262 composeStructureMapStructureMapGroupRuleComponent("rule", e); 28263 } 28264 if (element.hasDependent()) { 28265 for (StructureMap.StructureMapGroupRuleDependentComponent e : element.getDependent()) 28266 composeStructureMapStructureMapGroupRuleDependentComponent("dependent", e); 28267 } 28268 if (element.hasDocumentationElement()) { 28269 composeString("documentation", element.getDocumentationElement()); 28270 } 28271 composeElementClose(element); 28272 xml.exit(FHIR_NS, name); 28273 } 28274 } 28275 28276 protected void composeStructureMapStructureMapGroupRuleSourceComponent(String name, StructureMap.StructureMapGroupRuleSourceComponent element) throws IOException { 28277 if (element != null) { 28278 composeElementAttributes(element); 28279 xml.enter(FHIR_NS, name); 28280 composeBackboneElements(element); 28281 if (element.hasRequiredElement()) { 28282 composeBoolean("required", element.getRequiredElement()); 28283 } 28284 if (element.hasContextElement()) { 28285 composeId("context", element.getContextElement()); 28286 } 28287 if (element.hasContextTypeElement()) 28288 composeEnumeration("contextType", element.getContextTypeElement(), new StructureMap.StructureMapContextTypeEnumFactory()); 28289 if (element.hasElementElement()) { 28290 composeString("element", element.getElementElement()); 28291 } 28292 if (element.hasListModeElement()) 28293 composeEnumeration("listMode", element.getListModeElement(), new StructureMap.StructureMapListModeEnumFactory()); 28294 if (element.hasVariableElement()) { 28295 composeId("variable", element.getVariableElement()); 28296 } 28297 if (element.hasConditionElement()) { 28298 composeString("condition", element.getConditionElement()); 28299 } 28300 if (element.hasCheckElement()) { 28301 composeString("check", element.getCheckElement()); 28302 } 28303 composeElementClose(element); 28304 xml.exit(FHIR_NS, name); 28305 } 28306 } 28307 28308 protected void composeStructureMapStructureMapGroupRuleTargetComponent(String name, StructureMap.StructureMapGroupRuleTargetComponent element) throws IOException { 28309 if (element != null) { 28310 composeElementAttributes(element); 28311 xml.enter(FHIR_NS, name); 28312 composeBackboneElements(element); 28313 if (element.hasContextElement()) { 28314 composeId("context", element.getContextElement()); 28315 } 28316 if (element.hasContextTypeElement()) 28317 composeEnumeration("contextType", element.getContextTypeElement(), new StructureMap.StructureMapContextTypeEnumFactory()); 28318 if (element.hasElementElement()) { 28319 composeString("element", element.getElementElement()); 28320 } 28321 if (element.hasVariableElement()) { 28322 composeId("variable", element.getVariableElement()); 28323 } 28324 if (element.hasListMode()) 28325 for (Enumeration<StructureMap.StructureMapListMode> e : element.getListMode()) 28326 composeEnumeration("listMode", e, new StructureMap.StructureMapListModeEnumFactory()); 28327 if (element.hasListRuleIdElement()) { 28328 composeId("listRuleId", element.getListRuleIdElement()); 28329 } 28330 if (element.hasTransformElement()) 28331 composeEnumeration("transform", element.getTransformElement(), new StructureMap.StructureMapTransformEnumFactory()); 28332 if (element.hasParameter()) { 28333 for (StructureMap.StructureMapGroupRuleTargetParameterComponent e : element.getParameter()) 28334 composeStructureMapStructureMapGroupRuleTargetParameterComponent("parameter", e); 28335 } 28336 composeElementClose(element); 28337 xml.exit(FHIR_NS, name); 28338 } 28339 } 28340 28341 protected void composeStructureMapStructureMapGroupRuleTargetParameterComponent(String name, StructureMap.StructureMapGroupRuleTargetParameterComponent element) throws IOException { 28342 if (element != null) { 28343 composeElementAttributes(element); 28344 xml.enter(FHIR_NS, name); 28345 composeBackboneElements(element); 28346 if (element.hasValue()) { 28347 composeType("value", element.getValue()); 28348 } composeElementClose(element); 28349 xml.exit(FHIR_NS, name); 28350 } 28351 } 28352 28353 protected void composeStructureMapStructureMapGroupRuleDependentComponent(String name, StructureMap.StructureMapGroupRuleDependentComponent element) throws IOException { 28354 if (element != null) { 28355 composeElementAttributes(element); 28356 xml.enter(FHIR_NS, name); 28357 composeBackboneElements(element); 28358 if (element.hasNameElement()) { 28359 composeId("name", element.getNameElement()); 28360 } 28361 if (element.hasVariable()) { 28362 for (StringType e : element.getVariable()) 28363 composeString("variable", e); 28364 } 28365 composeElementClose(element); 28366 xml.exit(FHIR_NS, name); 28367 } 28368 } 28369 28370 protected void composeSubscription(String name, Subscription element) throws IOException { 28371 if (element != null) { 28372 composeDomainResourceAttributes(element); 28373 xml.enter(FHIR_NS, name); 28374 composeDomainResourceElements(element); 28375 if (element.hasCriteriaElement()) { 28376 composeString("criteria", element.getCriteriaElement()); 28377 } 28378 if (element.hasContact()) { 28379 for (ContactPoint e : element.getContact()) 28380 composeContactPoint("contact", e); 28381 } 28382 if (element.hasReasonElement()) { 28383 composeString("reason", element.getReasonElement()); 28384 } 28385 if (element.hasStatusElement()) 28386 composeEnumeration("status", element.getStatusElement(), new Subscription.SubscriptionStatusEnumFactory()); 28387 if (element.hasErrorElement()) { 28388 composeString("error", element.getErrorElement()); 28389 } 28390 if (element.hasChannel()) { 28391 composeSubscriptionSubscriptionChannelComponent("channel", element.getChannel()); 28392 } 28393 if (element.hasEndElement()) { 28394 composeInstant("end", element.getEndElement()); 28395 } 28396 if (element.hasTag()) { 28397 for (Coding e : element.getTag()) 28398 composeCoding("tag", e); 28399 } 28400 composeElementClose(element); 28401 xml.exit(FHIR_NS, name); 28402 } 28403 } 28404 28405 protected void composeSubscriptionSubscriptionChannelComponent(String name, Subscription.SubscriptionChannelComponent element) throws IOException { 28406 if (element != null) { 28407 composeElementAttributes(element); 28408 xml.enter(FHIR_NS, name); 28409 composeBackboneElements(element); 28410 if (element.hasTypeElement()) 28411 composeEnumeration("type", element.getTypeElement(), new Subscription.SubscriptionChannelTypeEnumFactory()); 28412 if (element.hasEndpointElement()) { 28413 composeUri("endpoint", element.getEndpointElement()); 28414 } 28415 if (element.hasPayloadElement()) { 28416 composeString("payload", element.getPayloadElement()); 28417 } 28418 if (element.hasHeaderElement()) { 28419 composeString("header", element.getHeaderElement()); 28420 } 28421 composeElementClose(element); 28422 xml.exit(FHIR_NS, name); 28423 } 28424 } 28425 28426 protected void composeSubstance(String name, Substance element) throws IOException { 28427 if (element != null) { 28428 composeDomainResourceAttributes(element); 28429 xml.enter(FHIR_NS, name); 28430 composeDomainResourceElements(element); 28431 if (element.hasIdentifier()) { 28432 for (Identifier e : element.getIdentifier()) 28433 composeIdentifier("identifier", e); 28434 } 28435 if (element.hasCategory()) { 28436 for (CodeableConcept e : element.getCategory()) 28437 composeCodeableConcept("category", e); 28438 } 28439 if (element.hasCode()) { 28440 composeCodeableConcept("code", element.getCode()); 28441 } 28442 if (element.hasDescriptionElement()) { 28443 composeString("description", element.getDescriptionElement()); 28444 } 28445 if (element.hasInstance()) { 28446 for (Substance.SubstanceInstanceComponent e : element.getInstance()) 28447 composeSubstanceSubstanceInstanceComponent("instance", e); 28448 } 28449 if (element.hasIngredient()) { 28450 for (Substance.SubstanceIngredientComponent e : element.getIngredient()) 28451 composeSubstanceSubstanceIngredientComponent("ingredient", e); 28452 } 28453 composeElementClose(element); 28454 xml.exit(FHIR_NS, name); 28455 } 28456 } 28457 28458 protected void composeSubstanceSubstanceInstanceComponent(String name, Substance.SubstanceInstanceComponent element) throws IOException { 28459 if (element != null) { 28460 composeElementAttributes(element); 28461 xml.enter(FHIR_NS, name); 28462 composeBackboneElements(element); 28463 if (element.hasIdentifier()) { 28464 composeIdentifier("identifier", element.getIdentifier()); 28465 } 28466 if (element.hasExpiryElement()) { 28467 composeDateTime("expiry", element.getExpiryElement()); 28468 } 28469 if (element.hasQuantity()) { 28470 composeSimpleQuantity("quantity", element.getQuantity()); 28471 } 28472 composeElementClose(element); 28473 xml.exit(FHIR_NS, name); 28474 } 28475 } 28476 28477 protected void composeSubstanceSubstanceIngredientComponent(String name, Substance.SubstanceIngredientComponent element) throws IOException { 28478 if (element != null) { 28479 composeElementAttributes(element); 28480 xml.enter(FHIR_NS, name); 28481 composeBackboneElements(element); 28482 if (element.hasQuantity()) { 28483 composeRatio("quantity", element.getQuantity()); 28484 } 28485 if (element.hasSubstance()) { 28486 composeReference("substance", element.getSubstance()); 28487 } 28488 composeElementClose(element); 28489 xml.exit(FHIR_NS, name); 28490 } 28491 } 28492 28493 protected void composeSupplyDelivery(String name, SupplyDelivery element) throws IOException { 28494 if (element != null) { 28495 composeDomainResourceAttributes(element); 28496 xml.enter(FHIR_NS, name); 28497 composeDomainResourceElements(element); 28498 if (element.hasIdentifier()) { 28499 composeIdentifier("identifier", element.getIdentifier()); 28500 } 28501 if (element.hasStatusElement()) 28502 composeEnumeration("status", element.getStatusElement(), new SupplyDelivery.SupplyDeliveryStatusEnumFactory()); 28503 if (element.hasPatient()) { 28504 composeReference("patient", element.getPatient()); 28505 } 28506 if (element.hasType()) { 28507 composeCodeableConcept("type", element.getType()); 28508 } 28509 if (element.hasQuantity()) { 28510 composeSimpleQuantity("quantity", element.getQuantity()); 28511 } 28512 if (element.hasSuppliedItem()) { 28513 composeReference("suppliedItem", element.getSuppliedItem()); 28514 } 28515 if (element.hasSupplier()) { 28516 composeReference("supplier", element.getSupplier()); 28517 } 28518 if (element.hasWhenPrepared()) { 28519 composePeriod("whenPrepared", element.getWhenPrepared()); 28520 } 28521 if (element.hasTimeElement()) { 28522 composeDateTime("time", element.getTimeElement()); 28523 } 28524 if (element.hasDestination()) { 28525 composeReference("destination", element.getDestination()); 28526 } 28527 if (element.hasReceiver()) { 28528 for (Reference e : element.getReceiver()) 28529 composeReference("receiver", e); 28530 } 28531 composeElementClose(element); 28532 xml.exit(FHIR_NS, name); 28533 } 28534 } 28535 28536 protected void composeSupplyRequest(String name, SupplyRequest element) throws IOException { 28537 if (element != null) { 28538 composeDomainResourceAttributes(element); 28539 xml.enter(FHIR_NS, name); 28540 composeDomainResourceElements(element); 28541 if (element.hasPatient()) { 28542 composeReference("patient", element.getPatient()); 28543 } 28544 if (element.hasSource()) { 28545 composeReference("source", element.getSource()); 28546 } 28547 if (element.hasDateElement()) { 28548 composeDateTime("date", element.getDateElement()); 28549 } 28550 if (element.hasIdentifier()) { 28551 composeIdentifier("identifier", element.getIdentifier()); 28552 } 28553 if (element.hasStatusElement()) 28554 composeEnumeration("status", element.getStatusElement(), new SupplyRequest.SupplyRequestStatusEnumFactory()); 28555 if (element.hasKind()) { 28556 composeCodeableConcept("kind", element.getKind()); 28557 } 28558 if (element.hasOrderedItem()) { 28559 composeReference("orderedItem", element.getOrderedItem()); 28560 } 28561 if (element.hasSupplier()) { 28562 for (Reference e : element.getSupplier()) 28563 composeReference("supplier", e); 28564 } 28565 if (element.hasReason()) { 28566 composeType("reason", element.getReason()); 28567 } if (element.hasWhen()) { 28568 composeSupplyRequestSupplyRequestWhenComponent("when", element.getWhen()); 28569 } 28570 composeElementClose(element); 28571 xml.exit(FHIR_NS, name); 28572 } 28573 } 28574 28575 protected void composeSupplyRequestSupplyRequestWhenComponent(String name, SupplyRequest.SupplyRequestWhenComponent element) throws IOException { 28576 if (element != null) { 28577 composeElementAttributes(element); 28578 xml.enter(FHIR_NS, name); 28579 composeBackboneElements(element); 28580 if (element.hasCode()) { 28581 composeCodeableConcept("code", element.getCode()); 28582 } 28583 if (element.hasSchedule()) { 28584 composeTiming("schedule", element.getSchedule()); 28585 } 28586 composeElementClose(element); 28587 xml.exit(FHIR_NS, name); 28588 } 28589 } 28590 28591 protected void composeTask(String name, Task element) throws IOException { 28592 if (element != null) { 28593 composeDomainResourceAttributes(element); 28594 xml.enter(FHIR_NS, name); 28595 composeDomainResourceElements(element); 28596 if (element.hasIdentifier()) { 28597 composeIdentifier("identifier", element.getIdentifier()); 28598 } 28599 if (element.hasType()) { 28600 composeCodeableConcept("type", element.getType()); 28601 } 28602 if (element.hasDescriptionElement()) { 28603 composeString("description", element.getDescriptionElement()); 28604 } 28605 if (element.hasPerformerType()) { 28606 for (Coding e : element.getPerformerType()) 28607 composeCoding("performerType", e); 28608 } 28609 if (element.hasPriorityElement()) 28610 composeEnumeration("priority", element.getPriorityElement(), new Task.TaskPriorityEnumFactory()); 28611 if (element.hasStatusElement()) 28612 composeEnumeration("status", element.getStatusElement(), new Task.TaskStatusEnumFactory()); 28613 if (element.hasFailureReason()) { 28614 composeCodeableConcept("failureReason", element.getFailureReason()); 28615 } 28616 if (element.hasSubject()) { 28617 composeReference("subject", element.getSubject()); 28618 } 28619 if (element.hasFor()) { 28620 composeReference("for", element.getFor()); 28621 } 28622 if (element.hasDefinitionElement()) { 28623 composeUri("definition", element.getDefinitionElement()); 28624 } 28625 if (element.hasCreatedElement()) { 28626 composeDateTime("created", element.getCreatedElement()); 28627 } 28628 if (element.hasLastModifiedElement()) { 28629 composeDateTime("lastModified", element.getLastModifiedElement()); 28630 } 28631 if (element.hasCreator()) { 28632 composeReference("creator", element.getCreator()); 28633 } 28634 if (element.hasOwner()) { 28635 composeReference("owner", element.getOwner()); 28636 } 28637 if (element.hasParent()) { 28638 composeReference("parent", element.getParent()); 28639 } 28640 if (element.hasInput()) { 28641 for (Task.ParameterComponent e : element.getInput()) 28642 composeTaskParameterComponent("input", e); 28643 } 28644 if (element.hasOutput()) { 28645 for (Task.TaskOutputComponent e : element.getOutput()) 28646 composeTaskTaskOutputComponent("output", e); 28647 } 28648 composeElementClose(element); 28649 xml.exit(FHIR_NS, name); 28650 } 28651 } 28652 28653 protected void composeTaskParameterComponent(String name, Task.ParameterComponent element) throws IOException { 28654 if (element != null) { 28655 composeElementAttributes(element); 28656 xml.enter(FHIR_NS, name); 28657 composeBackboneElements(element); 28658 if (element.hasNameElement()) { 28659 composeString("name", element.getNameElement()); 28660 } 28661 if (element.hasValue()) { 28662 composeType("value", element.getValue()); 28663 } composeElementClose(element); 28664 xml.exit(FHIR_NS, name); 28665 } 28666 } 28667 28668 protected void composeTaskTaskOutputComponent(String name, Task.TaskOutputComponent element) throws IOException { 28669 if (element != null) { 28670 composeElementAttributes(element); 28671 xml.enter(FHIR_NS, name); 28672 composeBackboneElements(element); 28673 if (element.hasNameElement()) { 28674 composeString("name", element.getNameElement()); 28675 } 28676 if (element.hasValue()) { 28677 composeType("value", element.getValue()); 28678 } composeElementClose(element); 28679 xml.exit(FHIR_NS, name); 28680 } 28681 } 28682 28683 protected void composeTestScript(String name, TestScript element) throws IOException { 28684 if (element != null) { 28685 composeDomainResourceAttributes(element); 28686 xml.enter(FHIR_NS, name); 28687 composeDomainResourceElements(element); 28688 if (element.hasUrlElement()) { 28689 composeUri("url", element.getUrlElement()); 28690 } 28691 if (element.hasVersionElement()) { 28692 composeString("version", element.getVersionElement()); 28693 } 28694 if (element.hasNameElement()) { 28695 composeString("name", element.getNameElement()); 28696 } 28697 if (element.hasStatusElement()) 28698 composeEnumeration("status", element.getStatusElement(), new Enumerations.ConformanceResourceStatusEnumFactory()); 28699 if (element.hasIdentifier()) { 28700 composeIdentifier("identifier", element.getIdentifier()); 28701 } 28702 if (element.hasExperimentalElement()) { 28703 composeBoolean("experimental", element.getExperimentalElement()); 28704 } 28705 if (element.hasPublisherElement()) { 28706 composeString("publisher", element.getPublisherElement()); 28707 } 28708 if (element.hasContact()) { 28709 for (TestScript.TestScriptContactComponent e : element.getContact()) 28710 composeTestScriptTestScriptContactComponent("contact", e); 28711 } 28712 if (element.hasDateElement()) { 28713 composeDateTime("date", element.getDateElement()); 28714 } 28715 if (element.hasDescriptionElement()) { 28716 composeString("description", element.getDescriptionElement()); 28717 } 28718 if (element.hasUseContext()) { 28719 for (CodeableConcept e : element.getUseContext()) 28720 composeCodeableConcept("useContext", e); 28721 } 28722 if (element.hasRequirementsElement()) { 28723 composeString("requirements", element.getRequirementsElement()); 28724 } 28725 if (element.hasCopyrightElement()) { 28726 composeString("copyright", element.getCopyrightElement()); 28727 } 28728 if (element.hasOrigin()) { 28729 for (TestScript.TestScriptOriginComponent e : element.getOrigin()) 28730 composeTestScriptTestScriptOriginComponent("origin", e); 28731 } 28732 if (element.hasDestination()) { 28733 for (TestScript.TestScriptDestinationComponent e : element.getDestination()) 28734 composeTestScriptTestScriptDestinationComponent("destination", e); 28735 } 28736 if (element.hasMetadata()) { 28737 composeTestScriptTestScriptMetadataComponent("metadata", element.getMetadata()); 28738 } 28739 if (element.hasFixture()) { 28740 for (TestScript.TestScriptFixtureComponent e : element.getFixture()) 28741 composeTestScriptTestScriptFixtureComponent("fixture", e); 28742 } 28743 if (element.hasProfile()) { 28744 for (Reference e : element.getProfile()) 28745 composeReference("profile", e); 28746 } 28747 if (element.hasVariable()) { 28748 for (TestScript.TestScriptVariableComponent e : element.getVariable()) 28749 composeTestScriptTestScriptVariableComponent("variable", e); 28750 } 28751 if (element.hasRule()) { 28752 for (TestScript.TestScriptRuleComponent e : element.getRule()) 28753 composeTestScriptTestScriptRuleComponent("rule", e); 28754 } 28755 if (element.hasRuleset()) { 28756 for (TestScript.TestScriptRulesetComponent e : element.getRuleset()) 28757 composeTestScriptTestScriptRulesetComponent("ruleset", e); 28758 } 28759 if (element.hasSetup()) { 28760 composeTestScriptTestScriptSetupComponent("setup", element.getSetup()); 28761 } 28762 if (element.hasTest()) { 28763 for (TestScript.TestScriptTestComponent e : element.getTest()) 28764 composeTestScriptTestScriptTestComponent("test", e); 28765 } 28766 if (element.hasTeardown()) { 28767 composeTestScriptTestScriptTeardownComponent("teardown", element.getTeardown()); 28768 } 28769 composeElementClose(element); 28770 xml.exit(FHIR_NS, name); 28771 } 28772 } 28773 28774 protected void composeTestScriptTestScriptContactComponent(String name, TestScript.TestScriptContactComponent element) throws IOException { 28775 if (element != null) { 28776 composeElementAttributes(element); 28777 xml.enter(FHIR_NS, name); 28778 composeBackboneElements(element); 28779 if (element.hasNameElement()) { 28780 composeString("name", element.getNameElement()); 28781 } 28782 if (element.hasTelecom()) { 28783 for (ContactPoint e : element.getTelecom()) 28784 composeContactPoint("telecom", e); 28785 } 28786 composeElementClose(element); 28787 xml.exit(FHIR_NS, name); 28788 } 28789 } 28790 28791 protected void composeTestScriptTestScriptOriginComponent(String name, TestScript.TestScriptOriginComponent element) throws IOException { 28792 if (element != null) { 28793 composeElementAttributes(element); 28794 xml.enter(FHIR_NS, name); 28795 composeBackboneElements(element); 28796 if (element.hasIndexElement()) { 28797 composeInteger("index", element.getIndexElement()); 28798 } 28799 if (element.hasProfile()) { 28800 composeCoding("profile", element.getProfile()); 28801 } 28802 composeElementClose(element); 28803 xml.exit(FHIR_NS, name); 28804 } 28805 } 28806 28807 protected void composeTestScriptTestScriptDestinationComponent(String name, TestScript.TestScriptDestinationComponent element) throws IOException { 28808 if (element != null) { 28809 composeElementAttributes(element); 28810 xml.enter(FHIR_NS, name); 28811 composeBackboneElements(element); 28812 if (element.hasIndexElement()) { 28813 composeInteger("index", element.getIndexElement()); 28814 } 28815 if (element.hasProfile()) { 28816 composeCoding("profile", element.getProfile()); 28817 } 28818 composeElementClose(element); 28819 xml.exit(FHIR_NS, name); 28820 } 28821 } 28822 28823 protected void composeTestScriptTestScriptMetadataComponent(String name, TestScript.TestScriptMetadataComponent element) throws IOException { 28824 if (element != null) { 28825 composeElementAttributes(element); 28826 xml.enter(FHIR_NS, name); 28827 composeBackboneElements(element); 28828 if (element.hasLink()) { 28829 for (TestScript.TestScriptMetadataLinkComponent e : element.getLink()) 28830 composeTestScriptTestScriptMetadataLinkComponent("link", e); 28831 } 28832 if (element.hasCapability()) { 28833 for (TestScript.TestScriptMetadataCapabilityComponent e : element.getCapability()) 28834 composeTestScriptTestScriptMetadataCapabilityComponent("capability", e); 28835 } 28836 composeElementClose(element); 28837 xml.exit(FHIR_NS, name); 28838 } 28839 } 28840 28841 protected void composeTestScriptTestScriptMetadataLinkComponent(String name, TestScript.TestScriptMetadataLinkComponent element) throws IOException { 28842 if (element != null) { 28843 composeElementAttributes(element); 28844 xml.enter(FHIR_NS, name); 28845 composeBackboneElements(element); 28846 if (element.hasUrlElement()) { 28847 composeUri("url", element.getUrlElement()); 28848 } 28849 if (element.hasDescriptionElement()) { 28850 composeString("description", element.getDescriptionElement()); 28851 } 28852 composeElementClose(element); 28853 xml.exit(FHIR_NS, name); 28854 } 28855 } 28856 28857 protected void composeTestScriptTestScriptMetadataCapabilityComponent(String name, TestScript.TestScriptMetadataCapabilityComponent element) throws IOException { 28858 if (element != null) { 28859 composeElementAttributes(element); 28860 xml.enter(FHIR_NS, name); 28861 composeBackboneElements(element); 28862 if (element.hasRequiredElement()) { 28863 composeBoolean("required", element.getRequiredElement()); 28864 } 28865 if (element.hasValidatedElement()) { 28866 composeBoolean("validated", element.getValidatedElement()); 28867 } 28868 if (element.hasDescriptionElement()) { 28869 composeString("description", element.getDescriptionElement()); 28870 } 28871 if (element.hasOrigin()) { 28872 for (IntegerType e : element.getOrigin()) 28873 composeInteger("origin", e); 28874 } 28875 if (element.hasDestinationElement()) { 28876 composeInteger("destination", element.getDestinationElement()); 28877 } 28878 if (element.hasLink()) { 28879 for (UriType e : element.getLink()) 28880 composeUri("link", e); 28881 } 28882 if (element.hasConformance()) { 28883 composeReference("conformance", element.getConformance()); 28884 } 28885 composeElementClose(element); 28886 xml.exit(FHIR_NS, name); 28887 } 28888 } 28889 28890 protected void composeTestScriptTestScriptFixtureComponent(String name, TestScript.TestScriptFixtureComponent element) throws IOException { 28891 if (element != null) { 28892 composeElementAttributes(element); 28893 xml.enter(FHIR_NS, name); 28894 composeBackboneElements(element); 28895 if (element.hasAutocreateElement()) { 28896 composeBoolean("autocreate", element.getAutocreateElement()); 28897 } 28898 if (element.hasAutodeleteElement()) { 28899 composeBoolean("autodelete", element.getAutodeleteElement()); 28900 } 28901 if (element.hasResource()) { 28902 composeReference("resource", element.getResource()); 28903 } 28904 composeElementClose(element); 28905 xml.exit(FHIR_NS, name); 28906 } 28907 } 28908 28909 protected void composeTestScriptTestScriptVariableComponent(String name, TestScript.TestScriptVariableComponent element) throws IOException { 28910 if (element != null) { 28911 composeElementAttributes(element); 28912 xml.enter(FHIR_NS, name); 28913 composeBackboneElements(element); 28914 if (element.hasNameElement()) { 28915 composeString("name", element.getNameElement()); 28916 } 28917 if (element.hasDefaultValueElement()) { 28918 composeString("defaultValue", element.getDefaultValueElement()); 28919 } 28920 if (element.hasHeaderFieldElement()) { 28921 composeString("headerField", element.getHeaderFieldElement()); 28922 } 28923 if (element.hasPathElement()) { 28924 composeString("path", element.getPathElement()); 28925 } 28926 if (element.hasSourceIdElement()) { 28927 composeId("sourceId", element.getSourceIdElement()); 28928 } 28929 composeElementClose(element); 28930 xml.exit(FHIR_NS, name); 28931 } 28932 } 28933 28934 protected void composeTestScriptTestScriptRuleComponent(String name, TestScript.TestScriptRuleComponent element) throws IOException { 28935 if (element != null) { 28936 composeElementAttributes(element); 28937 xml.enter(FHIR_NS, name); 28938 composeBackboneElements(element); 28939 if (element.hasResource()) { 28940 composeReference("resource", element.getResource()); 28941 } 28942 if (element.hasParam()) { 28943 for (TestScript.TestScriptRuleParamComponent e : element.getParam()) 28944 composeTestScriptTestScriptRuleParamComponent("param", e); 28945 } 28946 composeElementClose(element); 28947 xml.exit(FHIR_NS, name); 28948 } 28949 } 28950 28951 protected void composeTestScriptTestScriptRuleParamComponent(String name, TestScript.TestScriptRuleParamComponent element) throws IOException { 28952 if (element != null) { 28953 composeElementAttributes(element); 28954 xml.enter(FHIR_NS, name); 28955 composeBackboneElements(element); 28956 if (element.hasNameElement()) { 28957 composeString("name", element.getNameElement()); 28958 } 28959 if (element.hasValueElement()) { 28960 composeString("value", element.getValueElement()); 28961 } 28962 composeElementClose(element); 28963 xml.exit(FHIR_NS, name); 28964 } 28965 } 28966 28967 protected void composeTestScriptTestScriptRulesetComponent(String name, TestScript.TestScriptRulesetComponent element) throws IOException { 28968 if (element != null) { 28969 composeElementAttributes(element); 28970 xml.enter(FHIR_NS, name); 28971 composeBackboneElements(element); 28972 if (element.hasResource()) { 28973 composeReference("resource", element.getResource()); 28974 } 28975 if (element.hasRule()) { 28976 for (TestScript.TestScriptRulesetRuleComponent e : element.getRule()) 28977 composeTestScriptTestScriptRulesetRuleComponent("rule", e); 28978 } 28979 composeElementClose(element); 28980 xml.exit(FHIR_NS, name); 28981 } 28982 } 28983 28984 protected void composeTestScriptTestScriptRulesetRuleComponent(String name, TestScript.TestScriptRulesetRuleComponent element) throws IOException { 28985 if (element != null) { 28986 composeElementAttributes(element); 28987 xml.enter(FHIR_NS, name); 28988 composeBackboneElements(element); 28989 if (element.hasRuleIdElement()) { 28990 composeId("ruleId", element.getRuleIdElement()); 28991 } 28992 if (element.hasParam()) { 28993 for (TestScript.TestScriptRulesetRuleParamComponent e : element.getParam()) 28994 composeTestScriptTestScriptRulesetRuleParamComponent("param", e); 28995 } 28996 composeElementClose(element); 28997 xml.exit(FHIR_NS, name); 28998 } 28999 } 29000 29001 protected void composeTestScriptTestScriptRulesetRuleParamComponent(String name, TestScript.TestScriptRulesetRuleParamComponent element) throws IOException { 29002 if (element != null) { 29003 composeElementAttributes(element); 29004 xml.enter(FHIR_NS, name); 29005 composeBackboneElements(element); 29006 if (element.hasNameElement()) { 29007 composeString("name", element.getNameElement()); 29008 } 29009 if (element.hasValueElement()) { 29010 composeString("value", element.getValueElement()); 29011 } 29012 composeElementClose(element); 29013 xml.exit(FHIR_NS, name); 29014 } 29015 } 29016 29017 protected void composeTestScriptTestScriptSetupComponent(String name, TestScript.TestScriptSetupComponent element) throws IOException { 29018 if (element != null) { 29019 composeElementAttributes(element); 29020 xml.enter(FHIR_NS, name); 29021 composeBackboneElements(element); 29022 if (element.hasMetadata()) { 29023 composeTestScriptTestScriptMetadataComponent("metadata", element.getMetadata()); 29024 } 29025 if (element.hasAction()) { 29026 for (TestScript.SetupActionComponent e : element.getAction()) 29027 composeTestScriptSetupActionComponent("action", e); 29028 } 29029 composeElementClose(element); 29030 xml.exit(FHIR_NS, name); 29031 } 29032 } 29033 29034 protected void composeTestScriptSetupActionComponent(String name, TestScript.SetupActionComponent element) throws IOException { 29035 if (element != null) { 29036 composeElementAttributes(element); 29037 xml.enter(FHIR_NS, name); 29038 composeBackboneElements(element); 29039 if (element.hasOperation()) { 29040 composeTestScriptSetupActionOperationComponent("operation", element.getOperation()); 29041 } 29042 if (element.hasAssert()) { 29043 composeTestScriptSetupActionAssertComponent("assert", element.getAssert()); 29044 } 29045 composeElementClose(element); 29046 xml.exit(FHIR_NS, name); 29047 } 29048 } 29049 29050 protected void composeTestScriptSetupActionOperationComponent(String name, TestScript.SetupActionOperationComponent element) throws IOException { 29051 if (element != null) { 29052 composeElementAttributes(element); 29053 xml.enter(FHIR_NS, name); 29054 composeBackboneElements(element); 29055 if (element.hasType()) { 29056 composeCoding("type", element.getType()); 29057 } 29058 if (element.hasResourceElement()) { 29059 composeCode("resource", element.getResourceElement()); 29060 } 29061 if (element.hasLabelElement()) { 29062 composeString("label", element.getLabelElement()); 29063 } 29064 if (element.hasDescriptionElement()) { 29065 composeString("description", element.getDescriptionElement()); 29066 } 29067 if (element.hasAcceptElement()) 29068 composeEnumeration("accept", element.getAcceptElement(), new TestScript.ContentTypeEnumFactory()); 29069 if (element.hasContentTypeElement()) 29070 composeEnumeration("contentType", element.getContentTypeElement(), new TestScript.ContentTypeEnumFactory()); 29071 if (element.hasDestinationElement()) { 29072 composeInteger("destination", element.getDestinationElement()); 29073 } 29074 if (element.hasEncodeRequestUrlElement()) { 29075 composeBoolean("encodeRequestUrl", element.getEncodeRequestUrlElement()); 29076 } 29077 if (element.hasOriginElement()) { 29078 composeInteger("origin", element.getOriginElement()); 29079 } 29080 if (element.hasParamsElement()) { 29081 composeString("params", element.getParamsElement()); 29082 } 29083 if (element.hasRequestHeader()) { 29084 for (TestScript.SetupActionOperationRequestHeaderComponent e : element.getRequestHeader()) 29085 composeTestScriptSetupActionOperationRequestHeaderComponent("requestHeader", e); 29086 } 29087 if (element.hasResponseIdElement()) { 29088 composeId("responseId", element.getResponseIdElement()); 29089 } 29090 if (element.hasSourceIdElement()) { 29091 composeId("sourceId", element.getSourceIdElement()); 29092 } 29093 if (element.hasTargetIdElement()) { 29094 composeId("targetId", element.getTargetIdElement()); 29095 } 29096 if (element.hasUrlElement()) { 29097 composeString("url", element.getUrlElement()); 29098 } 29099 composeElementClose(element); 29100 xml.exit(FHIR_NS, name); 29101 } 29102 } 29103 29104 protected void composeTestScriptSetupActionOperationRequestHeaderComponent(String name, TestScript.SetupActionOperationRequestHeaderComponent element) throws IOException { 29105 if (element != null) { 29106 composeElementAttributes(element); 29107 xml.enter(FHIR_NS, name); 29108 composeBackboneElements(element); 29109 if (element.hasFieldElement()) { 29110 composeString("field", element.getFieldElement()); 29111 } 29112 if (element.hasValueElement()) { 29113 composeString("value", element.getValueElement()); 29114 } 29115 composeElementClose(element); 29116 xml.exit(FHIR_NS, name); 29117 } 29118 } 29119 29120 protected void composeTestScriptSetupActionAssertComponent(String name, TestScript.SetupActionAssertComponent element) throws IOException { 29121 if (element != null) { 29122 composeElementAttributes(element); 29123 xml.enter(FHIR_NS, name); 29124 composeBackboneElements(element); 29125 if (element.hasLabelElement()) { 29126 composeString("label", element.getLabelElement()); 29127 } 29128 if (element.hasDescriptionElement()) { 29129 composeString("description", element.getDescriptionElement()); 29130 } 29131 if (element.hasDirectionElement()) 29132 composeEnumeration("direction", element.getDirectionElement(), new TestScript.AssertionDirectionTypeEnumFactory()); 29133 if (element.hasCompareToSourceIdElement()) { 29134 composeString("compareToSourceId", element.getCompareToSourceIdElement()); 29135 } 29136 if (element.hasCompareToSourcePathElement()) { 29137 composeString("compareToSourcePath", element.getCompareToSourcePathElement()); 29138 } 29139 if (element.hasContentTypeElement()) 29140 composeEnumeration("contentType", element.getContentTypeElement(), new TestScript.ContentTypeEnumFactory()); 29141 if (element.hasHeaderFieldElement()) { 29142 composeString("headerField", element.getHeaderFieldElement()); 29143 } 29144 if (element.hasMinimumIdElement()) { 29145 composeString("minimumId", element.getMinimumIdElement()); 29146 } 29147 if (element.hasNavigationLinksElement()) { 29148 composeBoolean("navigationLinks", element.getNavigationLinksElement()); 29149 } 29150 if (element.hasOperatorElement()) 29151 composeEnumeration("operator", element.getOperatorElement(), new TestScript.AssertionOperatorTypeEnumFactory()); 29152 if (element.hasPathElement()) { 29153 composeString("path", element.getPathElement()); 29154 } 29155 if (element.hasResourceElement()) { 29156 composeCode("resource", element.getResourceElement()); 29157 } 29158 if (element.hasResponseElement()) 29159 composeEnumeration("response", element.getResponseElement(), new TestScript.AssertionResponseTypesEnumFactory()); 29160 if (element.hasResponseCodeElement()) { 29161 composeString("responseCode", element.getResponseCodeElement()); 29162 } 29163 if (element.hasRule()) { 29164 composeTestScriptSetupActionAssertRuleComponent("rule", element.getRule()); 29165 } 29166 if (element.hasRuleset()) { 29167 composeTestScriptSetupActionAssertRulesetComponent("ruleset", element.getRuleset()); 29168 } 29169 if (element.hasSourceIdElement()) { 29170 composeId("sourceId", element.getSourceIdElement()); 29171 } 29172 if (element.hasValidateProfileIdElement()) { 29173 composeId("validateProfileId", element.getValidateProfileIdElement()); 29174 } 29175 if (element.hasValueElement()) { 29176 composeString("value", element.getValueElement()); 29177 } 29178 if (element.hasWarningOnlyElement()) { 29179 composeBoolean("warningOnly", element.getWarningOnlyElement()); 29180 } 29181 composeElementClose(element); 29182 xml.exit(FHIR_NS, name); 29183 } 29184 } 29185 29186 protected void composeTestScriptSetupActionAssertRuleComponent(String name, TestScript.SetupActionAssertRuleComponent element) throws IOException { 29187 if (element != null) { 29188 composeElementAttributes(element); 29189 xml.enter(FHIR_NS, name); 29190 composeBackboneElements(element); 29191 if (element.hasRuleIdElement()) { 29192 composeId("ruleId", element.getRuleIdElement()); 29193 } 29194 if (element.hasParam()) { 29195 for (TestScript.SetupActionAssertRuleParamComponent e : element.getParam()) 29196 composeTestScriptSetupActionAssertRuleParamComponent("param", e); 29197 } 29198 composeElementClose(element); 29199 xml.exit(FHIR_NS, name); 29200 } 29201 } 29202 29203 protected void composeTestScriptSetupActionAssertRuleParamComponent(String name, TestScript.SetupActionAssertRuleParamComponent element) throws IOException { 29204 if (element != null) { 29205 composeElementAttributes(element); 29206 xml.enter(FHIR_NS, name); 29207 composeBackboneElements(element); 29208 if (element.hasNameElement()) { 29209 composeString("name", element.getNameElement()); 29210 } 29211 if (element.hasValueElement()) { 29212 composeString("value", element.getValueElement()); 29213 } 29214 composeElementClose(element); 29215 xml.exit(FHIR_NS, name); 29216 } 29217 } 29218 29219 protected void composeTestScriptSetupActionAssertRulesetComponent(String name, TestScript.SetupActionAssertRulesetComponent element) throws IOException { 29220 if (element != null) { 29221 composeElementAttributes(element); 29222 xml.enter(FHIR_NS, name); 29223 composeBackboneElements(element); 29224 if (element.hasRulesetIdElement()) { 29225 composeId("rulesetId", element.getRulesetIdElement()); 29226 } 29227 if (element.hasRule()) { 29228 for (TestScript.SetupActionAssertRulesetRuleComponent e : element.getRule()) 29229 composeTestScriptSetupActionAssertRulesetRuleComponent("rule", e); 29230 } 29231 composeElementClose(element); 29232 xml.exit(FHIR_NS, name); 29233 } 29234 } 29235 29236 protected void composeTestScriptSetupActionAssertRulesetRuleComponent(String name, TestScript.SetupActionAssertRulesetRuleComponent element) throws IOException { 29237 if (element != null) { 29238 composeElementAttributes(element); 29239 xml.enter(FHIR_NS, name); 29240 composeBackboneElements(element); 29241 if (element.hasRuleIdElement()) { 29242 composeId("ruleId", element.getRuleIdElement()); 29243 } 29244 if (element.hasParam()) { 29245 for (TestScript.SetupActionAssertRulesetRuleParamComponent e : element.getParam()) 29246 composeTestScriptSetupActionAssertRulesetRuleParamComponent("param", e); 29247 } 29248 composeElementClose(element); 29249 xml.exit(FHIR_NS, name); 29250 } 29251 } 29252 29253 protected void composeTestScriptSetupActionAssertRulesetRuleParamComponent(String name, TestScript.SetupActionAssertRulesetRuleParamComponent element) throws IOException { 29254 if (element != null) { 29255 composeElementAttributes(element); 29256 xml.enter(FHIR_NS, name); 29257 composeBackboneElements(element); 29258 if (element.hasNameElement()) { 29259 composeString("name", element.getNameElement()); 29260 } 29261 if (element.hasValueElement()) { 29262 composeString("value", element.getValueElement()); 29263 } 29264 composeElementClose(element); 29265 xml.exit(FHIR_NS, name); 29266 } 29267 } 29268 29269 protected void composeTestScriptTestScriptTestComponent(String name, TestScript.TestScriptTestComponent element) throws IOException { 29270 if (element != null) { 29271 composeElementAttributes(element); 29272 xml.enter(FHIR_NS, name); 29273 composeBackboneElements(element); 29274 if (element.hasNameElement()) { 29275 composeString("name", element.getNameElement()); 29276 } 29277 if (element.hasDescriptionElement()) { 29278 composeString("description", element.getDescriptionElement()); 29279 } 29280 if (element.hasMetadata()) { 29281 composeTestScriptTestScriptMetadataComponent("metadata", element.getMetadata()); 29282 } 29283 if (element.hasAction()) { 29284 for (TestScript.TestActionComponent e : element.getAction()) 29285 composeTestScriptTestActionComponent("action", e); 29286 } 29287 composeElementClose(element); 29288 xml.exit(FHIR_NS, name); 29289 } 29290 } 29291 29292 protected void composeTestScriptTestActionComponent(String name, TestScript.TestActionComponent element) throws IOException { 29293 if (element != null) { 29294 composeElementAttributes(element); 29295 xml.enter(FHIR_NS, name); 29296 composeBackboneElements(element); 29297 if (element.hasOperation()) { 29298 composeTestScriptSetupActionOperationComponent("operation", element.getOperation()); 29299 } 29300 if (element.hasAssert()) { 29301 composeTestScriptSetupActionAssertComponent("assert", element.getAssert()); 29302 } 29303 composeElementClose(element); 29304 xml.exit(FHIR_NS, name); 29305 } 29306 } 29307 29308 protected void composeTestScriptTestScriptTeardownComponent(String name, TestScript.TestScriptTeardownComponent element) throws IOException { 29309 if (element != null) { 29310 composeElementAttributes(element); 29311 xml.enter(FHIR_NS, name); 29312 composeBackboneElements(element); 29313 if (element.hasAction()) { 29314 for (TestScript.TeardownActionComponent e : element.getAction()) 29315 composeTestScriptTeardownActionComponent("action", e); 29316 } 29317 composeElementClose(element); 29318 xml.exit(FHIR_NS, name); 29319 } 29320 } 29321 29322 protected void composeTestScriptTeardownActionComponent(String name, TestScript.TeardownActionComponent element) throws IOException { 29323 if (element != null) { 29324 composeElementAttributes(element); 29325 xml.enter(FHIR_NS, name); 29326 composeBackboneElements(element); 29327 if (element.hasOperation()) { 29328 composeTestScriptSetupActionOperationComponent("operation", element.getOperation()); 29329 } 29330 composeElementClose(element); 29331 xml.exit(FHIR_NS, name); 29332 } 29333 } 29334 29335 protected void composeValueSet(String name, ValueSet element) throws IOException { 29336 if (element != null) { 29337 composeDomainResourceAttributes(element); 29338 xml.enter(FHIR_NS, name); 29339 composeDomainResourceElements(element); 29340 if (element.hasUrlElement()) { 29341 composeUri("url", element.getUrlElement()); 29342 } 29343 if (element.hasIdentifier()) { 29344 composeIdentifier("identifier", element.getIdentifier()); 29345 } 29346 if (element.hasVersionElement()) { 29347 composeString("version", element.getVersionElement()); 29348 } 29349 if (element.hasNameElement()) { 29350 composeString("name", element.getNameElement()); 29351 } 29352 if (element.hasStatusElement()) 29353 composeEnumeration("status", element.getStatusElement(), new Enumerations.ConformanceResourceStatusEnumFactory()); 29354 if (element.hasExperimentalElement()) { 29355 composeBoolean("experimental", element.getExperimentalElement()); 29356 } 29357 if (element.hasPublisherElement()) { 29358 composeString("publisher", element.getPublisherElement()); 29359 } 29360 if (element.hasContact()) { 29361 for (ValueSet.ValueSetContactComponent e : element.getContact()) 29362 composeValueSetValueSetContactComponent("contact", e); 29363 } 29364 if (element.hasDateElement()) { 29365 composeDateTime("date", element.getDateElement()); 29366 } 29367 if (element.hasLockedDateElement()) { 29368 composeDate("lockedDate", element.getLockedDateElement()); 29369 } 29370 if (element.hasDescriptionElement()) { 29371 composeString("description", element.getDescriptionElement()); 29372 } 29373 if (element.hasUseContext()) { 29374 for (CodeableConcept e : element.getUseContext()) 29375 composeCodeableConcept("useContext", e); 29376 } 29377 if (element.hasImmutableElement()) { 29378 composeBoolean("immutable", element.getImmutableElement()); 29379 } 29380 if (element.hasRequirementsElement()) { 29381 composeString("requirements", element.getRequirementsElement()); 29382 } 29383 if (element.hasCopyrightElement()) { 29384 composeString("copyright", element.getCopyrightElement()); 29385 } 29386 if (element.hasExtensibleElement()) { 29387 composeBoolean("extensible", element.getExtensibleElement()); 29388 } 29389 if (element.hasCompose()) { 29390 composeValueSetValueSetComposeComponent("compose", element.getCompose()); 29391 } 29392 if (element.hasExpansion()) { 29393 composeValueSetValueSetExpansionComponent("expansion", element.getExpansion()); 29394 } 29395 composeElementClose(element); 29396 xml.exit(FHIR_NS, name); 29397 } 29398 } 29399 29400 protected void composeValueSetValueSetContactComponent(String name, ValueSet.ValueSetContactComponent element) throws IOException { 29401 if (element != null) { 29402 composeElementAttributes(element); 29403 xml.enter(FHIR_NS, name); 29404 composeBackboneElements(element); 29405 if (element.hasNameElement()) { 29406 composeString("name", element.getNameElement()); 29407 } 29408 if (element.hasTelecom()) { 29409 for (ContactPoint e : element.getTelecom()) 29410 composeContactPoint("telecom", e); 29411 } 29412 composeElementClose(element); 29413 xml.exit(FHIR_NS, name); 29414 } 29415 } 29416 29417 protected void composeValueSetValueSetComposeComponent(String name, ValueSet.ValueSetComposeComponent element) throws IOException { 29418 if (element != null) { 29419 composeElementAttributes(element); 29420 xml.enter(FHIR_NS, name); 29421 composeBackboneElements(element); 29422 if (element.hasImport()) { 29423 for (UriType e : element.getImport()) 29424 composeUri("import", e); 29425 } 29426 if (element.hasInclude()) { 29427 for (ValueSet.ConceptSetComponent e : element.getInclude()) 29428 composeValueSetConceptSetComponent("include", e); 29429 } 29430 if (element.hasExclude()) { 29431 for (ValueSet.ConceptSetComponent e : element.getExclude()) 29432 composeValueSetConceptSetComponent("exclude", e); 29433 } 29434 composeElementClose(element); 29435 xml.exit(FHIR_NS, name); 29436 } 29437 } 29438 29439 protected void composeValueSetConceptSetComponent(String name, ValueSet.ConceptSetComponent element) throws IOException { 29440 if (element != null) { 29441 composeElementAttributes(element); 29442 xml.enter(FHIR_NS, name); 29443 composeBackboneElements(element); 29444 if (element.hasSystemElement()) { 29445 composeUri("system", element.getSystemElement()); 29446 } 29447 if (element.hasVersionElement()) { 29448 composeString("version", element.getVersionElement()); 29449 } 29450 if (element.hasConcept()) { 29451 for (ValueSet.ConceptReferenceComponent e : element.getConcept()) 29452 composeValueSetConceptReferenceComponent("concept", e); 29453 } 29454 if (element.hasFilter()) { 29455 for (ValueSet.ConceptSetFilterComponent e : element.getFilter()) 29456 composeValueSetConceptSetFilterComponent("filter", e); 29457 } 29458 composeElementClose(element); 29459 xml.exit(FHIR_NS, name); 29460 } 29461 } 29462 29463 protected void composeValueSetConceptReferenceComponent(String name, ValueSet.ConceptReferenceComponent element) throws IOException { 29464 if (element != null) { 29465 composeElementAttributes(element); 29466 xml.enter(FHIR_NS, name); 29467 composeBackboneElements(element); 29468 if (element.hasCodeElement()) { 29469 composeCode("code", element.getCodeElement()); 29470 } 29471 if (element.hasDisplayElement()) { 29472 composeString("display", element.getDisplayElement()); 29473 } 29474 if (element.hasDesignation()) { 29475 for (ValueSet.ConceptReferenceDesignationComponent e : element.getDesignation()) 29476 composeValueSetConceptReferenceDesignationComponent("designation", e); 29477 } 29478 composeElementClose(element); 29479 xml.exit(FHIR_NS, name); 29480 } 29481 } 29482 29483 protected void composeValueSetConceptReferenceDesignationComponent(String name, ValueSet.ConceptReferenceDesignationComponent element) throws IOException { 29484 if (element != null) { 29485 composeElementAttributes(element); 29486 xml.enter(FHIR_NS, name); 29487 composeBackboneElements(element); 29488 if (element.hasLanguageElement()) { 29489 composeCode("language", element.getLanguageElement()); 29490 } 29491 if (element.hasUse()) { 29492 composeCoding("use", element.getUse()); 29493 } 29494 if (element.hasValueElement()) { 29495 composeString("value", element.getValueElement()); 29496 } 29497 composeElementClose(element); 29498 xml.exit(FHIR_NS, name); 29499 } 29500 } 29501 29502 protected void composeValueSetConceptSetFilterComponent(String name, ValueSet.ConceptSetFilterComponent element) throws IOException { 29503 if (element != null) { 29504 composeElementAttributes(element); 29505 xml.enter(FHIR_NS, name); 29506 composeBackboneElements(element); 29507 if (element.hasPropertyElement()) { 29508 composeCode("property", element.getPropertyElement()); 29509 } 29510 if (element.hasOpElement()) 29511 composeEnumeration("op", element.getOpElement(), new ValueSet.FilterOperatorEnumFactory()); 29512 if (element.hasValueElement()) { 29513 composeCode("value", element.getValueElement()); 29514 } 29515 composeElementClose(element); 29516 xml.exit(FHIR_NS, name); 29517 } 29518 } 29519 29520 protected void composeValueSetValueSetExpansionComponent(String name, ValueSet.ValueSetExpansionComponent element) throws IOException { 29521 if (element != null) { 29522 composeElementAttributes(element); 29523 xml.enter(FHIR_NS, name); 29524 composeBackboneElements(element); 29525 if (element.hasIdentifierElement()) { 29526 composeUri("identifier", element.getIdentifierElement()); 29527 } 29528 if (element.hasTimestampElement()) { 29529 composeDateTime("timestamp", element.getTimestampElement()); 29530 } 29531 if (element.hasTotalElement()) { 29532 composeInteger("total", element.getTotalElement()); 29533 } 29534 if (element.hasOffsetElement()) { 29535 composeInteger("offset", element.getOffsetElement()); 29536 } 29537 if (element.hasParameter()) { 29538 for (ValueSet.ValueSetExpansionParameterComponent e : element.getParameter()) 29539 composeValueSetValueSetExpansionParameterComponent("parameter", e); 29540 } 29541 if (element.hasContains()) { 29542 for (ValueSet.ValueSetExpansionContainsComponent e : element.getContains()) 29543 composeValueSetValueSetExpansionContainsComponent("contains", e); 29544 } 29545 composeElementClose(element); 29546 xml.exit(FHIR_NS, name); 29547 } 29548 } 29549 29550 protected void composeValueSetValueSetExpansionParameterComponent(String name, ValueSet.ValueSetExpansionParameterComponent element) throws IOException { 29551 if (element != null) { 29552 composeElementAttributes(element); 29553 xml.enter(FHIR_NS, name); 29554 composeBackboneElements(element); 29555 if (element.hasNameElement()) { 29556 composeString("name", element.getNameElement()); 29557 } 29558 if (element.hasValue()) { 29559 composeType("value", element.getValue()); 29560 } composeElementClose(element); 29561 xml.exit(FHIR_NS, name); 29562 } 29563 } 29564 29565 protected void composeValueSetValueSetExpansionContainsComponent(String name, ValueSet.ValueSetExpansionContainsComponent element) throws IOException { 29566 if (element != null) { 29567 composeElementAttributes(element); 29568 xml.enter(FHIR_NS, name); 29569 composeBackboneElements(element); 29570 if (element.hasSystemElement()) { 29571 composeUri("system", element.getSystemElement()); 29572 } 29573 if (element.hasAbstractElement()) { 29574 composeBoolean("abstract", element.getAbstractElement()); 29575 } 29576 if (element.hasVersionElement()) { 29577 composeString("version", element.getVersionElement()); 29578 } 29579 if (element.hasCodeElement()) { 29580 composeCode("code", element.getCodeElement()); 29581 } 29582 if (element.hasDisplayElement()) { 29583 composeString("display", element.getDisplayElement()); 29584 } 29585 if (element.hasContains()) { 29586 for (ValueSet.ValueSetExpansionContainsComponent e : element.getContains()) 29587 composeValueSetValueSetExpansionContainsComponent("contains", e); 29588 } 29589 composeElementClose(element); 29590 xml.exit(FHIR_NS, name); 29591 } 29592 } 29593 29594 protected void composeVisionPrescription(String name, VisionPrescription element) throws IOException { 29595 if (element != null) { 29596 composeDomainResourceAttributes(element); 29597 xml.enter(FHIR_NS, name); 29598 composeDomainResourceElements(element); 29599 if (element.hasIdentifier()) { 29600 for (Identifier e : element.getIdentifier()) 29601 composeIdentifier("identifier", e); 29602 } 29603 if (element.hasDateWrittenElement()) { 29604 composeDateTime("dateWritten", element.getDateWrittenElement()); 29605 } 29606 if (element.hasPatient()) { 29607 composeReference("patient", element.getPatient()); 29608 } 29609 if (element.hasPrescriber()) { 29610 composeReference("prescriber", element.getPrescriber()); 29611 } 29612 if (element.hasEncounter()) { 29613 composeReference("encounter", element.getEncounter()); 29614 } 29615 if (element.hasReason()) { 29616 composeType("reason", element.getReason()); 29617 } if (element.hasDispense()) { 29618 for (VisionPrescription.VisionPrescriptionDispenseComponent e : element.getDispense()) 29619 composeVisionPrescriptionVisionPrescriptionDispenseComponent("dispense", e); 29620 } 29621 composeElementClose(element); 29622 xml.exit(FHIR_NS, name); 29623 } 29624 } 29625 29626 protected void composeVisionPrescriptionVisionPrescriptionDispenseComponent(String name, VisionPrescription.VisionPrescriptionDispenseComponent element) throws IOException { 29627 if (element != null) { 29628 composeElementAttributes(element); 29629 xml.enter(FHIR_NS, name); 29630 composeBackboneElements(element); 29631 if (element.hasProduct()) { 29632 composeCoding("product", element.getProduct()); 29633 } 29634 if (element.hasEyeElement()) 29635 composeEnumeration("eye", element.getEyeElement(), new VisionPrescription.VisionEyesEnumFactory()); 29636 if (element.hasSphereElement()) { 29637 composeDecimal("sphere", element.getSphereElement()); 29638 } 29639 if (element.hasCylinderElement()) { 29640 composeDecimal("cylinder", element.getCylinderElement()); 29641 } 29642 if (element.hasAxisElement()) { 29643 composeInteger("axis", element.getAxisElement()); 29644 } 29645 if (element.hasPrismElement()) { 29646 composeDecimal("prism", element.getPrismElement()); 29647 } 29648 if (element.hasBaseElement()) 29649 composeEnumeration("base", element.getBaseElement(), new VisionPrescription.VisionBaseEnumFactory()); 29650 if (element.hasAddElement()) { 29651 composeDecimal("add", element.getAddElement()); 29652 } 29653 if (element.hasPowerElement()) { 29654 composeDecimal("power", element.getPowerElement()); 29655 } 29656 if (element.hasBackCurveElement()) { 29657 composeDecimal("backCurve", element.getBackCurveElement()); 29658 } 29659 if (element.hasDiameterElement()) { 29660 composeDecimal("diameter", element.getDiameterElement()); 29661 } 29662 if (element.hasDuration()) { 29663 composeSimpleQuantity("duration", element.getDuration()); 29664 } 29665 if (element.hasColorElement()) { 29666 composeString("color", element.getColorElement()); 29667 } 29668 if (element.hasBrandElement()) { 29669 composeString("brand", element.getBrandElement()); 29670 } 29671 if (element.hasNotesElement()) { 29672 composeString("notes", element.getNotesElement()); 29673 } 29674 composeElementClose(element); 29675 xml.exit(FHIR_NS, name); 29676 } 29677 } 29678 29679 @Override 29680 protected void composeResource(Resource resource) throws IOException { 29681 if (resource instanceof Parameters) 29682 composeParameters("Parameters", (Parameters)resource); 29683 else if (resource instanceof Account) 29684 composeAccount("Account", (Account)resource); 29685 else if (resource instanceof AllergyIntolerance) 29686 composeAllergyIntolerance("AllergyIntolerance", (AllergyIntolerance)resource); 29687 else if (resource instanceof Appointment) 29688 composeAppointment("Appointment", (Appointment)resource); 29689 else if (resource instanceof AppointmentResponse) 29690 composeAppointmentResponse("AppointmentResponse", (AppointmentResponse)resource); 29691 else if (resource instanceof AuditEvent) 29692 composeAuditEvent("AuditEvent", (AuditEvent)resource); 29693 else if (resource instanceof Basic) 29694 composeBasic("Basic", (Basic)resource); 29695 else if (resource instanceof Binary) 29696 composeBinary("Binary", (Binary)resource); 29697 else if (resource instanceof BodySite) 29698 composeBodySite("BodySite", (BodySite)resource); 29699 else if (resource instanceof Bundle) 29700 composeBundle("Bundle", (Bundle)resource); 29701 else if (resource instanceof CarePlan) 29702 composeCarePlan("CarePlan", (CarePlan)resource); 29703 else if (resource instanceof CareTeam) 29704 composeCareTeam("CareTeam", (CareTeam)resource); 29705 else if (resource instanceof Claim) 29706 composeClaim("Claim", (Claim)resource); 29707 else if (resource instanceof ClaimResponse) 29708 composeClaimResponse("ClaimResponse", (ClaimResponse)resource); 29709 else if (resource instanceof ClinicalImpression) 29710 composeClinicalImpression("ClinicalImpression", (ClinicalImpression)resource); 29711 else if (resource instanceof CodeSystem) 29712 composeCodeSystem("CodeSystem", (CodeSystem)resource); 29713 else if (resource instanceof Communication) 29714 composeCommunication("Communication", (Communication)resource); 29715 else if (resource instanceof CommunicationRequest) 29716 composeCommunicationRequest("CommunicationRequest", (CommunicationRequest)resource); 29717 else if (resource instanceof CompartmentDefinition) 29718 composeCompartmentDefinition("CompartmentDefinition", (CompartmentDefinition)resource); 29719 else if (resource instanceof Composition) 29720 composeComposition("Composition", (Composition)resource); 29721 else if (resource instanceof ConceptMap) 29722 composeConceptMap("ConceptMap", (ConceptMap)resource); 29723 else if (resource instanceof Condition) 29724 composeCondition("Condition", (Condition)resource); 29725 else if (resource instanceof Conformance) 29726 composeConformance("Conformance", (Conformance)resource); 29727 else if (resource instanceof Contract) 29728 composeContract("Contract", (Contract)resource); 29729 else if (resource instanceof Coverage) 29730 composeCoverage("Coverage", (Coverage)resource); 29731 else if (resource instanceof DataElement) 29732 composeDataElement("DataElement", (DataElement)resource); 29733 else if (resource instanceof DecisionSupportRule) 29734 composeDecisionSupportRule("DecisionSupportRule", (DecisionSupportRule)resource); 29735 else if (resource instanceof DecisionSupportServiceModule) 29736 composeDecisionSupportServiceModule("DecisionSupportServiceModule", (DecisionSupportServiceModule)resource); 29737 else if (resource instanceof DetectedIssue) 29738 composeDetectedIssue("DetectedIssue", (DetectedIssue)resource); 29739 else if (resource instanceof Device) 29740 composeDevice("Device", (Device)resource); 29741 else if (resource instanceof DeviceComponent) 29742 composeDeviceComponent("DeviceComponent", (DeviceComponent)resource); 29743 else if (resource instanceof DeviceMetric) 29744 composeDeviceMetric("DeviceMetric", (DeviceMetric)resource); 29745 else if (resource instanceof DeviceUseRequest) 29746 composeDeviceUseRequest("DeviceUseRequest", (DeviceUseRequest)resource); 29747 else if (resource instanceof DeviceUseStatement) 29748 composeDeviceUseStatement("DeviceUseStatement", (DeviceUseStatement)resource); 29749 else if (resource instanceof DiagnosticOrder) 29750 composeDiagnosticOrder("DiagnosticOrder", (DiagnosticOrder)resource); 29751 else if (resource instanceof DiagnosticReport) 29752 composeDiagnosticReport("DiagnosticReport", (DiagnosticReport)resource); 29753 else if (resource instanceof DocumentManifest) 29754 composeDocumentManifest("DocumentManifest", (DocumentManifest)resource); 29755 else if (resource instanceof DocumentReference) 29756 composeDocumentReference("DocumentReference", (DocumentReference)resource); 29757 else if (resource instanceof EligibilityRequest) 29758 composeEligibilityRequest("EligibilityRequest", (EligibilityRequest)resource); 29759 else if (resource instanceof EligibilityResponse) 29760 composeEligibilityResponse("EligibilityResponse", (EligibilityResponse)resource); 29761 else if (resource instanceof Encounter) 29762 composeEncounter("Encounter", (Encounter)resource); 29763 else if (resource instanceof EnrollmentRequest) 29764 composeEnrollmentRequest("EnrollmentRequest", (EnrollmentRequest)resource); 29765 else if (resource instanceof EnrollmentResponse) 29766 composeEnrollmentResponse("EnrollmentResponse", (EnrollmentResponse)resource); 29767 else if (resource instanceof EpisodeOfCare) 29768 composeEpisodeOfCare("EpisodeOfCare", (EpisodeOfCare)resource); 29769 else if (resource instanceof ExpansionProfile) 29770 composeExpansionProfile("ExpansionProfile", (ExpansionProfile)resource); 29771 else if (resource instanceof ExplanationOfBenefit) 29772 composeExplanationOfBenefit("ExplanationOfBenefit", (ExplanationOfBenefit)resource); 29773 else if (resource instanceof FamilyMemberHistory) 29774 composeFamilyMemberHistory("FamilyMemberHistory", (FamilyMemberHistory)resource); 29775 else if (resource instanceof Flag) 29776 composeFlag("Flag", (Flag)resource); 29777 else if (resource instanceof Goal) 29778 composeGoal("Goal", (Goal)resource); 29779 else if (resource instanceof Group) 29780 composeGroup("Group", (Group)resource); 29781 else if (resource instanceof GuidanceResponse) 29782 composeGuidanceResponse("GuidanceResponse", (GuidanceResponse)resource); 29783 else if (resource instanceof HealthcareService) 29784 composeHealthcareService("HealthcareService", (HealthcareService)resource); 29785 else if (resource instanceof ImagingExcerpt) 29786 composeImagingExcerpt("ImagingExcerpt", (ImagingExcerpt)resource); 29787 else if (resource instanceof ImagingObjectSelection) 29788 composeImagingObjectSelection("ImagingObjectSelection", (ImagingObjectSelection)resource); 29789 else if (resource instanceof ImagingStudy) 29790 composeImagingStudy("ImagingStudy", (ImagingStudy)resource); 29791 else if (resource instanceof Immunization) 29792 composeImmunization("Immunization", (Immunization)resource); 29793 else if (resource instanceof ImmunizationRecommendation) 29794 composeImmunizationRecommendation("ImmunizationRecommendation", (ImmunizationRecommendation)resource); 29795 else if (resource instanceof ImplementationGuide) 29796 composeImplementationGuide("ImplementationGuide", (ImplementationGuide)resource); 29797 else if (resource instanceof Library) 29798 composeLibrary("Library", (Library)resource); 29799 else if (resource instanceof Linkage) 29800 composeLinkage("Linkage", (Linkage)resource); 29801 else if (resource instanceof ListResource) 29802 composeListResource("List", (ListResource)resource); 29803 else if (resource instanceof Location) 29804 composeLocation("Location", (Location)resource); 29805 else if (resource instanceof Measure) 29806 composeMeasure("Measure", (Measure)resource); 29807 else if (resource instanceof MeasureReport) 29808 composeMeasureReport("MeasureReport", (MeasureReport)resource); 29809 else if (resource instanceof Media) 29810 composeMedia("Media", (Media)resource); 29811 else if (resource instanceof Medication) 29812 composeMedication("Medication", (Medication)resource); 29813 else if (resource instanceof MedicationAdministration) 29814 composeMedicationAdministration("MedicationAdministration", (MedicationAdministration)resource); 29815 else if (resource instanceof MedicationDispense) 29816 composeMedicationDispense("MedicationDispense", (MedicationDispense)resource); 29817 else if (resource instanceof MedicationOrder) 29818 composeMedicationOrder("MedicationOrder", (MedicationOrder)resource); 29819 else if (resource instanceof MedicationStatement) 29820 composeMedicationStatement("MedicationStatement", (MedicationStatement)resource); 29821 else if (resource instanceof MessageHeader) 29822 composeMessageHeader("MessageHeader", (MessageHeader)resource); 29823 else if (resource instanceof ModuleDefinition) 29824 composeModuleDefinition("ModuleDefinition", (ModuleDefinition)resource); 29825 else if (resource instanceof NamingSystem) 29826 composeNamingSystem("NamingSystem", (NamingSystem)resource); 29827 else if (resource instanceof NutritionOrder) 29828 composeNutritionOrder("NutritionOrder", (NutritionOrder)resource); 29829 else if (resource instanceof Observation) 29830 composeObservation("Observation", (Observation)resource); 29831 else if (resource instanceof OperationDefinition) 29832 composeOperationDefinition("OperationDefinition", (OperationDefinition)resource); 29833 else if (resource instanceof OperationOutcome) 29834 composeOperationOutcome("OperationOutcome", (OperationOutcome)resource); 29835 else if (resource instanceof Order) 29836 composeOrder("Order", (Order)resource); 29837 else if (resource instanceof OrderResponse) 29838 composeOrderResponse("OrderResponse", (OrderResponse)resource); 29839 else if (resource instanceof OrderSet) 29840 composeOrderSet("OrderSet", (OrderSet)resource); 29841 else if (resource instanceof Organization) 29842 composeOrganization("Organization", (Organization)resource); 29843 else if (resource instanceof Patient) 29844 composePatient("Patient", (Patient)resource); 29845 else if (resource instanceof PaymentNotice) 29846 composePaymentNotice("PaymentNotice", (PaymentNotice)resource); 29847 else if (resource instanceof PaymentReconciliation) 29848 composePaymentReconciliation("PaymentReconciliation", (PaymentReconciliation)resource); 29849 else if (resource instanceof Person) 29850 composePerson("Person", (Person)resource); 29851 else if (resource instanceof Practitioner) 29852 composePractitioner("Practitioner", (Practitioner)resource); 29853 else if (resource instanceof PractitionerRole) 29854 composePractitionerRole("PractitionerRole", (PractitionerRole)resource); 29855 else if (resource instanceof Procedure) 29856 composeProcedure("Procedure", (Procedure)resource); 29857 else if (resource instanceof ProcedureRequest) 29858 composeProcedureRequest("ProcedureRequest", (ProcedureRequest)resource); 29859 else if (resource instanceof ProcessRequest) 29860 composeProcessRequest("ProcessRequest", (ProcessRequest)resource); 29861 else if (resource instanceof ProcessResponse) 29862 composeProcessResponse("ProcessResponse", (ProcessResponse)resource); 29863 else if (resource instanceof Protocol) 29864 composeProtocol("Protocol", (Protocol)resource); 29865 else if (resource instanceof Provenance) 29866 composeProvenance("Provenance", (Provenance)resource); 29867 else if (resource instanceof Questionnaire) 29868 composeQuestionnaire("Questionnaire", (Questionnaire)resource); 29869 else if (resource instanceof QuestionnaireResponse) 29870 composeQuestionnaireResponse("QuestionnaireResponse", (QuestionnaireResponse)resource); 29871 else if (resource instanceof ReferralRequest) 29872 composeReferralRequest("ReferralRequest", (ReferralRequest)resource); 29873 else if (resource instanceof RelatedPerson) 29874 composeRelatedPerson("RelatedPerson", (RelatedPerson)resource); 29875 else if (resource instanceof RiskAssessment) 29876 composeRiskAssessment("RiskAssessment", (RiskAssessment)resource); 29877 else if (resource instanceof Schedule) 29878 composeSchedule("Schedule", (Schedule)resource); 29879 else if (resource instanceof SearchParameter) 29880 composeSearchParameter("SearchParameter", (SearchParameter)resource); 29881 else if (resource instanceof Sequence) 29882 composeSequence("Sequence", (Sequence)resource); 29883 else if (resource instanceof Slot) 29884 composeSlot("Slot", (Slot)resource); 29885 else if (resource instanceof Specimen) 29886 composeSpecimen("Specimen", (Specimen)resource); 29887 else if (resource instanceof StructureDefinition) 29888 composeStructureDefinition("StructureDefinition", (StructureDefinition)resource); 29889 else if (resource instanceof StructureMap) 29890 composeStructureMap("StructureMap", (StructureMap)resource); 29891 else if (resource instanceof Subscription) 29892 composeSubscription("Subscription", (Subscription)resource); 29893 else if (resource instanceof Substance) 29894 composeSubstance("Substance", (Substance)resource); 29895 else if (resource instanceof SupplyDelivery) 29896 composeSupplyDelivery("SupplyDelivery", (SupplyDelivery)resource); 29897 else if (resource instanceof SupplyRequest) 29898 composeSupplyRequest("SupplyRequest", (SupplyRequest)resource); 29899 else if (resource instanceof Task) 29900 composeTask("Task", (Task)resource); 29901 else if (resource instanceof TestScript) 29902 composeTestScript("TestScript", (TestScript)resource); 29903 else if (resource instanceof ValueSet) 29904 composeValueSet("ValueSet", (ValueSet)resource); 29905 else if (resource instanceof VisionPrescription) 29906 composeVisionPrescription("VisionPrescription", (VisionPrescription)resource); 29907 else if (resource instanceof Binary) 29908 composeBinary("Binary", (Binary)resource); 29909 else 29910 throw new Error("Unhandled resource type "+resource.getClass().getName()); 29911 } 29912 29913 protected void composeResource(String name, Resource resource) throws IOException { 29914 if (resource instanceof Parameters) 29915 composeParameters(name, (Parameters)resource); 29916 else if (resource instanceof Account) 29917 composeAccount(name, (Account)resource); 29918 else if (resource instanceof AllergyIntolerance) 29919 composeAllergyIntolerance(name, (AllergyIntolerance)resource); 29920 else if (resource instanceof Appointment) 29921 composeAppointment(name, (Appointment)resource); 29922 else if (resource instanceof AppointmentResponse) 29923 composeAppointmentResponse(name, (AppointmentResponse)resource); 29924 else if (resource instanceof AuditEvent) 29925 composeAuditEvent(name, (AuditEvent)resource); 29926 else if (resource instanceof Basic) 29927 composeBasic(name, (Basic)resource); 29928 else if (resource instanceof Binary) 29929 composeBinary(name, (Binary)resource); 29930 else if (resource instanceof BodySite) 29931 composeBodySite(name, (BodySite)resource); 29932 else if (resource instanceof Bundle) 29933 composeBundle(name, (Bundle)resource); 29934 else if (resource instanceof CarePlan) 29935 composeCarePlan(name, (CarePlan)resource); 29936 else if (resource instanceof CareTeam) 29937 composeCareTeam(name, (CareTeam)resource); 29938 else if (resource instanceof Claim) 29939 composeClaim(name, (Claim)resource); 29940 else if (resource instanceof ClaimResponse) 29941 composeClaimResponse(name, (ClaimResponse)resource); 29942 else if (resource instanceof ClinicalImpression) 29943 composeClinicalImpression(name, (ClinicalImpression)resource); 29944 else if (resource instanceof CodeSystem) 29945 composeCodeSystem(name, (CodeSystem)resource); 29946 else if (resource instanceof Communication) 29947 composeCommunication(name, (Communication)resource); 29948 else if (resource instanceof CommunicationRequest) 29949 composeCommunicationRequest(name, (CommunicationRequest)resource); 29950 else if (resource instanceof CompartmentDefinition) 29951 composeCompartmentDefinition(name, (CompartmentDefinition)resource); 29952 else if (resource instanceof Composition) 29953 composeComposition(name, (Composition)resource); 29954 else if (resource instanceof ConceptMap) 29955 composeConceptMap(name, (ConceptMap)resource); 29956 else if (resource instanceof Condition) 29957 composeCondition(name, (Condition)resource); 29958 else if (resource instanceof Conformance) 29959 composeConformance(name, (Conformance)resource); 29960 else if (resource instanceof Contract) 29961 composeContract(name, (Contract)resource); 29962 else if (resource instanceof Coverage) 29963 composeCoverage(name, (Coverage)resource); 29964 else if (resource instanceof DataElement) 29965 composeDataElement(name, (DataElement)resource); 29966 else if (resource instanceof DecisionSupportRule) 29967 composeDecisionSupportRule(name, (DecisionSupportRule)resource); 29968 else if (resource instanceof DecisionSupportServiceModule) 29969 composeDecisionSupportServiceModule(name, (DecisionSupportServiceModule)resource); 29970 else if (resource instanceof DetectedIssue) 29971 composeDetectedIssue(name, (DetectedIssue)resource); 29972 else if (resource instanceof Device) 29973 composeDevice(name, (Device)resource); 29974 else if (resource instanceof DeviceComponent) 29975 composeDeviceComponent(name, (DeviceComponent)resource); 29976 else if (resource instanceof DeviceMetric) 29977 composeDeviceMetric(name, (DeviceMetric)resource); 29978 else if (resource instanceof DeviceUseRequest) 29979 composeDeviceUseRequest(name, (DeviceUseRequest)resource); 29980 else if (resource instanceof DeviceUseStatement) 29981 composeDeviceUseStatement(name, (DeviceUseStatement)resource); 29982 else if (resource instanceof DiagnosticOrder) 29983 composeDiagnosticOrder(name, (DiagnosticOrder)resource); 29984 else if (resource instanceof DiagnosticReport) 29985 composeDiagnosticReport(name, (DiagnosticReport)resource); 29986 else if (resource instanceof DocumentManifest) 29987 composeDocumentManifest(name, (DocumentManifest)resource); 29988 else if (resource instanceof DocumentReference) 29989 composeDocumentReference(name, (DocumentReference)resource); 29990 else if (resource instanceof EligibilityRequest) 29991 composeEligibilityRequest(name, (EligibilityRequest)resource); 29992 else if (resource instanceof EligibilityResponse) 29993 composeEligibilityResponse(name, (EligibilityResponse)resource); 29994 else if (resource instanceof Encounter) 29995 composeEncounter(name, (Encounter)resource); 29996 else if (resource instanceof EnrollmentRequest) 29997 composeEnrollmentRequest(name, (EnrollmentRequest)resource); 29998 else if (resource instanceof EnrollmentResponse) 29999 composeEnrollmentResponse(name, (EnrollmentResponse)resource); 30000 else if (resource instanceof EpisodeOfCare) 30001 composeEpisodeOfCare(name, (EpisodeOfCare)resource); 30002 else if (resource instanceof ExpansionProfile) 30003 composeExpansionProfile(name, (ExpansionProfile)resource); 30004 else if (resource instanceof ExplanationOfBenefit) 30005 composeExplanationOfBenefit(name, (ExplanationOfBenefit)resource); 30006 else if (resource instanceof FamilyMemberHistory) 30007 composeFamilyMemberHistory(name, (FamilyMemberHistory)resource); 30008 else if (resource instanceof Flag) 30009 composeFlag(name, (Flag)resource); 30010 else if (resource instanceof Goal) 30011 composeGoal(name, (Goal)resource); 30012 else if (resource instanceof Group) 30013 composeGroup(name, (Group)resource); 30014 else if (resource instanceof GuidanceResponse) 30015 composeGuidanceResponse(name, (GuidanceResponse)resource); 30016 else if (resource instanceof HealthcareService) 30017 composeHealthcareService(name, (HealthcareService)resource); 30018 else if (resource instanceof ImagingExcerpt) 30019 composeImagingExcerpt(name, (ImagingExcerpt)resource); 30020 else if (resource instanceof ImagingObjectSelection) 30021 composeImagingObjectSelection(name, (ImagingObjectSelection)resource); 30022 else if (resource instanceof ImagingStudy) 30023 composeImagingStudy(name, (ImagingStudy)resource); 30024 else if (resource instanceof Immunization) 30025 composeImmunization(name, (Immunization)resource); 30026 else if (resource instanceof ImmunizationRecommendation) 30027 composeImmunizationRecommendation(name, (ImmunizationRecommendation)resource); 30028 else if (resource instanceof ImplementationGuide) 30029 composeImplementationGuide(name, (ImplementationGuide)resource); 30030 else if (resource instanceof Library) 30031 composeLibrary(name, (Library)resource); 30032 else if (resource instanceof Linkage) 30033 composeLinkage(name, (Linkage)resource); 30034 else if (resource instanceof ListResource) 30035 composeListResource(name, (ListResource)resource); 30036 else if (resource instanceof Location) 30037 composeLocation(name, (Location)resource); 30038 else if (resource instanceof Measure) 30039 composeMeasure(name, (Measure)resource); 30040 else if (resource instanceof MeasureReport) 30041 composeMeasureReport(name, (MeasureReport)resource); 30042 else if (resource instanceof Media) 30043 composeMedia(name, (Media)resource); 30044 else if (resource instanceof Medication) 30045 composeMedication(name, (Medication)resource); 30046 else if (resource instanceof MedicationAdministration) 30047 composeMedicationAdministration(name, (MedicationAdministration)resource); 30048 else if (resource instanceof MedicationDispense) 30049 composeMedicationDispense(name, (MedicationDispense)resource); 30050 else if (resource instanceof MedicationOrder) 30051 composeMedicationOrder(name, (MedicationOrder)resource); 30052 else if (resource instanceof MedicationStatement) 30053 composeMedicationStatement(name, (MedicationStatement)resource); 30054 else if (resource instanceof MessageHeader) 30055 composeMessageHeader(name, (MessageHeader)resource); 30056 else if (resource instanceof ModuleDefinition) 30057 composeModuleDefinition(name, (ModuleDefinition)resource); 30058 else if (resource instanceof NamingSystem) 30059 composeNamingSystem(name, (NamingSystem)resource); 30060 else if (resource instanceof NutritionOrder) 30061 composeNutritionOrder(name, (NutritionOrder)resource); 30062 else if (resource instanceof Observation) 30063 composeObservation(name, (Observation)resource); 30064 else if (resource instanceof OperationDefinition) 30065 composeOperationDefinition(name, (OperationDefinition)resource); 30066 else if (resource instanceof OperationOutcome) 30067 composeOperationOutcome(name, (OperationOutcome)resource); 30068 else if (resource instanceof Order) 30069 composeOrder(name, (Order)resource); 30070 else if (resource instanceof OrderResponse) 30071 composeOrderResponse(name, (OrderResponse)resource); 30072 else if (resource instanceof OrderSet) 30073 composeOrderSet(name, (OrderSet)resource); 30074 else if (resource instanceof Organization) 30075 composeOrganization(name, (Organization)resource); 30076 else if (resource instanceof Patient) 30077 composePatient(name, (Patient)resource); 30078 else if (resource instanceof PaymentNotice) 30079 composePaymentNotice(name, (PaymentNotice)resource); 30080 else if (resource instanceof PaymentReconciliation) 30081 composePaymentReconciliation(name, (PaymentReconciliation)resource); 30082 else if (resource instanceof Person) 30083 composePerson(name, (Person)resource); 30084 else if (resource instanceof Practitioner) 30085 composePractitioner(name, (Practitioner)resource); 30086 else if (resource instanceof PractitionerRole) 30087 composePractitionerRole(name, (PractitionerRole)resource); 30088 else if (resource instanceof Procedure) 30089 composeProcedure(name, (Procedure)resource); 30090 else if (resource instanceof ProcedureRequest) 30091 composeProcedureRequest(name, (ProcedureRequest)resource); 30092 else if (resource instanceof ProcessRequest) 30093 composeProcessRequest(name, (ProcessRequest)resource); 30094 else if (resource instanceof ProcessResponse) 30095 composeProcessResponse(name, (ProcessResponse)resource); 30096 else if (resource instanceof Protocol) 30097 composeProtocol(name, (Protocol)resource); 30098 else if (resource instanceof Provenance) 30099 composeProvenance(name, (Provenance)resource); 30100 else if (resource instanceof Questionnaire) 30101 composeQuestionnaire(name, (Questionnaire)resource); 30102 else if (resource instanceof QuestionnaireResponse) 30103 composeQuestionnaireResponse(name, (QuestionnaireResponse)resource); 30104 else if (resource instanceof ReferralRequest) 30105 composeReferralRequest(name, (ReferralRequest)resource); 30106 else if (resource instanceof RelatedPerson) 30107 composeRelatedPerson(name, (RelatedPerson)resource); 30108 else if (resource instanceof RiskAssessment) 30109 composeRiskAssessment(name, (RiskAssessment)resource); 30110 else if (resource instanceof Schedule) 30111 composeSchedule(name, (Schedule)resource); 30112 else if (resource instanceof SearchParameter) 30113 composeSearchParameter(name, (SearchParameter)resource); 30114 else if (resource instanceof Sequence) 30115 composeSequence(name, (Sequence)resource); 30116 else if (resource instanceof Slot) 30117 composeSlot(name, (Slot)resource); 30118 else if (resource instanceof Specimen) 30119 composeSpecimen(name, (Specimen)resource); 30120 else if (resource instanceof StructureDefinition) 30121 composeStructureDefinition(name, (StructureDefinition)resource); 30122 else if (resource instanceof StructureMap) 30123 composeStructureMap(name, (StructureMap)resource); 30124 else if (resource instanceof Subscription) 30125 composeSubscription(name, (Subscription)resource); 30126 else if (resource instanceof Substance) 30127 composeSubstance(name, (Substance)resource); 30128 else if (resource instanceof SupplyDelivery) 30129 composeSupplyDelivery(name, (SupplyDelivery)resource); 30130 else if (resource instanceof SupplyRequest) 30131 composeSupplyRequest(name, (SupplyRequest)resource); 30132 else if (resource instanceof Task) 30133 composeTask(name, (Task)resource); 30134 else if (resource instanceof TestScript) 30135 composeTestScript(name, (TestScript)resource); 30136 else if (resource instanceof ValueSet) 30137 composeValueSet(name, (ValueSet)resource); 30138 else if (resource instanceof VisionPrescription) 30139 composeVisionPrescription(name, (VisionPrescription)resource); 30140 else if (resource instanceof Binary) 30141 composeBinary(name, (Binary)resource); 30142 else 30143 throw new Error("Unhandled resource type "+resource.getClass().getName()); 30144 } 30145 30146 protected void composeType(String prefix, Type type) throws IOException { 30147 if (type == null) 30148 ; 30149 else if (type instanceof Age) 30150 composeAge(prefix+"Age", (Age) type); 30151 else if (type instanceof Count) 30152 composeCount(prefix+"Count", (Count) type); 30153 else if (type instanceof Money) 30154 composeMoney(prefix+"Money", (Money) type); 30155 else if (type instanceof Distance) 30156 composeDistance(prefix+"Distance", (Distance) type); 30157 else if (type instanceof Duration) 30158 composeDuration(prefix+"Duration", (Duration) type); 30159 else if (type instanceof SimpleQuantity) 30160 composeSimpleQuantity(prefix+"SimpleQuantity", (SimpleQuantity) type); 30161 else if (type instanceof Period) 30162 composePeriod(prefix+"Period", (Period) type); 30163 else if (type instanceof Coding) 30164 composeCoding(prefix+"Coding", (Coding) type); 30165 else if (type instanceof Range) 30166 composeRange(prefix+"Range", (Range) type); 30167 else if (type instanceof Quantity) 30168 composeQuantity(prefix+"Quantity", (Quantity) type); 30169 else if (type instanceof Attachment) 30170 composeAttachment(prefix+"Attachment", (Attachment) type); 30171 else if (type instanceof Ratio) 30172 composeRatio(prefix+"Ratio", (Ratio) type); 30173 else if (type instanceof Annotation) 30174 composeAnnotation(prefix+"Annotation", (Annotation) type); 30175 else if (type instanceof SampledData) 30176 composeSampledData(prefix+"SampledData", (SampledData) type); 30177 else if (type instanceof Reference) 30178 composeReference(prefix+"Reference", (Reference) type); 30179 else if (type instanceof CodeableConcept) 30180 composeCodeableConcept(prefix+"CodeableConcept", (CodeableConcept) type); 30181 else if (type instanceof Identifier) 30182 composeIdentifier(prefix+"Identifier", (Identifier) type); 30183 else if (type instanceof Signature) 30184 composeSignature(prefix+"Signature", (Signature) type); 30185 else if (type instanceof TriggerDefinition) 30186 composeTriggerDefinition(prefix+"TriggerDefinition", (TriggerDefinition) type); 30187 else if (type instanceof ElementDefinition) 30188 composeElementDefinition(prefix+"ElementDefinition", (ElementDefinition) type); 30189 else if (type instanceof Timing) 30190 composeTiming(prefix+"Timing", (Timing) type); 30191 else if (type instanceof ModuleMetadata) 30192 composeModuleMetadata(prefix+"ModuleMetadata", (ModuleMetadata) type); 30193 else if (type instanceof ActionDefinition) 30194 composeActionDefinition(prefix+"ActionDefinition", (ActionDefinition) type); 30195 else if (type instanceof Address) 30196 composeAddress(prefix+"Address", (Address) type); 30197 else if (type instanceof HumanName) 30198 composeHumanName(prefix+"HumanName", (HumanName) type); 30199 else if (type instanceof DataRequirement) 30200 composeDataRequirement(prefix+"DataRequirement", (DataRequirement) type); 30201 else if (type instanceof Meta) 30202 composeMeta(prefix+"Meta", (Meta) type); 30203 else if (type instanceof ParameterDefinition) 30204 composeParameterDefinition(prefix+"ParameterDefinition", (ParameterDefinition) type); 30205 else if (type instanceof ContactPoint) 30206 composeContactPoint(prefix+"ContactPoint", (ContactPoint) type); 30207 else if (type instanceof MarkdownType) 30208 composeMarkdown(prefix+"Markdown", (MarkdownType) type); 30209 else if (type instanceof UnsignedIntType) 30210 composeUnsignedInt(prefix+"UnsignedInt", (UnsignedIntType) type); 30211 else if (type instanceof CodeType) 30212 composeCode(prefix+"Code", (CodeType) type); 30213 else if (type instanceof IdType) 30214 composeId(prefix+"Id", (IdType) type); 30215 else if (type instanceof OidType) 30216 composeOid(prefix+"Oid", (OidType) type); 30217 else if (type instanceof PositiveIntType) 30218 composePositiveInt(prefix+"PositiveInt", (PositiveIntType) type); 30219 else if (type instanceof UuidType) 30220 composeUuid(prefix+"Uuid", (UuidType) type); 30221 else if (type instanceof IntegerType) 30222 composeInteger(prefix+"Integer", (IntegerType) type); 30223 else if (type instanceof DateTimeType) 30224 composeDateTime(prefix+"DateTime", (DateTimeType) type); 30225 else if (type instanceof DateType) 30226 composeDate(prefix+"Date", (DateType) type); 30227 else if (type instanceof DecimalType) 30228 composeDecimal(prefix+"Decimal", (DecimalType) type); 30229 else if (type instanceof UriType) 30230 composeUri(prefix+"Uri", (UriType) type); 30231 else if (type instanceof Base64BinaryType) 30232 composeBase64Binary(prefix+"Base64Binary", (Base64BinaryType) type); 30233 else if (type instanceof TimeType) 30234 composeTime(prefix+"Time", (TimeType) type); 30235 else if (type instanceof StringType) 30236 composeString(prefix+"String", (StringType) type); 30237 else if (type instanceof BooleanType) 30238 composeBoolean(prefix+"Boolean", (BooleanType) type); 30239 else if (type instanceof InstantType) 30240 composeInstant(prefix+"Instant", (InstantType) type); 30241 else 30242 throw new Error("Unhandled type"); 30243 } 30244 30245}