001package org.hl7.fhir.dstu2.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 Wed, Jul 13, 2016 05:32+1000 for FHIR v1.0.2 038import org.hl7.fhir.dstu2.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 DateType parseDate(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 092 DateType res = new DateType(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 DateTimeType parseDateTime(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 107 DateTimeType res = new DateTimeType(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 CodeType parseCode(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 122 CodeType res = new CodeType(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 StringType parseString(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 137 StringType res = new StringType(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 IntegerType parseInteger(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 152 IntegerType res = new IntegerType(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 OidType parseOid(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 167 OidType res = new OidType(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 UriType parseUri(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 182 UriType res = new UriType(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 UuidType parseUuid(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 197 UuidType res = new UuidType(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 InstantType parseInstant(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 212 InstantType res = new InstantType(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 BooleanType parseBoolean(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 227 BooleanType res = new BooleanType(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 Base64BinaryType parseBase64Binary(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 242 Base64BinaryType res = new Base64BinaryType(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 UnsignedIntType parseUnsignedInt(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 257 UnsignedIntType res = new UnsignedIntType(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 MarkdownType parseMarkdown(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 272 MarkdownType res = new MarkdownType(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 TimeType parseTime(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 287 TimeType res = new TimeType(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 IdType parseId(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 302 IdType res = new IdType(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 PositiveIntType parsePositiveInt(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 317 PositiveIntType res = new PositiveIntType(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 DecimalType parseDecimal(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 332 DecimalType res = new DecimalType(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 Identifier parseIdentifier(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 385 Identifier res = new Identifier(); 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("use")) { 391 res.setUseElement(parseEnumeration(xpp, Identifier.IdentifierUse.NULL, new Identifier.IdentifierUseEnumFactory())); 392 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 393 res.setType(parseCodeableConcept(xpp)); 394 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 395 res.setSystemElement(parseUri(xpp)); 396 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 397 res.setValueElement(parseString(xpp)); 398 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 399 res.setPeriod(parsePeriod(xpp)); 400 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assigner")) { 401 res.setAssigner(parseReference(xpp)); 402 } else if (!parseElementContent(eventType, xpp, res)) 403 unknownContent(xpp); 404 eventType = nextNoWhitespace(xpp); 405 } 406 next(xpp); 407 parseElementClose(res); 408 return res; 409 } 410 411 protected Coding parseCoding(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 412 Coding res = new Coding(); 413 parseTypeAttributes(xpp, res); 414 next(xpp); 415 int eventType = nextNoWhitespace(xpp); 416 while (eventType != XmlPullParser.END_TAG) { 417 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 418 res.setSystemElement(parseUri(xpp)); 419 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 420 res.setVersionElement(parseString(xpp)); 421 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 422 res.setCodeElement(parseCode(xpp)); 423 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 424 res.setDisplayElement(parseString(xpp)); 425 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("userSelected")) { 426 res.setUserSelectedElement(parseBoolean(xpp)); 427 } else if (!parseElementContent(eventType, xpp, res)) 428 unknownContent(xpp); 429 eventType = nextNoWhitespace(xpp); 430 } 431 next(xpp); 432 parseElementClose(res); 433 return res; 434 } 435 436 protected Reference parseReference(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 437 Reference res = new Reference(); 438 parseTypeAttributes(xpp, res); 439 next(xpp); 440 int eventType = nextNoWhitespace(xpp); 441 while (eventType != XmlPullParser.END_TAG) { 442 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 443 res.setReferenceElement(parseString(xpp)); 444 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 445 res.setDisplayElement(parseString(xpp)); 446 } else if (!parseElementContent(eventType, xpp, res)) 447 unknownContent(xpp); 448 eventType = nextNoWhitespace(xpp); 449 } 450 next(xpp); 451 parseElementClose(res); 452 return res; 453 } 454 455 protected Signature parseSignature(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 456 Signature res = new Signature(); 457 parseTypeAttributes(xpp, res); 458 next(xpp); 459 int eventType = nextNoWhitespace(xpp); 460 while (eventType != XmlPullParser.END_TAG) { 461 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 462 res.getType().add(parseCoding(xpp)); 463 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("when")) { 464 res.setWhenElement(parseInstant(xpp)); 465 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "who")) { 466 res.setWho(parseType("who", xpp)); 467 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentType")) { 468 res.setContentTypeElement(parseCode(xpp)); 469 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("blob")) { 470 res.setBlobElement(parseBase64Binary(xpp)); 471 } else if (!parseElementContent(eventType, xpp, res)) 472 unknownContent(xpp); 473 eventType = nextNoWhitespace(xpp); 474 } 475 next(xpp); 476 parseElementClose(res); 477 return res; 478 } 479 480 protected SampledData parseSampledData(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 481 SampledData res = new SampledData(); 482 parseTypeAttributes(xpp, res); 483 next(xpp); 484 int eventType = nextNoWhitespace(xpp); 485 while (eventType != XmlPullParser.END_TAG) { 486 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("origin")) { 487 res.setOrigin(parseSimpleQuantity(xpp)); 488 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 489 res.setPeriodElement(parseDecimal(xpp)); 490 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 491 res.setFactorElement(parseDecimal(xpp)); 492 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lowerLimit")) { 493 res.setLowerLimitElement(parseDecimal(xpp)); 494 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("upperLimit")) { 495 res.setUpperLimitElement(parseDecimal(xpp)); 496 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dimensions")) { 497 res.setDimensionsElement(parsePositiveInt(xpp)); 498 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("data")) { 499 res.setDataElement(parseString(xpp)); 500 } else if (!parseElementContent(eventType, xpp, res)) 501 unknownContent(xpp); 502 eventType = nextNoWhitespace(xpp); 503 } 504 next(xpp); 505 parseElementClose(res); 506 return res; 507 } 508 509 protected Quantity parseQuantity(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 510 Quantity res = new Quantity(); 511 parseTypeAttributes(xpp, res); 512 next(xpp); 513 int eventType = nextNoWhitespace(xpp); 514 while (eventType != XmlPullParser.END_TAG) { 515 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 516 res.setValueElement(parseDecimal(xpp)); 517 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comparator")) { 518 res.setComparatorElement(parseEnumeration(xpp, Quantity.QuantityComparator.NULL, new Quantity.QuantityComparatorEnumFactory())); 519 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unit")) { 520 res.setUnitElement(parseString(xpp)); 521 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 522 res.setSystemElement(parseUri(xpp)); 523 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 524 res.setCodeElement(parseCode(xpp)); 525 } else if (!parseElementContent(eventType, xpp, res)) 526 unknownContent(xpp); 527 eventType = nextNoWhitespace(xpp); 528 } 529 next(xpp); 530 parseElementClose(res); 531 return res; 532 } 533 534 protected Period parsePeriod(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 535 Period res = new Period(); 536 parseTypeAttributes(xpp, res); 537 next(xpp); 538 int eventType = nextNoWhitespace(xpp); 539 while (eventType != XmlPullParser.END_TAG) { 540 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("start")) { 541 res.setStartElement(parseDateTime(xpp)); 542 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("end")) { 543 res.setEndElement(parseDateTime(xpp)); 544 } else if (!parseElementContent(eventType, xpp, res)) 545 unknownContent(xpp); 546 eventType = nextNoWhitespace(xpp); 547 } 548 next(xpp); 549 parseElementClose(res); 550 return res; 551 } 552 553 protected Attachment parseAttachment(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 554 Attachment res = new Attachment(); 555 parseTypeAttributes(xpp, res); 556 next(xpp); 557 int eventType = nextNoWhitespace(xpp); 558 while (eventType != XmlPullParser.END_TAG) { 559 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentType")) { 560 res.setContentTypeElement(parseCode(xpp)); 561 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 562 res.setLanguageElement(parseCode(xpp)); 563 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("data")) { 564 res.setDataElement(parseBase64Binary(xpp)); 565 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 566 res.setUrlElement(parseUri(xpp)); 567 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("size")) { 568 res.setSizeElement(parseUnsignedInt(xpp)); 569 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("hash")) { 570 res.setHashElement(parseBase64Binary(xpp)); 571 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 572 res.setTitleElement(parseString(xpp)); 573 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("creation")) { 574 res.setCreationElement(parseDateTime(xpp)); 575 } else if (!parseElementContent(eventType, xpp, res)) 576 unknownContent(xpp); 577 eventType = nextNoWhitespace(xpp); 578 } 579 next(xpp); 580 parseElementClose(res); 581 return res; 582 } 583 584 protected Ratio parseRatio(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 585 Ratio res = new Ratio(); 586 parseTypeAttributes(xpp, res); 587 next(xpp); 588 int eventType = nextNoWhitespace(xpp); 589 while (eventType != XmlPullParser.END_TAG) { 590 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("numerator")) { 591 res.setNumerator(parseQuantity(xpp)); 592 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("denominator")) { 593 res.setDenominator(parseQuantity(xpp)); 594 } else if (!parseElementContent(eventType, xpp, res)) 595 unknownContent(xpp); 596 eventType = nextNoWhitespace(xpp); 597 } 598 next(xpp); 599 parseElementClose(res); 600 return res; 601 } 602 603 protected Range parseRange(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 604 Range res = new Range(); 605 parseTypeAttributes(xpp, res); 606 next(xpp); 607 int eventType = nextNoWhitespace(xpp); 608 while (eventType != XmlPullParser.END_TAG) { 609 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("low")) { 610 res.setLow(parseSimpleQuantity(xpp)); 611 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("high")) { 612 res.setHigh(parseSimpleQuantity(xpp)); 613 } else if (!parseElementContent(eventType, xpp, res)) 614 unknownContent(xpp); 615 eventType = nextNoWhitespace(xpp); 616 } 617 next(xpp); 618 parseElementClose(res); 619 return res; 620 } 621 622 protected Annotation parseAnnotation(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 623 Annotation res = new Annotation(); 624 parseTypeAttributes(xpp, res); 625 next(xpp); 626 int eventType = nextNoWhitespace(xpp); 627 while (eventType != XmlPullParser.END_TAG) { 628 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "author")) { 629 res.setAuthor(parseType("author", xpp)); 630 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("time")) { 631 res.setTimeElement(parseDateTime(xpp)); 632 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 633 res.setTextElement(parseString(xpp)); 634 } else if (!parseElementContent(eventType, xpp, res)) 635 unknownContent(xpp); 636 eventType = nextNoWhitespace(xpp); 637 } 638 next(xpp); 639 parseElementClose(res); 640 return res; 641 } 642 643 protected CodeableConcept parseCodeableConcept(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 644 CodeableConcept res = new CodeableConcept(); 645 parseTypeAttributes(xpp, res); 646 next(xpp); 647 int eventType = nextNoWhitespace(xpp); 648 while (eventType != XmlPullParser.END_TAG) { 649 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coding")) { 650 res.getCoding().add(parseCoding(xpp)); 651 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 652 res.setTextElement(parseString(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 Money parseMoney(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 663 Money res = new Money(); 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 SimpleQuantity parseSimpleQuantity(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 688 SimpleQuantity res = new SimpleQuantity(); 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 Duration parseDuration(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 713 Duration res = new Duration(); 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 Count parseCount(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 738 Count res = new Count(); 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 Distance parseDistance(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 763 Distance res = new Distance(); 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 Age parseAge(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 788 Age res = new Age(); 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 HumanName parseHumanName(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 813 HumanName res = new HumanName(); 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("use")) { 819 res.setUseElement(parseEnumeration(xpp, HumanName.NameUse.NULL, new HumanName.NameUseEnumFactory())); 820 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 821 res.setTextElement(parseString(xpp)); 822 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("family")) { 823 res.getFamily().add(parseString(xpp)); 824 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("given")) { 825 res.getGiven().add(parseString(xpp)); 826 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prefix")) { 827 res.getPrefix().add(parseString(xpp)); 828 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("suffix")) { 829 res.getSuffix().add(parseString(xpp)); 830 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 831 res.setPeriod(parsePeriod(xpp)); 832 } else if (!parseElementContent(eventType, xpp, res)) 833 unknownContent(xpp); 834 eventType = nextNoWhitespace(xpp); 835 } 836 next(xpp); 837 parseElementClose(res); 838 return res; 839 } 840 841 protected ContactPoint parseContactPoint(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 842 ContactPoint res = new ContactPoint(); 843 parseElementAttributes(xpp, res); 844 next(xpp); 845 int eventType = nextNoWhitespace(xpp); 846 while (eventType != XmlPullParser.END_TAG) { 847 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 848 res.setSystemElement(parseEnumeration(xpp, ContactPoint.ContactPointSystem.NULL, new ContactPoint.ContactPointSystemEnumFactory())); 849 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 850 res.setValueElement(parseString(xpp)); 851 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 852 res.setUseElement(parseEnumeration(xpp, ContactPoint.ContactPointUse.NULL, new ContactPoint.ContactPointUseEnumFactory())); 853 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rank")) { 854 res.setRankElement(parsePositiveInt(xpp)); 855 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 856 res.setPeriod(parsePeriod(xpp)); 857 } else if (!parseElementContent(eventType, xpp, res)) 858 unknownContent(xpp); 859 eventType = nextNoWhitespace(xpp); 860 } 861 next(xpp); 862 parseElementClose(res); 863 return res; 864 } 865 866 protected Meta parseMeta(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 867 Meta res = new Meta(); 868 parseElementAttributes(xpp, res); 869 next(xpp); 870 int eventType = nextNoWhitespace(xpp); 871 while (eventType != XmlPullParser.END_TAG) { 872 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("versionId")) { 873 res.setVersionIdElement(parseId(xpp)); 874 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastUpdated")) { 875 res.setLastUpdatedElement(parseInstant(xpp)); 876 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 877 res.getProfile().add(parseUri(xpp)); 878 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("security")) { 879 res.getSecurity().add(parseCoding(xpp)); 880 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("tag")) { 881 res.getTag().add(parseCoding(xpp)); 882 } else if (!parseElementContent(eventType, xpp, res)) 883 unknownContent(xpp); 884 eventType = nextNoWhitespace(xpp); 885 } 886 next(xpp); 887 parseElementClose(res); 888 return res; 889 } 890 891 protected Address parseAddress(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 892 Address res = new Address(); 893 parseElementAttributes(xpp, res); 894 next(xpp); 895 int eventType = nextNoWhitespace(xpp); 896 while (eventType != XmlPullParser.END_TAG) { 897 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 898 res.setUseElement(parseEnumeration(xpp, Address.AddressUse.NULL, new Address.AddressUseEnumFactory())); 899 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 900 res.setTypeElement(parseEnumeration(xpp, Address.AddressType.NULL, new Address.AddressTypeEnumFactory())); 901 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 902 res.setTextElement(parseString(xpp)); 903 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("line")) { 904 res.getLine().add(parseString(xpp)); 905 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("city")) { 906 res.setCityElement(parseString(xpp)); 907 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("district")) { 908 res.setDistrictElement(parseString(xpp)); 909 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("state")) { 910 res.setStateElement(parseString(xpp)); 911 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("postalCode")) { 912 res.setPostalCodeElement(parseString(xpp)); 913 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("country")) { 914 res.setCountryElement(parseString(xpp)); 915 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 916 res.setPeriod(parsePeriod(xpp)); 917 } else if (!parseElementContent(eventType, xpp, res)) 918 unknownContent(xpp); 919 eventType = nextNoWhitespace(xpp); 920 } 921 next(xpp); 922 parseElementClose(res); 923 return res; 924 } 925 926 protected Timing parseTiming(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 927 Timing res = new Timing(); 928 parseElementAttributes(xpp, res); 929 next(xpp); 930 int eventType = nextNoWhitespace(xpp); 931 while (eventType != XmlPullParser.END_TAG) { 932 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 933 res.getEvent().add(parseDateTime(xpp)); 934 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("repeat")) { 935 res.setRepeat(parseTimingTimingRepeatComponent(xpp, res)); 936 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 937 res.setCode(parseCodeableConcept(xpp)); 938 } else if (!parseElementContent(eventType, xpp, res)) 939 unknownContent(xpp); 940 eventType = nextNoWhitespace(xpp); 941 } 942 next(xpp); 943 parseElementClose(res); 944 return res; 945 } 946 947 protected Timing.TimingRepeatComponent parseTimingTimingRepeatComponent(XmlPullParser xpp, Timing owner) throws XmlPullParserException, IOException, FHIRFormatError { 948 Timing.TimingRepeatComponent res = new Timing.TimingRepeatComponent(); 949 parseElementAttributes(xpp, res); 950 next(xpp); 951 int eventType = nextNoWhitespace(xpp); 952 while (eventType != XmlPullParser.END_TAG) { 953 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "bounds")) { 954 res.setBounds(parseType("bounds", xpp)); 955 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("count")) { 956 res.setCountElement(parseInteger(xpp)); 957 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("duration")) { 958 res.setDurationElement(parseDecimal(xpp)); 959 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("durationMax")) { 960 res.setDurationMaxElement(parseDecimal(xpp)); 961 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("durationUnits")) { 962 res.setDurationUnitsElement(parseEnumeration(xpp, Timing.UnitsOfTime.NULL, new Timing.UnitsOfTimeEnumFactory())); 963 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("frequency")) { 964 res.setFrequencyElement(parseInteger(xpp)); 965 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("frequencyMax")) { 966 res.setFrequencyMaxElement(parseInteger(xpp)); 967 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 968 res.setPeriodElement(parseDecimal(xpp)); 969 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("periodMax")) { 970 res.setPeriodMaxElement(parseDecimal(xpp)); 971 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("periodUnits")) { 972 res.setPeriodUnitsElement(parseEnumeration(xpp, Timing.UnitsOfTime.NULL, new Timing.UnitsOfTimeEnumFactory())); 973 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("when")) { 974 res.setWhenElement(parseEnumeration(xpp, Timing.EventTiming.NULL, new Timing.EventTimingEnumFactory())); 975 } else if (!parseElementContent(eventType, xpp, res)) 976 unknownContent(xpp); 977 eventType = nextNoWhitespace(xpp); 978 } 979 next(xpp); 980 parseElementClose(res); 981 return res; 982 } 983 984 protected ElementDefinition parseElementDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 985 ElementDefinition res = new ElementDefinition(); 986 parseElementAttributes(xpp, res); 987 next(xpp); 988 int eventType = nextNoWhitespace(xpp); 989 while (eventType != XmlPullParser.END_TAG) { 990 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 991 res.setPathElement(parseString(xpp)); 992 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("representation")) { 993 res.getRepresentation().add(parseEnumeration(xpp, ElementDefinition.PropertyRepresentation.NULL, new ElementDefinition.PropertyRepresentationEnumFactory())); 994 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 995 res.setNameElement(parseString(xpp)); 996 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("label")) { 997 res.setLabelElement(parseString(xpp)); 998 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 999 res.getCode().add(parseCoding(xpp)); 1000 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("slicing")) { 1001 res.setSlicing(parseElementDefinitionElementDefinitionSlicingComponent(xpp, res)); 1002 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("short")) { 1003 res.setShortElement(parseString(xpp)); 1004 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 1005 res.setDefinitionElement(parseMarkdown(xpp)); 1006 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comments")) { 1007 res.setCommentsElement(parseMarkdown(xpp)); 1008 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirements")) { 1009 res.setRequirementsElement(parseMarkdown(xpp)); 1010 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("alias")) { 1011 res.getAlias().add(parseString(xpp)); 1012 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("min")) { 1013 res.setMinElement(parseInteger(xpp)); 1014 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("max")) { 1015 res.setMaxElement(parseString(xpp)); 1016 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("base")) { 1017 res.setBase(parseElementDefinitionElementDefinitionBaseComponent(xpp, res)); 1018 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1019 res.getType().add(parseElementDefinitionTypeRefComponent(xpp, res)); 1020 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("nameReference")) { 1021 res.setNameReferenceElement(parseString(xpp)); 1022 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "defaultValue")) { 1023 res.setDefaultValue(parseType("defaultValue", xpp)); 1024 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("meaningWhenMissing")) { 1025 res.setMeaningWhenMissingElement(parseMarkdown(xpp)); 1026 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "fixed")) { 1027 res.setFixed(parseType("fixed", xpp)); 1028 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "pattern")) { 1029 res.setPattern(parseType("pattern", xpp)); 1030 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "example")) { 1031 res.setExample(parseType("example", xpp)); 1032 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "minValue")) { 1033 res.setMinValue(parseType("minValue", xpp)); 1034 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "maxValue")) { 1035 res.setMaxValue(parseType("maxValue", xpp)); 1036 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxLength")) { 1037 res.setMaxLengthElement(parseInteger(xpp)); 1038 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 1039 res.getCondition().add(parseId(xpp)); 1040 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("constraint")) { 1041 res.getConstraint().add(parseElementDefinitionElementDefinitionConstraintComponent(xpp, res)); 1042 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mustSupport")) { 1043 res.setMustSupportElement(parseBoolean(xpp)); 1044 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("isModifier")) { 1045 res.setIsModifierElement(parseBoolean(xpp)); 1046 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("isSummary")) { 1047 res.setIsSummaryElement(parseBoolean(xpp)); 1048 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("binding")) { 1049 res.setBinding(parseElementDefinitionElementDefinitionBindingComponent(xpp, res)); 1050 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mapping")) { 1051 res.getMapping().add(parseElementDefinitionElementDefinitionMappingComponent(xpp, res)); 1052 } else if (!parseElementContent(eventType, xpp, res)) 1053 unknownContent(xpp); 1054 eventType = nextNoWhitespace(xpp); 1055 } 1056 next(xpp); 1057 parseElementClose(res); 1058 return res; 1059 } 1060 1061 protected ElementDefinition.ElementDefinitionSlicingComponent parseElementDefinitionElementDefinitionSlicingComponent(XmlPullParser xpp, ElementDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 1062 ElementDefinition.ElementDefinitionSlicingComponent res = new ElementDefinition.ElementDefinitionSlicingComponent(); 1063 parseElementAttributes(xpp, res); 1064 next(xpp); 1065 int eventType = nextNoWhitespace(xpp); 1066 while (eventType != XmlPullParser.END_TAG) { 1067 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("discriminator")) { 1068 res.getDiscriminator().add(parseString(xpp)); 1069 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 1070 res.setDescriptionElement(parseString(xpp)); 1071 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ordered")) { 1072 res.setOrderedElement(parseBoolean(xpp)); 1073 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rules")) { 1074 res.setRulesElement(parseEnumeration(xpp, ElementDefinition.SlicingRules.NULL, new ElementDefinition.SlicingRulesEnumFactory())); 1075 } else if (!parseElementContent(eventType, xpp, res)) 1076 unknownContent(xpp); 1077 eventType = nextNoWhitespace(xpp); 1078 } 1079 next(xpp); 1080 parseElementClose(res); 1081 return res; 1082 } 1083 1084 protected ElementDefinition.ElementDefinitionBaseComponent parseElementDefinitionElementDefinitionBaseComponent(XmlPullParser xpp, ElementDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 1085 ElementDefinition.ElementDefinitionBaseComponent res = new ElementDefinition.ElementDefinitionBaseComponent(); 1086 parseElementAttributes(xpp, res); 1087 next(xpp); 1088 int eventType = nextNoWhitespace(xpp); 1089 while (eventType != XmlPullParser.END_TAG) { 1090 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 1091 res.setPathElement(parseString(xpp)); 1092 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("min")) { 1093 res.setMinElement(parseInteger(xpp)); 1094 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("max")) { 1095 res.setMaxElement(parseString(xpp)); 1096 } else if (!parseElementContent(eventType, xpp, res)) 1097 unknownContent(xpp); 1098 eventType = nextNoWhitespace(xpp); 1099 } 1100 next(xpp); 1101 parseElementClose(res); 1102 return res; 1103 } 1104 1105 protected ElementDefinition.TypeRefComponent parseElementDefinitionTypeRefComponent(XmlPullParser xpp, ElementDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 1106 ElementDefinition.TypeRefComponent res = new ElementDefinition.TypeRefComponent(); 1107 parseElementAttributes(xpp, res); 1108 next(xpp); 1109 int eventType = nextNoWhitespace(xpp); 1110 while (eventType != XmlPullParser.END_TAG) { 1111 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 1112 res.setCodeElement(parseCode(xpp)); 1113 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 1114 res.getProfile().add(parseUri(xpp)); 1115 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("aggregation")) { 1116 res.getAggregation().add(parseEnumeration(xpp, ElementDefinition.AggregationMode.NULL, new ElementDefinition.AggregationModeEnumFactory())); 1117 } else if (!parseElementContent(eventType, xpp, res)) 1118 unknownContent(xpp); 1119 eventType = nextNoWhitespace(xpp); 1120 } 1121 next(xpp); 1122 parseElementClose(res); 1123 return res; 1124 } 1125 1126 protected ElementDefinition.ElementDefinitionConstraintComponent parseElementDefinitionElementDefinitionConstraintComponent(XmlPullParser xpp, ElementDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 1127 ElementDefinition.ElementDefinitionConstraintComponent res = new ElementDefinition.ElementDefinitionConstraintComponent(); 1128 parseElementAttributes(xpp, res); 1129 next(xpp); 1130 int eventType = nextNoWhitespace(xpp); 1131 while (eventType != XmlPullParser.END_TAG) { 1132 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("key")) { 1133 res.setKeyElement(parseId(xpp)); 1134 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirements")) { 1135 res.setRequirementsElement(parseString(xpp)); 1136 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("severity")) { 1137 res.setSeverityElement(parseEnumeration(xpp, ElementDefinition.ConstraintSeverity.NULL, new ElementDefinition.ConstraintSeverityEnumFactory())); 1138 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("human")) { 1139 res.setHumanElement(parseString(xpp)); 1140 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("xpath")) { 1141 res.setXpathElement(parseString(xpp)); 1142 } else if (!parseElementContent(eventType, xpp, res)) 1143 unknownContent(xpp); 1144 eventType = nextNoWhitespace(xpp); 1145 } 1146 next(xpp); 1147 parseElementClose(res); 1148 return res; 1149 } 1150 1151 protected ElementDefinition.ElementDefinitionBindingComponent parseElementDefinitionElementDefinitionBindingComponent(XmlPullParser xpp, ElementDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 1152 ElementDefinition.ElementDefinitionBindingComponent res = new ElementDefinition.ElementDefinitionBindingComponent(); 1153 parseElementAttributes(xpp, res); 1154 next(xpp); 1155 int eventType = nextNoWhitespace(xpp); 1156 while (eventType != XmlPullParser.END_TAG) { 1157 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("strength")) { 1158 res.setStrengthElement(parseEnumeration(xpp, Enumerations.BindingStrength.NULL, new Enumerations.BindingStrengthEnumFactory())); 1159 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 1160 res.setDescriptionElement(parseString(xpp)); 1161 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "valueSet")) { 1162 res.setValueSet(parseType("valueSet", xpp)); 1163 } else if (!parseElementContent(eventType, xpp, res)) 1164 unknownContent(xpp); 1165 eventType = nextNoWhitespace(xpp); 1166 } 1167 next(xpp); 1168 parseElementClose(res); 1169 return res; 1170 } 1171 1172 protected ElementDefinition.ElementDefinitionMappingComponent parseElementDefinitionElementDefinitionMappingComponent(XmlPullParser xpp, ElementDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 1173 ElementDefinition.ElementDefinitionMappingComponent res = new ElementDefinition.ElementDefinitionMappingComponent(); 1174 parseElementAttributes(xpp, res); 1175 next(xpp); 1176 int eventType = nextNoWhitespace(xpp); 1177 while (eventType != XmlPullParser.END_TAG) { 1178 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identity")) { 1179 res.setIdentityElement(parseId(xpp)); 1180 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 1181 res.setLanguageElement(parseCode(xpp)); 1182 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("map")) { 1183 res.setMapElement(parseString(xpp)); 1184 } else if (!parseElementContent(eventType, xpp, res)) 1185 unknownContent(xpp); 1186 eventType = nextNoWhitespace(xpp); 1187 } 1188 next(xpp); 1189 parseElementClose(res); 1190 return res; 1191 } 1192 1193 protected void parseDomainResourceAttributes(XmlPullParser xpp, DomainResource res) throws XmlPullParserException, IOException, FHIRFormatError { 1194 parseResourceAttributes(xpp, res); 1195 } 1196 1197 protected boolean parseDomainResourceContent(int eventType, XmlPullParser xpp, DomainResource res) throws XmlPullParserException, IOException, FHIRFormatError { 1198 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 1199 res.setText(parseNarrative(xpp)); 1200 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contained")) { 1201 res.getContained().add(parseResourceContained(xpp)); 1202 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("extension")) { 1203 res.getExtension().add(parseExtension(xpp)); 1204 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifierExtension")) { 1205 res.getModifierExtension().add(parseExtension(xpp)); 1206 } else 1207 return parseResourceContent(eventType, xpp, res); 1208 return true; 1209 } 1210 1211 protected Parameters parseParameters(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1212 Parameters res = new Parameters(); 1213 parseResourceAttributes(xpp, res); 1214 next(xpp); 1215 int eventType = nextNoWhitespace(xpp); 1216 while (eventType != XmlPullParser.END_TAG) { 1217 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameter")) { 1218 res.getParameter().add(parseParametersParametersParameterComponent(xpp, res)); 1219 } else if (!parseResourceContent(eventType, xpp, res)) 1220 unknownContent(xpp); 1221 eventType = nextNoWhitespace(xpp); 1222 } 1223 next(xpp); 1224 parseElementClose(res); 1225 return res; 1226 } 1227 1228 protected Parameters.ParametersParameterComponent parseParametersParametersParameterComponent(XmlPullParser xpp, Parameters owner) throws XmlPullParserException, IOException, FHIRFormatError { 1229 Parameters.ParametersParameterComponent res = new Parameters.ParametersParameterComponent(); 1230 parseBackboneAttributes(xpp, res); 1231 next(xpp); 1232 int eventType = nextNoWhitespace(xpp); 1233 while (eventType != XmlPullParser.END_TAG) { 1234 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 1235 res.setNameElement(parseString(xpp)); 1236 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 1237 res.setValue(parseType("value", xpp)); 1238 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 1239 res.setResource(parseResourceContained(xpp)); 1240 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("part")) { 1241 res.getPart().add(parseParametersParametersParameterComponent(xpp, owner)); 1242 } else if (!parseBackboneContent(eventType, xpp, res)) 1243 unknownContent(xpp); 1244 eventType = nextNoWhitespace(xpp); 1245 } 1246 next(xpp); 1247 parseElementClose(res); 1248 return res; 1249 } 1250 1251 protected void parseResourceAttributes(XmlPullParser xpp, Resource res) throws XmlPullParserException, IOException, FHIRFormatError { 1252 if (!comments.isEmpty()) { 1253 res.getFormatCommentsPre().addAll(comments); 1254 comments.clear(); 1255 } 1256 } 1257 1258 protected boolean parseResourceContent(int eventType, XmlPullParser xpp, Resource res) throws XmlPullParserException, IOException, FHIRFormatError { 1259 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("id")) { 1260 res.setIdElement(parseId(xpp)); 1261 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("meta")) { 1262 res.setMeta(parseMeta(xpp)); 1263 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("implicitRules")) { 1264 res.setImplicitRulesElement(parseUri(xpp)); 1265 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 1266 res.setLanguageElement(parseCode(xpp)); 1267 } else 1268 return false; 1269 return true; 1270 } 1271 1272 protected Account parseAccount(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1273 Account res = new Account(); 1274 parseDomainResourceAttributes(xpp, res); 1275 next(xpp); 1276 int eventType = nextNoWhitespace(xpp); 1277 while (eventType != XmlPullParser.END_TAG) { 1278 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 1279 res.getIdentifier().add(parseIdentifier(xpp)); 1280 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 1281 res.setNameElement(parseString(xpp)); 1282 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1283 res.setType(parseCodeableConcept(xpp)); 1284 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 1285 res.setStatusElement(parseEnumeration(xpp, Account.AccountStatus.NULL, new Account.AccountStatusEnumFactory())); 1286 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("activePeriod")) { 1287 res.setActivePeriod(parsePeriod(xpp)); 1288 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("currency")) { 1289 res.setCurrency(parseCoding(xpp)); 1290 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("balance")) { 1291 res.setBalance(parseMoney(xpp)); 1292 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coveragePeriod")) { 1293 res.setCoveragePeriod(parsePeriod(xpp)); 1294 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 1295 res.setSubject(parseReference(xpp)); 1296 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("owner")) { 1297 res.setOwner(parseReference(xpp)); 1298 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 1299 res.setDescriptionElement(parseString(xpp)); 1300 } else if (!parseDomainResourceContent(eventType, xpp, res)) 1301 unknownContent(xpp); 1302 eventType = nextNoWhitespace(xpp); 1303 } 1304 next(xpp); 1305 parseElementClose(res); 1306 return res; 1307 } 1308 1309 protected AllergyIntolerance parseAllergyIntolerance(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1310 AllergyIntolerance res = new AllergyIntolerance(); 1311 parseDomainResourceAttributes(xpp, res); 1312 next(xpp); 1313 int eventType = nextNoWhitespace(xpp); 1314 while (eventType != XmlPullParser.END_TAG) { 1315 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 1316 res.getIdentifier().add(parseIdentifier(xpp)); 1317 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onset")) { 1318 res.setOnsetElement(parseDateTime(xpp)); 1319 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recordedDate")) { 1320 res.setRecordedDateElement(parseDateTime(xpp)); 1321 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recorder")) { 1322 res.setRecorder(parseReference(xpp)); 1323 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 1324 res.setPatient(parseReference(xpp)); 1325 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reporter")) { 1326 res.setReporter(parseReference(xpp)); 1327 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("substance")) { 1328 res.setSubstance(parseCodeableConcept(xpp)); 1329 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 1330 res.setStatusElement(parseEnumeration(xpp, AllergyIntolerance.AllergyIntoleranceStatus.NULL, new AllergyIntolerance.AllergyIntoleranceStatusEnumFactory())); 1331 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("criticality")) { 1332 res.setCriticalityElement(parseEnumeration(xpp, AllergyIntolerance.AllergyIntoleranceCriticality.NULL, new AllergyIntolerance.AllergyIntoleranceCriticalityEnumFactory())); 1333 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1334 res.setTypeElement(parseEnumeration(xpp, AllergyIntolerance.AllergyIntoleranceType.NULL, new AllergyIntolerance.AllergyIntoleranceTypeEnumFactory())); 1335 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 1336 res.setCategoryElement(parseEnumeration(xpp, AllergyIntolerance.AllergyIntoleranceCategory.NULL, new AllergyIntolerance.AllergyIntoleranceCategoryEnumFactory())); 1337 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastOccurence")) { 1338 res.setLastOccurenceElement(parseDateTime(xpp)); 1339 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 1340 res.setNote(parseAnnotation(xpp)); 1341 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reaction")) { 1342 res.getReaction().add(parseAllergyIntoleranceAllergyIntoleranceReactionComponent(xpp, res)); 1343 } else if (!parseDomainResourceContent(eventType, xpp, res)) 1344 unknownContent(xpp); 1345 eventType = nextNoWhitespace(xpp); 1346 } 1347 next(xpp); 1348 parseElementClose(res); 1349 return res; 1350 } 1351 1352 protected AllergyIntolerance.AllergyIntoleranceReactionComponent parseAllergyIntoleranceAllergyIntoleranceReactionComponent(XmlPullParser xpp, AllergyIntolerance owner) throws XmlPullParserException, IOException, FHIRFormatError { 1353 AllergyIntolerance.AllergyIntoleranceReactionComponent res = new AllergyIntolerance.AllergyIntoleranceReactionComponent(); 1354 parseBackboneAttributes(xpp, res); 1355 next(xpp); 1356 int eventType = nextNoWhitespace(xpp); 1357 while (eventType != XmlPullParser.END_TAG) { 1358 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("substance")) { 1359 res.setSubstance(parseCodeableConcept(xpp)); 1360 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("certainty")) { 1361 res.setCertaintyElement(parseEnumeration(xpp, AllergyIntolerance.AllergyIntoleranceCertainty.NULL, new AllergyIntolerance.AllergyIntoleranceCertaintyEnumFactory())); 1362 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manifestation")) { 1363 res.getManifestation().add(parseCodeableConcept(xpp)); 1364 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 1365 res.setDescriptionElement(parseString(xpp)); 1366 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onset")) { 1367 res.setOnsetElement(parseDateTime(xpp)); 1368 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("severity")) { 1369 res.setSeverityElement(parseEnumeration(xpp, AllergyIntolerance.AllergyIntoleranceSeverity.NULL, new AllergyIntolerance.AllergyIntoleranceSeverityEnumFactory())); 1370 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exposureRoute")) { 1371 res.setExposureRoute(parseCodeableConcept(xpp)); 1372 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 1373 res.setNote(parseAnnotation(xpp)); 1374 } else if (!parseBackboneContent(eventType, xpp, res)) 1375 unknownContent(xpp); 1376 eventType = nextNoWhitespace(xpp); 1377 } 1378 next(xpp); 1379 parseElementClose(res); 1380 return res; 1381 } 1382 1383 protected Appointment parseAppointment(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1384 Appointment res = new Appointment(); 1385 parseDomainResourceAttributes(xpp, res); 1386 next(xpp); 1387 int eventType = nextNoWhitespace(xpp); 1388 while (eventType != XmlPullParser.END_TAG) { 1389 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 1390 res.getIdentifier().add(parseIdentifier(xpp)); 1391 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 1392 res.setStatusElement(parseEnumeration(xpp, Appointment.AppointmentStatus.NULL, new Appointment.AppointmentStatusEnumFactory())); 1393 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1394 res.setType(parseCodeableConcept(xpp)); 1395 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 1396 res.setReason(parseCodeableConcept(xpp)); 1397 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 1398 res.setPriorityElement(parseUnsignedInt(xpp)); 1399 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 1400 res.setDescriptionElement(parseString(xpp)); 1401 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("start")) { 1402 res.setStartElement(parseInstant(xpp)); 1403 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("end")) { 1404 res.setEndElement(parseInstant(xpp)); 1405 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("minutesDuration")) { 1406 res.setMinutesDurationElement(parsePositiveInt(xpp)); 1407 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("slot")) { 1408 res.getSlot().add(parseReference(xpp)); 1409 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 1410 res.setCommentElement(parseString(xpp)); 1411 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 1412 res.getParticipant().add(parseAppointmentAppointmentParticipantComponent(xpp, res)); 1413 } else if (!parseDomainResourceContent(eventType, xpp, res)) 1414 unknownContent(xpp); 1415 eventType = nextNoWhitespace(xpp); 1416 } 1417 next(xpp); 1418 parseElementClose(res); 1419 return res; 1420 } 1421 1422 protected Appointment.AppointmentParticipantComponent parseAppointmentAppointmentParticipantComponent(XmlPullParser xpp, Appointment owner) throws XmlPullParserException, IOException, FHIRFormatError { 1423 Appointment.AppointmentParticipantComponent res = new Appointment.AppointmentParticipantComponent(); 1424 parseBackboneAttributes(xpp, res); 1425 next(xpp); 1426 int eventType = nextNoWhitespace(xpp); 1427 while (eventType != XmlPullParser.END_TAG) { 1428 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1429 res.getType().add(parseCodeableConcept(xpp)); 1430 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 1431 res.setActor(parseReference(xpp)); 1432 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("required")) { 1433 res.setRequiredElement(parseEnumeration(xpp, Appointment.ParticipantRequired.NULL, new Appointment.ParticipantRequiredEnumFactory())); 1434 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 1435 res.setStatusElement(parseEnumeration(xpp, Appointment.ParticipationStatus.NULL, new Appointment.ParticipationStatusEnumFactory())); 1436 } else if (!parseBackboneContent(eventType, xpp, res)) 1437 unknownContent(xpp); 1438 eventType = nextNoWhitespace(xpp); 1439 } 1440 next(xpp); 1441 parseElementClose(res); 1442 return res; 1443 } 1444 1445 protected AppointmentResponse parseAppointmentResponse(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1446 AppointmentResponse res = new AppointmentResponse(); 1447 parseDomainResourceAttributes(xpp, res); 1448 next(xpp); 1449 int eventType = nextNoWhitespace(xpp); 1450 while (eventType != XmlPullParser.END_TAG) { 1451 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 1452 res.getIdentifier().add(parseIdentifier(xpp)); 1453 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("appointment")) { 1454 res.setAppointment(parseReference(xpp)); 1455 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("start")) { 1456 res.setStartElement(parseInstant(xpp)); 1457 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("end")) { 1458 res.setEndElement(parseInstant(xpp)); 1459 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participantType")) { 1460 res.getParticipantType().add(parseCodeableConcept(xpp)); 1461 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 1462 res.setActor(parseReference(xpp)); 1463 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participantStatus")) { 1464 res.setParticipantStatusElement(parseEnumeration(xpp, AppointmentResponse.ParticipantStatus.NULL, new AppointmentResponse.ParticipantStatusEnumFactory())); 1465 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 1466 res.setCommentElement(parseString(xpp)); 1467 } else if (!parseDomainResourceContent(eventType, xpp, res)) 1468 unknownContent(xpp); 1469 eventType = nextNoWhitespace(xpp); 1470 } 1471 next(xpp); 1472 parseElementClose(res); 1473 return res; 1474 } 1475 1476 protected AuditEvent parseAuditEvent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1477 AuditEvent res = new AuditEvent(); 1478 parseDomainResourceAttributes(xpp, res); 1479 next(xpp); 1480 int eventType = nextNoWhitespace(xpp); 1481 while (eventType != XmlPullParser.END_TAG) { 1482 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 1483 res.setEvent(parseAuditEventAuditEventEventComponent(xpp, res)); 1484 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 1485 res.getParticipant().add(parseAuditEventAuditEventParticipantComponent(xpp, res)); 1486 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 1487 res.setSource(parseAuditEventAuditEventSourceComponent(xpp, res)); 1488 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("object")) { 1489 res.getObject().add(parseAuditEventAuditEventObjectComponent(xpp, res)); 1490 } else if (!parseDomainResourceContent(eventType, xpp, res)) 1491 unknownContent(xpp); 1492 eventType = nextNoWhitespace(xpp); 1493 } 1494 next(xpp); 1495 parseElementClose(res); 1496 return res; 1497 } 1498 1499 protected AuditEvent.AuditEventEventComponent parseAuditEventAuditEventEventComponent(XmlPullParser xpp, AuditEvent owner) throws XmlPullParserException, IOException, FHIRFormatError { 1500 AuditEvent.AuditEventEventComponent res = new AuditEvent.AuditEventEventComponent(); 1501 parseBackboneAttributes(xpp, res); 1502 next(xpp); 1503 int eventType = nextNoWhitespace(xpp); 1504 while (eventType != XmlPullParser.END_TAG) { 1505 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1506 res.setType(parseCoding(xpp)); 1507 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subtype")) { 1508 res.getSubtype().add(parseCoding(xpp)); 1509 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 1510 res.setActionElement(parseEnumeration(xpp, AuditEvent.AuditEventAction.NULL, new AuditEvent.AuditEventActionEnumFactory())); 1511 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateTime")) { 1512 res.setDateTimeElement(parseInstant(xpp)); 1513 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 1514 res.setOutcomeElement(parseEnumeration(xpp, AuditEvent.AuditEventOutcome.NULL, new AuditEvent.AuditEventOutcomeEnumFactory())); 1515 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcomeDesc")) { 1516 res.setOutcomeDescElement(parseString(xpp)); 1517 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purposeOfEvent")) { 1518 res.getPurposeOfEvent().add(parseCoding(xpp)); 1519 } else if (!parseBackboneContent(eventType, xpp, res)) 1520 unknownContent(xpp); 1521 eventType = nextNoWhitespace(xpp); 1522 } 1523 next(xpp); 1524 parseElementClose(res); 1525 return res; 1526 } 1527 1528 protected AuditEvent.AuditEventParticipantComponent parseAuditEventAuditEventParticipantComponent(XmlPullParser xpp, AuditEvent owner) throws XmlPullParserException, IOException, FHIRFormatError { 1529 AuditEvent.AuditEventParticipantComponent res = new AuditEvent.AuditEventParticipantComponent(); 1530 parseBackboneAttributes(xpp, res); 1531 next(xpp); 1532 int eventType = nextNoWhitespace(xpp); 1533 while (eventType != XmlPullParser.END_TAG) { 1534 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 1535 res.getRole().add(parseCodeableConcept(xpp)); 1536 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 1537 res.setReference(parseReference(xpp)); 1538 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("userId")) { 1539 res.setUserId(parseIdentifier(xpp)); 1540 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("altId")) { 1541 res.setAltIdElement(parseString(xpp)); 1542 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 1543 res.setNameElement(parseString(xpp)); 1544 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestor")) { 1545 res.setRequestorElement(parseBoolean(xpp)); 1546 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 1547 res.setLocation(parseReference(xpp)); 1548 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("policy")) { 1549 res.getPolicy().add(parseUri(xpp)); 1550 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("media")) { 1551 res.setMedia(parseCoding(xpp)); 1552 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("network")) { 1553 res.setNetwork(parseAuditEventAuditEventParticipantNetworkComponent(xpp, owner)); 1554 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purposeOfUse")) { 1555 res.getPurposeOfUse().add(parseCoding(xpp)); 1556 } else if (!parseBackboneContent(eventType, xpp, res)) 1557 unknownContent(xpp); 1558 eventType = nextNoWhitespace(xpp); 1559 } 1560 next(xpp); 1561 parseElementClose(res); 1562 return res; 1563 } 1564 1565 protected AuditEvent.AuditEventParticipantNetworkComponent parseAuditEventAuditEventParticipantNetworkComponent(XmlPullParser xpp, AuditEvent owner) throws XmlPullParserException, IOException, FHIRFormatError { 1566 AuditEvent.AuditEventParticipantNetworkComponent res = new AuditEvent.AuditEventParticipantNetworkComponent(); 1567 parseBackboneAttributes(xpp, res); 1568 next(xpp); 1569 int eventType = nextNoWhitespace(xpp); 1570 while (eventType != XmlPullParser.END_TAG) { 1571 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 1572 res.setAddressElement(parseString(xpp)); 1573 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1574 res.setTypeElement(parseEnumeration(xpp, AuditEvent.AuditEventParticipantNetworkType.NULL, new AuditEvent.AuditEventParticipantNetworkTypeEnumFactory())); 1575 } else if (!parseBackboneContent(eventType, xpp, res)) 1576 unknownContent(xpp); 1577 eventType = nextNoWhitespace(xpp); 1578 } 1579 next(xpp); 1580 parseElementClose(res); 1581 return res; 1582 } 1583 1584 protected AuditEvent.AuditEventSourceComponent parseAuditEventAuditEventSourceComponent(XmlPullParser xpp, AuditEvent owner) throws XmlPullParserException, IOException, FHIRFormatError { 1585 AuditEvent.AuditEventSourceComponent res = new AuditEvent.AuditEventSourceComponent(); 1586 parseBackboneAttributes(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("site")) { 1591 res.setSiteElement(parseString(xpp)); 1592 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 1593 res.setIdentifier(parseIdentifier(xpp)); 1594 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1595 res.getType().add(parseCoding(xpp)); 1596 } else if (!parseBackboneContent(eventType, xpp, res)) 1597 unknownContent(xpp); 1598 eventType = nextNoWhitespace(xpp); 1599 } 1600 next(xpp); 1601 parseElementClose(res); 1602 return res; 1603 } 1604 1605 protected AuditEvent.AuditEventObjectComponent parseAuditEventAuditEventObjectComponent(XmlPullParser xpp, AuditEvent owner) throws XmlPullParserException, IOException, FHIRFormatError { 1606 AuditEvent.AuditEventObjectComponent res = new AuditEvent.AuditEventObjectComponent(); 1607 parseBackboneAttributes(xpp, res); 1608 next(xpp); 1609 int eventType = nextNoWhitespace(xpp); 1610 while (eventType != XmlPullParser.END_TAG) { 1611 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 1612 res.setIdentifier(parseIdentifier(xpp)); 1613 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 1614 res.setReference(parseReference(xpp)); 1615 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1616 res.setType(parseCoding(xpp)); 1617 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 1618 res.setRole(parseCoding(xpp)); 1619 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lifecycle")) { 1620 res.setLifecycle(parseCoding(xpp)); 1621 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("securityLabel")) { 1622 res.getSecurityLabel().add(parseCoding(xpp)); 1623 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 1624 res.setNameElement(parseString(xpp)); 1625 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 1626 res.setDescriptionElement(parseString(xpp)); 1627 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("query")) { 1628 res.setQueryElement(parseBase64Binary(xpp)); 1629 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 1630 res.getDetail().add(parseAuditEventAuditEventObjectDetailComponent(xpp, owner)); 1631 } else if (!parseBackboneContent(eventType, xpp, res)) 1632 unknownContent(xpp); 1633 eventType = nextNoWhitespace(xpp); 1634 } 1635 next(xpp); 1636 parseElementClose(res); 1637 return res; 1638 } 1639 1640 protected AuditEvent.AuditEventObjectDetailComponent parseAuditEventAuditEventObjectDetailComponent(XmlPullParser xpp, AuditEvent owner) throws XmlPullParserException, IOException, FHIRFormatError { 1641 AuditEvent.AuditEventObjectDetailComponent res = new AuditEvent.AuditEventObjectDetailComponent(); 1642 parseBackboneAttributes(xpp, res); 1643 next(xpp); 1644 int eventType = nextNoWhitespace(xpp); 1645 while (eventType != XmlPullParser.END_TAG) { 1646 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1647 res.setTypeElement(parseString(xpp)); 1648 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 1649 res.setValueElement(parseBase64Binary(xpp)); 1650 } else if (!parseBackboneContent(eventType, xpp, res)) 1651 unknownContent(xpp); 1652 eventType = nextNoWhitespace(xpp); 1653 } 1654 next(xpp); 1655 parseElementClose(res); 1656 return res; 1657 } 1658 1659 protected Basic parseBasic(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1660 Basic res = new Basic(); 1661 parseDomainResourceAttributes(xpp, res); 1662 next(xpp); 1663 int eventType = nextNoWhitespace(xpp); 1664 while (eventType != XmlPullParser.END_TAG) { 1665 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 1666 res.getIdentifier().add(parseIdentifier(xpp)); 1667 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 1668 res.setCode(parseCodeableConcept(xpp)); 1669 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 1670 res.setSubject(parseReference(xpp)); 1671 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 1672 res.setAuthor(parseReference(xpp)); 1673 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 1674 res.setCreatedElement(parseDate(xpp)); 1675 } else if (!parseDomainResourceContent(eventType, xpp, res)) 1676 unknownContent(xpp); 1677 eventType = nextNoWhitespace(xpp); 1678 } 1679 next(xpp); 1680 parseElementClose(res); 1681 return res; 1682 } 1683 1684 protected Binary parseBinary(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1685 Binary res = new Binary(); 1686 parseResourceAttributes(xpp, res); 1687 next(xpp); 1688 int eventType = nextNoWhitespace(xpp); 1689 while (eventType != XmlPullParser.END_TAG) { 1690 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentType")) { 1691 res.setContentTypeElement(parseCode(xpp)); 1692 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 1693 res.setContentElement(parseBase64Binary(xpp)); 1694 } else if (!parseResourceContent(eventType, xpp, res)) 1695 unknownContent(xpp); 1696 eventType = nextNoWhitespace(xpp); 1697 } 1698 next(xpp); 1699 parseElementClose(res); 1700 return res; 1701 } 1702 1703 protected BodySite parseBodySite(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1704 BodySite res = new BodySite(); 1705 parseDomainResourceAttributes(xpp, res); 1706 next(xpp); 1707 int eventType = nextNoWhitespace(xpp); 1708 while (eventType != XmlPullParser.END_TAG) { 1709 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 1710 res.setPatient(parseReference(xpp)); 1711 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 1712 res.getIdentifier().add(parseIdentifier(xpp)); 1713 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 1714 res.setCode(parseCodeableConcept(xpp)); 1715 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 1716 res.getModifier().add(parseCodeableConcept(xpp)); 1717 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 1718 res.setDescriptionElement(parseString(xpp)); 1719 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("image")) { 1720 res.getImage().add(parseAttachment(xpp)); 1721 } else if (!parseDomainResourceContent(eventType, xpp, res)) 1722 unknownContent(xpp); 1723 eventType = nextNoWhitespace(xpp); 1724 } 1725 next(xpp); 1726 parseElementClose(res); 1727 return res; 1728 } 1729 1730 protected Bundle parseBundle(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1731 Bundle res = new Bundle(); 1732 parseResourceAttributes(xpp, res); 1733 next(xpp); 1734 int eventType = nextNoWhitespace(xpp); 1735 while (eventType != XmlPullParser.END_TAG) { 1736 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1737 res.setTypeElement(parseEnumeration(xpp, Bundle.BundleType.NULL, new Bundle.BundleTypeEnumFactory())); 1738 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("total")) { 1739 res.setTotalElement(parseUnsignedInt(xpp)); 1740 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 1741 res.getLink().add(parseBundleBundleLinkComponent(xpp, res)); 1742 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entry")) { 1743 res.getEntry().add(parseBundleBundleEntryComponent(xpp, res)); 1744 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("signature")) { 1745 res.setSignature(parseSignature(xpp)); 1746 } else if (!parseResourceContent(eventType, xpp, res)) 1747 unknownContent(xpp); 1748 eventType = nextNoWhitespace(xpp); 1749 } 1750 next(xpp); 1751 parseElementClose(res); 1752 return res; 1753 } 1754 1755 protected Bundle.BundleLinkComponent parseBundleBundleLinkComponent(XmlPullParser xpp, Bundle owner) throws XmlPullParserException, IOException, FHIRFormatError { 1756 Bundle.BundleLinkComponent res = new Bundle.BundleLinkComponent(); 1757 parseBackboneAttributes(xpp, res); 1758 next(xpp); 1759 int eventType = nextNoWhitespace(xpp); 1760 while (eventType != XmlPullParser.END_TAG) { 1761 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relation")) { 1762 res.setRelationElement(parseString(xpp)); 1763 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 1764 res.setUrlElement(parseUri(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 Bundle.BundleEntryComponent parseBundleBundleEntryComponent(XmlPullParser xpp, Bundle owner) throws XmlPullParserException, IOException, FHIRFormatError { 1775 Bundle.BundleEntryComponent res = new Bundle.BundleEntryComponent(); 1776 parseBackboneAttributes(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("link")) { 1781 res.getLink().add(parseBundleBundleLinkComponent(xpp, owner)); 1782 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fullUrl")) { 1783 res.setFullUrlElement(parseUri(xpp)); 1784 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 1785 res.setResource(parseResourceContained(xpp)); 1786 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("search")) { 1787 res.setSearch(parseBundleBundleEntrySearchComponent(xpp, owner)); 1788 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 1789 res.setRequest(parseBundleBundleEntryRequestComponent(xpp, owner)); 1790 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("response")) { 1791 res.setResponse(parseBundleBundleEntryResponseComponent(xpp, owner)); 1792 } else if (!parseBackboneContent(eventType, xpp, res)) 1793 unknownContent(xpp); 1794 eventType = nextNoWhitespace(xpp); 1795 } 1796 next(xpp); 1797 parseElementClose(res); 1798 return res; 1799 } 1800 1801 protected Bundle.BundleEntrySearchComponent parseBundleBundleEntrySearchComponent(XmlPullParser xpp, Bundle owner) throws XmlPullParserException, IOException, FHIRFormatError { 1802 Bundle.BundleEntrySearchComponent res = new Bundle.BundleEntrySearchComponent(); 1803 parseBackboneAttributes(xpp, res); 1804 next(xpp); 1805 int eventType = nextNoWhitespace(xpp); 1806 while (eventType != XmlPullParser.END_TAG) { 1807 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 1808 res.setModeElement(parseEnumeration(xpp, Bundle.SearchEntryMode.NULL, new Bundle.SearchEntryModeEnumFactory())); 1809 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("score")) { 1810 res.setScoreElement(parseDecimal(xpp)); 1811 } else if (!parseBackboneContent(eventType, xpp, res)) 1812 unknownContent(xpp); 1813 eventType = nextNoWhitespace(xpp); 1814 } 1815 next(xpp); 1816 parseElementClose(res); 1817 return res; 1818 } 1819 1820 protected Bundle.BundleEntryRequestComponent parseBundleBundleEntryRequestComponent(XmlPullParser xpp, Bundle owner) throws XmlPullParserException, IOException, FHIRFormatError { 1821 Bundle.BundleEntryRequestComponent res = new Bundle.BundleEntryRequestComponent(); 1822 parseBackboneAttributes(xpp, res); 1823 next(xpp); 1824 int eventType = nextNoWhitespace(xpp); 1825 while (eventType != XmlPullParser.END_TAG) { 1826 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 1827 res.setMethodElement(parseEnumeration(xpp, Bundle.HTTPVerb.NULL, new Bundle.HTTPVerbEnumFactory())); 1828 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 1829 res.setUrlElement(parseUri(xpp)); 1830 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ifNoneMatch")) { 1831 res.setIfNoneMatchElement(parseString(xpp)); 1832 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ifModifiedSince")) { 1833 res.setIfModifiedSinceElement(parseInstant(xpp)); 1834 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ifMatch")) { 1835 res.setIfMatchElement(parseString(xpp)); 1836 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ifNoneExist")) { 1837 res.setIfNoneExistElement(parseString(xpp)); 1838 } else if (!parseBackboneContent(eventType, xpp, res)) 1839 unknownContent(xpp); 1840 eventType = nextNoWhitespace(xpp); 1841 } 1842 next(xpp); 1843 parseElementClose(res); 1844 return res; 1845 } 1846 1847 protected Bundle.BundleEntryResponseComponent parseBundleBundleEntryResponseComponent(XmlPullParser xpp, Bundle owner) throws XmlPullParserException, IOException, FHIRFormatError { 1848 Bundle.BundleEntryResponseComponent res = new Bundle.BundleEntryResponseComponent(); 1849 parseBackboneAttributes(xpp, res); 1850 next(xpp); 1851 int eventType = nextNoWhitespace(xpp); 1852 while (eventType != XmlPullParser.END_TAG) { 1853 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 1854 res.setStatusElement(parseString(xpp)); 1855 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 1856 res.setLocationElement(parseUri(xpp)); 1857 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("etag")) { 1858 res.setEtagElement(parseString(xpp)); 1859 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastModified")) { 1860 res.setLastModifiedElement(parseInstant(xpp)); 1861 } else if (!parseBackboneContent(eventType, xpp, res)) 1862 unknownContent(xpp); 1863 eventType = nextNoWhitespace(xpp); 1864 } 1865 next(xpp); 1866 parseElementClose(res); 1867 return res; 1868 } 1869 1870 protected CarePlan parseCarePlan(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1871 CarePlan res = new CarePlan(); 1872 parseDomainResourceAttributes(xpp, res); 1873 next(xpp); 1874 int eventType = nextNoWhitespace(xpp); 1875 while (eventType != XmlPullParser.END_TAG) { 1876 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 1877 res.getIdentifier().add(parseIdentifier(xpp)); 1878 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 1879 res.setSubject(parseReference(xpp)); 1880 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 1881 res.setStatusElement(parseEnumeration(xpp, CarePlan.CarePlanStatus.NULL, new CarePlan.CarePlanStatusEnumFactory())); 1882 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 1883 res.setContext(parseReference(xpp)); 1884 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 1885 res.setPeriod(parsePeriod(xpp)); 1886 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 1887 res.getAuthor().add(parseReference(xpp)); 1888 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modified")) { 1889 res.setModifiedElement(parseDateTime(xpp)); 1890 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 1891 res.getCategory().add(parseCodeableConcept(xpp)); 1892 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 1893 res.setDescriptionElement(parseString(xpp)); 1894 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("addresses")) { 1895 res.getAddresses().add(parseReference(xpp)); 1896 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("support")) { 1897 res.getSupport().add(parseReference(xpp)); 1898 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedPlan")) { 1899 res.getRelatedPlan().add(parseCarePlanCarePlanRelatedPlanComponent(xpp, res)); 1900 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 1901 res.getParticipant().add(parseCarePlanCarePlanParticipantComponent(xpp, res)); 1902 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("goal")) { 1903 res.getGoal().add(parseReference(xpp)); 1904 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("activity")) { 1905 res.getActivity().add(parseCarePlanCarePlanActivityComponent(xpp, res)); 1906 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 1907 res.setNote(parseAnnotation(xpp)); 1908 } else if (!parseDomainResourceContent(eventType, xpp, res)) 1909 unknownContent(xpp); 1910 eventType = nextNoWhitespace(xpp); 1911 } 1912 next(xpp); 1913 parseElementClose(res); 1914 return res; 1915 } 1916 1917 protected CarePlan.CarePlanRelatedPlanComponent parseCarePlanCarePlanRelatedPlanComponent(XmlPullParser xpp, CarePlan owner) throws XmlPullParserException, IOException, FHIRFormatError { 1918 CarePlan.CarePlanRelatedPlanComponent res = new CarePlan.CarePlanRelatedPlanComponent(); 1919 parseBackboneAttributes(xpp, res); 1920 next(xpp); 1921 int eventType = nextNoWhitespace(xpp); 1922 while (eventType != XmlPullParser.END_TAG) { 1923 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 1924 res.setCodeElement(parseEnumeration(xpp, CarePlan.CarePlanRelationship.NULL, new CarePlan.CarePlanRelationshipEnumFactory())); 1925 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("plan")) { 1926 res.setPlan(parseReference(xpp)); 1927 } else if (!parseBackboneContent(eventType, xpp, res)) 1928 unknownContent(xpp); 1929 eventType = nextNoWhitespace(xpp); 1930 } 1931 next(xpp); 1932 parseElementClose(res); 1933 return res; 1934 } 1935 1936 protected CarePlan.CarePlanParticipantComponent parseCarePlanCarePlanParticipantComponent(XmlPullParser xpp, CarePlan owner) throws XmlPullParserException, IOException, FHIRFormatError { 1937 CarePlan.CarePlanParticipantComponent res = new CarePlan.CarePlanParticipantComponent(); 1938 parseBackboneAttributes(xpp, res); 1939 next(xpp); 1940 int eventType = nextNoWhitespace(xpp); 1941 while (eventType != XmlPullParser.END_TAG) { 1942 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 1943 res.setRole(parseCodeableConcept(xpp)); 1944 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("member")) { 1945 res.setMember(parseReference(xpp)); 1946 } else if (!parseBackboneContent(eventType, xpp, res)) 1947 unknownContent(xpp); 1948 eventType = nextNoWhitespace(xpp); 1949 } 1950 next(xpp); 1951 parseElementClose(res); 1952 return res; 1953 } 1954 1955 protected CarePlan.CarePlanActivityComponent parseCarePlanCarePlanActivityComponent(XmlPullParser xpp, CarePlan owner) throws XmlPullParserException, IOException, FHIRFormatError { 1956 CarePlan.CarePlanActivityComponent res = new CarePlan.CarePlanActivityComponent(); 1957 parseBackboneAttributes(xpp, res); 1958 next(xpp); 1959 int eventType = nextNoWhitespace(xpp); 1960 while (eventType != XmlPullParser.END_TAG) { 1961 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actionResulting")) { 1962 res.getActionResulting().add(parseReference(xpp)); 1963 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("progress")) { 1964 res.getProgress().add(parseAnnotation(xpp)); 1965 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 1966 res.setReference(parseReference(xpp)); 1967 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 1968 res.setDetail(parseCarePlanCarePlanActivityDetailComponent(xpp, owner)); 1969 } else if (!parseBackboneContent(eventType, xpp, res)) 1970 unknownContent(xpp); 1971 eventType = nextNoWhitespace(xpp); 1972 } 1973 next(xpp); 1974 parseElementClose(res); 1975 return res; 1976 } 1977 1978 protected CarePlan.CarePlanActivityDetailComponent parseCarePlanCarePlanActivityDetailComponent(XmlPullParser xpp, CarePlan owner) throws XmlPullParserException, IOException, FHIRFormatError { 1979 CarePlan.CarePlanActivityDetailComponent res = new CarePlan.CarePlanActivityDetailComponent(); 1980 parseBackboneAttributes(xpp, res); 1981 next(xpp); 1982 int eventType = nextNoWhitespace(xpp); 1983 while (eventType != XmlPullParser.END_TAG) { 1984 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 1985 res.setCategory(parseCodeableConcept(xpp)); 1986 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 1987 res.setCode(parseCodeableConcept(xpp)); 1988 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonCode")) { 1989 res.getReasonCode().add(parseCodeableConcept(xpp)); 1990 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonReference")) { 1991 res.getReasonReference().add(parseReference(xpp)); 1992 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("goal")) { 1993 res.getGoal().add(parseReference(xpp)); 1994 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 1995 res.setStatusElement(parseEnumeration(xpp, CarePlan.CarePlanActivityStatus.NULL, new CarePlan.CarePlanActivityStatusEnumFactory())); 1996 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusReason")) { 1997 res.setStatusReason(parseCodeableConcept(xpp)); 1998 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prohibited")) { 1999 res.setProhibitedElement(parseBoolean(xpp)); 2000 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "scheduled")) { 2001 res.setScheduled(parseType("scheduled", xpp)); 2002 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 2003 res.setLocation(parseReference(xpp)); 2004 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 2005 res.getPerformer().add(parseReference(xpp)); 2006 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "product")) { 2007 res.setProduct(parseType("product", xpp)); 2008 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dailyAmount")) { 2009 res.setDailyAmount(parseSimpleQuantity(xpp)); 2010 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 2011 res.setQuantity(parseSimpleQuantity(xpp)); 2012 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 2013 res.setDescriptionElement(parseString(xpp)); 2014 } else if (!parseBackboneContent(eventType, xpp, res)) 2015 unknownContent(xpp); 2016 eventType = nextNoWhitespace(xpp); 2017 } 2018 next(xpp); 2019 parseElementClose(res); 2020 return res; 2021 } 2022 2023 protected Claim parseClaim(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2024 Claim res = new Claim(); 2025 parseDomainResourceAttributes(xpp, res); 2026 next(xpp); 2027 int eventType = nextNoWhitespace(xpp); 2028 while (eventType != XmlPullParser.END_TAG) { 2029 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2030 res.setTypeElement(parseEnumeration(xpp, Claim.ClaimType.NULL, new Claim.ClaimTypeEnumFactory())); 2031 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 2032 res.getIdentifier().add(parseIdentifier(xpp)); 2033 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleset")) { 2034 res.setRuleset(parseCoding(xpp)); 2035 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("originalRuleset")) { 2036 res.setOriginalRuleset(parseCoding(xpp)); 2037 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 2038 res.setCreatedElement(parseDateTime(xpp)); 2039 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 2040 res.setTarget(parseReference(xpp)); 2041 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provider")) { 2042 res.setProvider(parseReference(xpp)); 2043 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 2044 res.setOrganization(parseReference(xpp)); 2045 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 2046 res.setUseElement(parseEnumeration(xpp, Claim.Use.NULL, new Claim.UseEnumFactory())); 2047 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 2048 res.setPriority(parseCoding(xpp)); 2049 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fundsReserve")) { 2050 res.setFundsReserve(parseCoding(xpp)); 2051 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("enterer")) { 2052 res.setEnterer(parseReference(xpp)); 2053 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("facility")) { 2054 res.setFacility(parseReference(xpp)); 2055 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prescription")) { 2056 res.setPrescription(parseReference(xpp)); 2057 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("originalPrescription")) { 2058 res.setOriginalPrescription(parseReference(xpp)); 2059 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payee")) { 2060 res.setPayee(parseClaimPayeeComponent(xpp, res)); 2061 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referral")) { 2062 res.setReferral(parseReference(xpp)); 2063 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnosis")) { 2064 res.getDiagnosis().add(parseClaimDiagnosisComponent(xpp, res)); 2065 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 2066 res.getCondition().add(parseCoding(xpp)); 2067 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 2068 res.setPatient(parseReference(xpp)); 2069 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverage")) { 2070 res.getCoverage().add(parseClaimCoverageComponent(xpp, res)); 2071 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exception")) { 2072 res.getException().add(parseCoding(xpp)); 2073 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("school")) { 2074 res.setSchoolElement(parseString(xpp)); 2075 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("accident")) { 2076 res.setAccidentElement(parseDate(xpp)); 2077 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("accidentType")) { 2078 res.setAccidentType(parseCoding(xpp)); 2079 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("interventionException")) { 2080 res.getInterventionException().add(parseCoding(xpp)); 2081 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 2082 res.getItem().add(parseClaimItemsComponent(xpp, res)); 2083 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("additionalMaterials")) { 2084 res.getAdditionalMaterials().add(parseCoding(xpp)); 2085 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("missingTeeth")) { 2086 res.getMissingTeeth().add(parseClaimMissingTeethComponent(xpp, res)); 2087 } else if (!parseDomainResourceContent(eventType, xpp, res)) 2088 unknownContent(xpp); 2089 eventType = nextNoWhitespace(xpp); 2090 } 2091 next(xpp); 2092 parseElementClose(res); 2093 return res; 2094 } 2095 2096 protected Claim.PayeeComponent parseClaimPayeeComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 2097 Claim.PayeeComponent res = new Claim.PayeeComponent(); 2098 parseBackboneAttributes(xpp, res); 2099 next(xpp); 2100 int eventType = nextNoWhitespace(xpp); 2101 while (eventType != XmlPullParser.END_TAG) { 2102 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2103 res.setType(parseCoding(xpp)); 2104 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provider")) { 2105 res.setProvider(parseReference(xpp)); 2106 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 2107 res.setOrganization(parseReference(xpp)); 2108 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("person")) { 2109 res.setPerson(parseReference(xpp)); 2110 } else if (!parseBackboneContent(eventType, xpp, res)) 2111 unknownContent(xpp); 2112 eventType = nextNoWhitespace(xpp); 2113 } 2114 next(xpp); 2115 parseElementClose(res); 2116 return res; 2117 } 2118 2119 protected Claim.DiagnosisComponent parseClaimDiagnosisComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 2120 Claim.DiagnosisComponent res = new Claim.DiagnosisComponent(); 2121 parseBackboneAttributes(xpp, res); 2122 next(xpp); 2123 int eventType = nextNoWhitespace(xpp); 2124 while (eventType != XmlPullParser.END_TAG) { 2125 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 2126 res.setSequenceElement(parsePositiveInt(xpp)); 2127 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnosis")) { 2128 res.setDiagnosis(parseCoding(xpp)); 2129 } else if (!parseBackboneContent(eventType, xpp, res)) 2130 unknownContent(xpp); 2131 eventType = nextNoWhitespace(xpp); 2132 } 2133 next(xpp); 2134 parseElementClose(res); 2135 return res; 2136 } 2137 2138 protected Claim.CoverageComponent parseClaimCoverageComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 2139 Claim.CoverageComponent res = new Claim.CoverageComponent(); 2140 parseBackboneAttributes(xpp, res); 2141 next(xpp); 2142 int eventType = nextNoWhitespace(xpp); 2143 while (eventType != XmlPullParser.END_TAG) { 2144 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 2145 res.setSequenceElement(parsePositiveInt(xpp)); 2146 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focal")) { 2147 res.setFocalElement(parseBoolean(xpp)); 2148 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverage")) { 2149 res.setCoverage(parseReference(xpp)); 2150 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("businessArrangement")) { 2151 res.setBusinessArrangementElement(parseString(xpp)); 2152 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 2153 res.setRelationship(parseCoding(xpp)); 2154 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preAuthRef")) { 2155 res.getPreAuthRef().add(parseString(xpp)); 2156 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("claimResponse")) { 2157 res.setClaimResponse(parseReference(xpp)); 2158 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("originalRuleset")) { 2159 res.setOriginalRuleset(parseCoding(xpp)); 2160 } else if (!parseBackboneContent(eventType, xpp, res)) 2161 unknownContent(xpp); 2162 eventType = nextNoWhitespace(xpp); 2163 } 2164 next(xpp); 2165 parseElementClose(res); 2166 return res; 2167 } 2168 2169 protected Claim.ItemsComponent parseClaimItemsComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 2170 Claim.ItemsComponent res = new Claim.ItemsComponent(); 2171 parseBackboneAttributes(xpp, res); 2172 next(xpp); 2173 int eventType = nextNoWhitespace(xpp); 2174 while (eventType != XmlPullParser.END_TAG) { 2175 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 2176 res.setSequenceElement(parsePositiveInt(xpp)); 2177 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2178 res.setType(parseCoding(xpp)); 2179 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provider")) { 2180 res.setProvider(parseReference(xpp)); 2181 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnosisLinkId")) { 2182 res.getDiagnosisLinkId().add(parsePositiveInt(xpp)); 2183 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 2184 res.setService(parseCoding(xpp)); 2185 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceDate")) { 2186 res.setServiceDateElement(parseDate(xpp)); 2187 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 2188 res.setQuantity(parseSimpleQuantity(xpp)); 2189 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 2190 res.setUnitPrice(parseMoney(xpp)); 2191 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 2192 res.setFactorElement(parseDecimal(xpp)); 2193 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("points")) { 2194 res.setPointsElement(parseDecimal(xpp)); 2195 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 2196 res.setNet(parseMoney(xpp)); 2197 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udi")) { 2198 res.setUdi(parseCoding(xpp)); 2199 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 2200 res.setBodySite(parseCoding(xpp)); 2201 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subSite")) { 2202 res.getSubSite().add(parseCoding(xpp)); 2203 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 2204 res.getModifier().add(parseCoding(xpp)); 2205 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 2206 res.getDetail().add(parseClaimDetailComponent(xpp, owner)); 2207 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prosthesis")) { 2208 res.setProsthesis(parseClaimProsthesisComponent(xpp, owner)); 2209 } else if (!parseBackboneContent(eventType, xpp, res)) 2210 unknownContent(xpp); 2211 eventType = nextNoWhitespace(xpp); 2212 } 2213 next(xpp); 2214 parseElementClose(res); 2215 return res; 2216 } 2217 2218 protected Claim.DetailComponent parseClaimDetailComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 2219 Claim.DetailComponent res = new Claim.DetailComponent(); 2220 parseBackboneAttributes(xpp, res); 2221 next(xpp); 2222 int eventType = nextNoWhitespace(xpp); 2223 while (eventType != XmlPullParser.END_TAG) { 2224 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 2225 res.setSequenceElement(parsePositiveInt(xpp)); 2226 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2227 res.setType(parseCoding(xpp)); 2228 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 2229 res.setService(parseCoding(xpp)); 2230 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 2231 res.setQuantity(parseSimpleQuantity(xpp)); 2232 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 2233 res.setUnitPrice(parseMoney(xpp)); 2234 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 2235 res.setFactorElement(parseDecimal(xpp)); 2236 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("points")) { 2237 res.setPointsElement(parseDecimal(xpp)); 2238 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 2239 res.setNet(parseMoney(xpp)); 2240 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udi")) { 2241 res.setUdi(parseCoding(xpp)); 2242 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subDetail")) { 2243 res.getSubDetail().add(parseClaimSubDetailComponent(xpp, owner)); 2244 } else if (!parseBackboneContent(eventType, xpp, res)) 2245 unknownContent(xpp); 2246 eventType = nextNoWhitespace(xpp); 2247 } 2248 next(xpp); 2249 parseElementClose(res); 2250 return res; 2251 } 2252 2253 protected Claim.SubDetailComponent parseClaimSubDetailComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 2254 Claim.SubDetailComponent res = new Claim.SubDetailComponent(); 2255 parseBackboneAttributes(xpp, res); 2256 next(xpp); 2257 int eventType = nextNoWhitespace(xpp); 2258 while (eventType != XmlPullParser.END_TAG) { 2259 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 2260 res.setSequenceElement(parsePositiveInt(xpp)); 2261 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2262 res.setType(parseCoding(xpp)); 2263 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 2264 res.setService(parseCoding(xpp)); 2265 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 2266 res.setQuantity(parseSimpleQuantity(xpp)); 2267 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 2268 res.setUnitPrice(parseMoney(xpp)); 2269 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 2270 res.setFactorElement(parseDecimal(xpp)); 2271 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("points")) { 2272 res.setPointsElement(parseDecimal(xpp)); 2273 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 2274 res.setNet(parseMoney(xpp)); 2275 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udi")) { 2276 res.setUdi(parseCoding(xpp)); 2277 } else if (!parseBackboneContent(eventType, xpp, res)) 2278 unknownContent(xpp); 2279 eventType = nextNoWhitespace(xpp); 2280 } 2281 next(xpp); 2282 parseElementClose(res); 2283 return res; 2284 } 2285 2286 protected Claim.ProsthesisComponent parseClaimProsthesisComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 2287 Claim.ProsthesisComponent res = new Claim.ProsthesisComponent(); 2288 parseBackboneAttributes(xpp, res); 2289 next(xpp); 2290 int eventType = nextNoWhitespace(xpp); 2291 while (eventType != XmlPullParser.END_TAG) { 2292 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("initial")) { 2293 res.setInitialElement(parseBoolean(xpp)); 2294 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priorDate")) { 2295 res.setPriorDateElement(parseDate(xpp)); 2296 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priorMaterial")) { 2297 res.setPriorMaterial(parseCoding(xpp)); 2298 } else if (!parseBackboneContent(eventType, xpp, res)) 2299 unknownContent(xpp); 2300 eventType = nextNoWhitespace(xpp); 2301 } 2302 next(xpp); 2303 parseElementClose(res); 2304 return res; 2305 } 2306 2307 protected Claim.MissingTeethComponent parseClaimMissingTeethComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 2308 Claim.MissingTeethComponent res = new Claim.MissingTeethComponent(); 2309 parseBackboneAttributes(xpp, res); 2310 next(xpp); 2311 int eventType = nextNoWhitespace(xpp); 2312 while (eventType != XmlPullParser.END_TAG) { 2313 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("tooth")) { 2314 res.setTooth(parseCoding(xpp)); 2315 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 2316 res.setReason(parseCoding(xpp)); 2317 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("extractionDate")) { 2318 res.setExtractionDateElement(parseDate(xpp)); 2319 } else if (!parseBackboneContent(eventType, xpp, res)) 2320 unknownContent(xpp); 2321 eventType = nextNoWhitespace(xpp); 2322 } 2323 next(xpp); 2324 parseElementClose(res); 2325 return res; 2326 } 2327 2328 protected ClaimResponse parseClaimResponse(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2329 ClaimResponse res = new ClaimResponse(); 2330 parseDomainResourceAttributes(xpp, res); 2331 next(xpp); 2332 int eventType = nextNoWhitespace(xpp); 2333 while (eventType != XmlPullParser.END_TAG) { 2334 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 2335 res.getIdentifier().add(parseIdentifier(xpp)); 2336 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 2337 res.setRequest(parseReference(xpp)); 2338 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleset")) { 2339 res.setRuleset(parseCoding(xpp)); 2340 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("originalRuleset")) { 2341 res.setOriginalRuleset(parseCoding(xpp)); 2342 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 2343 res.setCreatedElement(parseDateTime(xpp)); 2344 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 2345 res.setOrganization(parseReference(xpp)); 2346 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestProvider")) { 2347 res.setRequestProvider(parseReference(xpp)); 2348 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestOrganization")) { 2349 res.setRequestOrganization(parseReference(xpp)); 2350 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 2351 res.setOutcomeElement(parseEnumeration(xpp, Enumerations.RemittanceOutcome.NULL, new Enumerations.RemittanceOutcomeEnumFactory())); 2352 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disposition")) { 2353 res.setDispositionElement(parseString(xpp)); 2354 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payeeType")) { 2355 res.setPayeeType(parseCoding(xpp)); 2356 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 2357 res.getItem().add(parseClaimResponseItemsComponent(xpp, res)); 2358 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("addItem")) { 2359 res.getAddItem().add(parseClaimResponseAddedItemComponent(xpp, res)); 2360 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("error")) { 2361 res.getError().add(parseClaimResponseErrorsComponent(xpp, res)); 2362 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("totalCost")) { 2363 res.setTotalCost(parseMoney(xpp)); 2364 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unallocDeductable")) { 2365 res.setUnallocDeductable(parseMoney(xpp)); 2366 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("totalBenefit")) { 2367 res.setTotalBenefit(parseMoney(xpp)); 2368 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("paymentAdjustment")) { 2369 res.setPaymentAdjustment(parseMoney(xpp)); 2370 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("paymentAdjustmentReason")) { 2371 res.setPaymentAdjustmentReason(parseCoding(xpp)); 2372 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("paymentDate")) { 2373 res.setPaymentDateElement(parseDate(xpp)); 2374 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("paymentAmount")) { 2375 res.setPaymentAmount(parseMoney(xpp)); 2376 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("paymentRef")) { 2377 res.setPaymentRef(parseIdentifier(xpp)); 2378 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reserved")) { 2379 res.setReserved(parseCoding(xpp)); 2380 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("form")) { 2381 res.setForm(parseCoding(xpp)); 2382 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 2383 res.getNote().add(parseClaimResponseNotesComponent(xpp, res)); 2384 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverage")) { 2385 res.getCoverage().add(parseClaimResponseCoverageComponent(xpp, res)); 2386 } else if (!parseDomainResourceContent(eventType, xpp, res)) 2387 unknownContent(xpp); 2388 eventType = nextNoWhitespace(xpp); 2389 } 2390 next(xpp); 2391 parseElementClose(res); 2392 return res; 2393 } 2394 2395 protected ClaimResponse.ItemsComponent parseClaimResponseItemsComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 2396 ClaimResponse.ItemsComponent res = new ClaimResponse.ItemsComponent(); 2397 parseBackboneAttributes(xpp, res); 2398 next(xpp); 2399 int eventType = nextNoWhitespace(xpp); 2400 while (eventType != XmlPullParser.END_TAG) { 2401 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequenceLinkId")) { 2402 res.setSequenceLinkIdElement(parsePositiveInt(xpp)); 2403 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumber")) { 2404 res.getNoteNumber().add(parsePositiveInt(xpp)); 2405 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 2406 res.getAdjudication().add(parseClaimResponseItemAdjudicationComponent(xpp, owner)); 2407 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 2408 res.getDetail().add(parseClaimResponseItemDetailComponent(xpp, owner)); 2409 } else if (!parseBackboneContent(eventType, xpp, res)) 2410 unknownContent(xpp); 2411 eventType = nextNoWhitespace(xpp); 2412 } 2413 next(xpp); 2414 parseElementClose(res); 2415 return res; 2416 } 2417 2418 protected ClaimResponse.ItemAdjudicationComponent parseClaimResponseItemAdjudicationComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 2419 ClaimResponse.ItemAdjudicationComponent res = new ClaimResponse.ItemAdjudicationComponent(); 2420 parseBackboneAttributes(xpp, res); 2421 next(xpp); 2422 int eventType = nextNoWhitespace(xpp); 2423 while (eventType != XmlPullParser.END_TAG) { 2424 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 2425 res.setCode(parseCoding(xpp)); 2426 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 2427 res.setAmount(parseMoney(xpp)); 2428 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 2429 res.setValueElement(parseDecimal(xpp)); 2430 } else if (!parseBackboneContent(eventType, xpp, res)) 2431 unknownContent(xpp); 2432 eventType = nextNoWhitespace(xpp); 2433 } 2434 next(xpp); 2435 parseElementClose(res); 2436 return res; 2437 } 2438 2439 protected ClaimResponse.ItemDetailComponent parseClaimResponseItemDetailComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 2440 ClaimResponse.ItemDetailComponent res = new ClaimResponse.ItemDetailComponent(); 2441 parseBackboneAttributes(xpp, res); 2442 next(xpp); 2443 int eventType = nextNoWhitespace(xpp); 2444 while (eventType != XmlPullParser.END_TAG) { 2445 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequenceLinkId")) { 2446 res.setSequenceLinkIdElement(parsePositiveInt(xpp)); 2447 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 2448 res.getAdjudication().add(parseClaimResponseDetailAdjudicationComponent(xpp, owner)); 2449 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subDetail")) { 2450 res.getSubDetail().add(parseClaimResponseSubDetailComponent(xpp, owner)); 2451 } else if (!parseBackboneContent(eventType, xpp, res)) 2452 unknownContent(xpp); 2453 eventType = nextNoWhitespace(xpp); 2454 } 2455 next(xpp); 2456 parseElementClose(res); 2457 return res; 2458 } 2459 2460 protected ClaimResponse.DetailAdjudicationComponent parseClaimResponseDetailAdjudicationComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 2461 ClaimResponse.DetailAdjudicationComponent res = new ClaimResponse.DetailAdjudicationComponent(); 2462 parseBackboneAttributes(xpp, res); 2463 next(xpp); 2464 int eventType = nextNoWhitespace(xpp); 2465 while (eventType != XmlPullParser.END_TAG) { 2466 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 2467 res.setCode(parseCoding(xpp)); 2468 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 2469 res.setAmount(parseMoney(xpp)); 2470 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 2471 res.setValueElement(parseDecimal(xpp)); 2472 } else if (!parseBackboneContent(eventType, xpp, res)) 2473 unknownContent(xpp); 2474 eventType = nextNoWhitespace(xpp); 2475 } 2476 next(xpp); 2477 parseElementClose(res); 2478 return res; 2479 } 2480 2481 protected ClaimResponse.SubDetailComponent parseClaimResponseSubDetailComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 2482 ClaimResponse.SubDetailComponent res = new ClaimResponse.SubDetailComponent(); 2483 parseBackboneAttributes(xpp, res); 2484 next(xpp); 2485 int eventType = nextNoWhitespace(xpp); 2486 while (eventType != XmlPullParser.END_TAG) { 2487 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequenceLinkId")) { 2488 res.setSequenceLinkIdElement(parsePositiveInt(xpp)); 2489 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 2490 res.getAdjudication().add(parseClaimResponseSubdetailAdjudicationComponent(xpp, owner)); 2491 } else if (!parseBackboneContent(eventType, xpp, res)) 2492 unknownContent(xpp); 2493 eventType = nextNoWhitespace(xpp); 2494 } 2495 next(xpp); 2496 parseElementClose(res); 2497 return res; 2498 } 2499 2500 protected ClaimResponse.SubdetailAdjudicationComponent parseClaimResponseSubdetailAdjudicationComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 2501 ClaimResponse.SubdetailAdjudicationComponent res = new ClaimResponse.SubdetailAdjudicationComponent(); 2502 parseBackboneAttributes(xpp, res); 2503 next(xpp); 2504 int eventType = nextNoWhitespace(xpp); 2505 while (eventType != XmlPullParser.END_TAG) { 2506 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 2507 res.setCode(parseCoding(xpp)); 2508 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 2509 res.setAmount(parseMoney(xpp)); 2510 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 2511 res.setValueElement(parseDecimal(xpp)); 2512 } else if (!parseBackboneContent(eventType, xpp, res)) 2513 unknownContent(xpp); 2514 eventType = nextNoWhitespace(xpp); 2515 } 2516 next(xpp); 2517 parseElementClose(res); 2518 return res; 2519 } 2520 2521 protected ClaimResponse.AddedItemComponent parseClaimResponseAddedItemComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 2522 ClaimResponse.AddedItemComponent res = new ClaimResponse.AddedItemComponent(); 2523 parseBackboneAttributes(xpp, res); 2524 next(xpp); 2525 int eventType = nextNoWhitespace(xpp); 2526 while (eventType != XmlPullParser.END_TAG) { 2527 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequenceLinkId")) { 2528 res.getSequenceLinkId().add(parsePositiveInt(xpp)); 2529 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 2530 res.setService(parseCoding(xpp)); 2531 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fee")) { 2532 res.setFee(parseMoney(xpp)); 2533 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumberLinkId")) { 2534 res.getNoteNumberLinkId().add(parsePositiveInt(xpp)); 2535 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 2536 res.getAdjudication().add(parseClaimResponseAddedItemAdjudicationComponent(xpp, owner)); 2537 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 2538 res.getDetail().add(parseClaimResponseAddedItemsDetailComponent(xpp, owner)); 2539 } else if (!parseBackboneContent(eventType, xpp, res)) 2540 unknownContent(xpp); 2541 eventType = nextNoWhitespace(xpp); 2542 } 2543 next(xpp); 2544 parseElementClose(res); 2545 return res; 2546 } 2547 2548 protected ClaimResponse.AddedItemAdjudicationComponent parseClaimResponseAddedItemAdjudicationComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 2549 ClaimResponse.AddedItemAdjudicationComponent res = new ClaimResponse.AddedItemAdjudicationComponent(); 2550 parseBackboneAttributes(xpp, res); 2551 next(xpp); 2552 int eventType = nextNoWhitespace(xpp); 2553 while (eventType != XmlPullParser.END_TAG) { 2554 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 2555 res.setCode(parseCoding(xpp)); 2556 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 2557 res.setAmount(parseMoney(xpp)); 2558 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 2559 res.setValueElement(parseDecimal(xpp)); 2560 } else if (!parseBackboneContent(eventType, xpp, res)) 2561 unknownContent(xpp); 2562 eventType = nextNoWhitespace(xpp); 2563 } 2564 next(xpp); 2565 parseElementClose(res); 2566 return res; 2567 } 2568 2569 protected ClaimResponse.AddedItemsDetailComponent parseClaimResponseAddedItemsDetailComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 2570 ClaimResponse.AddedItemsDetailComponent res = new ClaimResponse.AddedItemsDetailComponent(); 2571 parseBackboneAttributes(xpp, res); 2572 next(xpp); 2573 int eventType = nextNoWhitespace(xpp); 2574 while (eventType != XmlPullParser.END_TAG) { 2575 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 2576 res.setService(parseCoding(xpp)); 2577 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fee")) { 2578 res.setFee(parseMoney(xpp)); 2579 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 2580 res.getAdjudication().add(parseClaimResponseAddedItemDetailAdjudicationComponent(xpp, owner)); 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 ClaimResponse.AddedItemDetailAdjudicationComponent parseClaimResponseAddedItemDetailAdjudicationComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 2591 ClaimResponse.AddedItemDetailAdjudicationComponent res = new ClaimResponse.AddedItemDetailAdjudicationComponent(); 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("code")) { 2597 res.setCode(parseCoding(xpp)); 2598 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 2599 res.setAmount(parseMoney(xpp)); 2600 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 2601 res.setValueElement(parseDecimal(xpp)); 2602 } else if (!parseBackboneContent(eventType, xpp, res)) 2603 unknownContent(xpp); 2604 eventType = nextNoWhitespace(xpp); 2605 } 2606 next(xpp); 2607 parseElementClose(res); 2608 return res; 2609 } 2610 2611 protected ClaimResponse.ErrorsComponent parseClaimResponseErrorsComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 2612 ClaimResponse.ErrorsComponent res = new ClaimResponse.ErrorsComponent(); 2613 parseBackboneAttributes(xpp, res); 2614 next(xpp); 2615 int eventType = nextNoWhitespace(xpp); 2616 while (eventType != XmlPullParser.END_TAG) { 2617 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequenceLinkId")) { 2618 res.setSequenceLinkIdElement(parsePositiveInt(xpp)); 2619 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detailSequenceLinkId")) { 2620 res.setDetailSequenceLinkIdElement(parsePositiveInt(xpp)); 2621 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subdetailSequenceLinkId")) { 2622 res.setSubdetailSequenceLinkIdElement(parsePositiveInt(xpp)); 2623 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 2624 res.setCode(parseCoding(xpp)); 2625 } else if (!parseBackboneContent(eventType, xpp, res)) 2626 unknownContent(xpp); 2627 eventType = nextNoWhitespace(xpp); 2628 } 2629 next(xpp); 2630 parseElementClose(res); 2631 return res; 2632 } 2633 2634 protected ClaimResponse.NotesComponent parseClaimResponseNotesComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 2635 ClaimResponse.NotesComponent res = new ClaimResponse.NotesComponent(); 2636 parseBackboneAttributes(xpp, res); 2637 next(xpp); 2638 int eventType = nextNoWhitespace(xpp); 2639 while (eventType != XmlPullParser.END_TAG) { 2640 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("number")) { 2641 res.setNumberElement(parsePositiveInt(xpp)); 2642 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2643 res.setType(parseCoding(xpp)); 2644 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 2645 res.setTextElement(parseString(xpp)); 2646 } else if (!parseBackboneContent(eventType, xpp, res)) 2647 unknownContent(xpp); 2648 eventType = nextNoWhitespace(xpp); 2649 } 2650 next(xpp); 2651 parseElementClose(res); 2652 return res; 2653 } 2654 2655 protected ClaimResponse.CoverageComponent parseClaimResponseCoverageComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 2656 ClaimResponse.CoverageComponent res = new ClaimResponse.CoverageComponent(); 2657 parseBackboneAttributes(xpp, res); 2658 next(xpp); 2659 int eventType = nextNoWhitespace(xpp); 2660 while (eventType != XmlPullParser.END_TAG) { 2661 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 2662 res.setSequenceElement(parsePositiveInt(xpp)); 2663 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focal")) { 2664 res.setFocalElement(parseBoolean(xpp)); 2665 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverage")) { 2666 res.setCoverage(parseReference(xpp)); 2667 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("businessArrangement")) { 2668 res.setBusinessArrangementElement(parseString(xpp)); 2669 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 2670 res.setRelationship(parseCoding(xpp)); 2671 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preAuthRef")) { 2672 res.getPreAuthRef().add(parseString(xpp)); 2673 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("claimResponse")) { 2674 res.setClaimResponse(parseReference(xpp)); 2675 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("originalRuleset")) { 2676 res.setOriginalRuleset(parseCoding(xpp)); 2677 } else if (!parseBackboneContent(eventType, xpp, res)) 2678 unknownContent(xpp); 2679 eventType = nextNoWhitespace(xpp); 2680 } 2681 next(xpp); 2682 parseElementClose(res); 2683 return res; 2684 } 2685 2686 protected ClinicalImpression parseClinicalImpression(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2687 ClinicalImpression res = new ClinicalImpression(); 2688 parseDomainResourceAttributes(xpp, res); 2689 next(xpp); 2690 int eventType = nextNoWhitespace(xpp); 2691 while (eventType != XmlPullParser.END_TAG) { 2692 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 2693 res.setPatient(parseReference(xpp)); 2694 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assessor")) { 2695 res.setAssessor(parseReference(xpp)); 2696 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 2697 res.setStatusElement(parseEnumeration(xpp, ClinicalImpression.ClinicalImpressionStatus.NULL, new ClinicalImpression.ClinicalImpressionStatusEnumFactory())); 2698 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 2699 res.setDateElement(parseDateTime(xpp)); 2700 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 2701 res.setDescriptionElement(parseString(xpp)); 2702 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("previous")) { 2703 res.setPrevious(parseReference(xpp)); 2704 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("problem")) { 2705 res.getProblem().add(parseReference(xpp)); 2706 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "trigger")) { 2707 res.setTrigger(parseType("trigger", xpp)); 2708 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("investigations")) { 2709 res.getInvestigations().add(parseClinicalImpressionClinicalImpressionInvestigationsComponent(xpp, res)); 2710 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("protocol")) { 2711 res.setProtocolElement(parseUri(xpp)); 2712 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("summary")) { 2713 res.setSummaryElement(parseString(xpp)); 2714 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("finding")) { 2715 res.getFinding().add(parseClinicalImpressionClinicalImpressionFindingComponent(xpp, res)); 2716 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resolved")) { 2717 res.getResolved().add(parseCodeableConcept(xpp)); 2718 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruledOut")) { 2719 res.getRuledOut().add(parseClinicalImpressionClinicalImpressionRuledOutComponent(xpp, res)); 2720 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prognosis")) { 2721 res.setPrognosisElement(parseString(xpp)); 2722 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("plan")) { 2723 res.getPlan().add(parseReference(xpp)); 2724 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 2725 res.getAction().add(parseReference(xpp)); 2726 } else if (!parseDomainResourceContent(eventType, xpp, res)) 2727 unknownContent(xpp); 2728 eventType = nextNoWhitespace(xpp); 2729 } 2730 next(xpp); 2731 parseElementClose(res); 2732 return res; 2733 } 2734 2735 protected ClinicalImpression.ClinicalImpressionInvestigationsComponent parseClinicalImpressionClinicalImpressionInvestigationsComponent(XmlPullParser xpp, ClinicalImpression owner) throws XmlPullParserException, IOException, FHIRFormatError { 2736 ClinicalImpression.ClinicalImpressionInvestigationsComponent res = new ClinicalImpression.ClinicalImpressionInvestigationsComponent(); 2737 parseBackboneAttributes(xpp, res); 2738 next(xpp); 2739 int eventType = nextNoWhitespace(xpp); 2740 while (eventType != XmlPullParser.END_TAG) { 2741 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 2742 res.setCode(parseCodeableConcept(xpp)); 2743 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 2744 res.getItem().add(parseReference(xpp)); 2745 } else if (!parseBackboneContent(eventType, xpp, res)) 2746 unknownContent(xpp); 2747 eventType = nextNoWhitespace(xpp); 2748 } 2749 next(xpp); 2750 parseElementClose(res); 2751 return res; 2752 } 2753 2754 protected ClinicalImpression.ClinicalImpressionFindingComponent parseClinicalImpressionClinicalImpressionFindingComponent(XmlPullParser xpp, ClinicalImpression owner) throws XmlPullParserException, IOException, FHIRFormatError { 2755 ClinicalImpression.ClinicalImpressionFindingComponent res = new ClinicalImpression.ClinicalImpressionFindingComponent(); 2756 parseBackboneAttributes(xpp, res); 2757 next(xpp); 2758 int eventType = nextNoWhitespace(xpp); 2759 while (eventType != XmlPullParser.END_TAG) { 2760 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 2761 res.setItem(parseCodeableConcept(xpp)); 2762 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("cause")) { 2763 res.setCauseElement(parseString(xpp)); 2764 } else if (!parseBackboneContent(eventType, xpp, res)) 2765 unknownContent(xpp); 2766 eventType = nextNoWhitespace(xpp); 2767 } 2768 next(xpp); 2769 parseElementClose(res); 2770 return res; 2771 } 2772 2773 protected ClinicalImpression.ClinicalImpressionRuledOutComponent parseClinicalImpressionClinicalImpressionRuledOutComponent(XmlPullParser xpp, ClinicalImpression owner) throws XmlPullParserException, IOException, FHIRFormatError { 2774 ClinicalImpression.ClinicalImpressionRuledOutComponent res = new ClinicalImpression.ClinicalImpressionRuledOutComponent(); 2775 parseBackboneAttributes(xpp, res); 2776 next(xpp); 2777 int eventType = nextNoWhitespace(xpp); 2778 while (eventType != XmlPullParser.END_TAG) { 2779 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 2780 res.setItem(parseCodeableConcept(xpp)); 2781 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 2782 res.setReasonElement(parseString(xpp)); 2783 } else if (!parseBackboneContent(eventType, xpp, res)) 2784 unknownContent(xpp); 2785 eventType = nextNoWhitespace(xpp); 2786 } 2787 next(xpp); 2788 parseElementClose(res); 2789 return res; 2790 } 2791 2792 protected Communication parseCommunication(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2793 Communication res = new Communication(); 2794 parseDomainResourceAttributes(xpp, res); 2795 next(xpp); 2796 int eventType = nextNoWhitespace(xpp); 2797 while (eventType != XmlPullParser.END_TAG) { 2798 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 2799 res.getIdentifier().add(parseIdentifier(xpp)); 2800 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 2801 res.setCategory(parseCodeableConcept(xpp)); 2802 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sender")) { 2803 res.setSender(parseReference(xpp)); 2804 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recipient")) { 2805 res.getRecipient().add(parseReference(xpp)); 2806 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payload")) { 2807 res.getPayload().add(parseCommunicationCommunicationPayloadComponent(xpp, res)); 2808 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("medium")) { 2809 res.getMedium().add(parseCodeableConcept(xpp)); 2810 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 2811 res.setStatusElement(parseEnumeration(xpp, Communication.CommunicationStatus.NULL, new Communication.CommunicationStatusEnumFactory())); 2812 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 2813 res.setEncounter(parseReference(xpp)); 2814 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sent")) { 2815 res.setSentElement(parseDateTime(xpp)); 2816 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("received")) { 2817 res.setReceivedElement(parseDateTime(xpp)); 2818 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 2819 res.getReason().add(parseCodeableConcept(xpp)); 2820 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 2821 res.setSubject(parseReference(xpp)); 2822 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestDetail")) { 2823 res.setRequestDetail(parseReference(xpp)); 2824 } else if (!parseDomainResourceContent(eventType, xpp, res)) 2825 unknownContent(xpp); 2826 eventType = nextNoWhitespace(xpp); 2827 } 2828 next(xpp); 2829 parseElementClose(res); 2830 return res; 2831 } 2832 2833 protected Communication.CommunicationPayloadComponent parseCommunicationCommunicationPayloadComponent(XmlPullParser xpp, Communication owner) throws XmlPullParserException, IOException, FHIRFormatError { 2834 Communication.CommunicationPayloadComponent res = new Communication.CommunicationPayloadComponent(); 2835 parseBackboneAttributes(xpp, res); 2836 next(xpp); 2837 int eventType = nextNoWhitespace(xpp); 2838 while (eventType != XmlPullParser.END_TAG) { 2839 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "content")) { 2840 res.setContent(parseType("content", xpp)); 2841 } else if (!parseBackboneContent(eventType, xpp, res)) 2842 unknownContent(xpp); 2843 eventType = nextNoWhitespace(xpp); 2844 } 2845 next(xpp); 2846 parseElementClose(res); 2847 return res; 2848 } 2849 2850 protected CommunicationRequest parseCommunicationRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2851 CommunicationRequest res = new CommunicationRequest(); 2852 parseDomainResourceAttributes(xpp, res); 2853 next(xpp); 2854 int eventType = nextNoWhitespace(xpp); 2855 while (eventType != XmlPullParser.END_TAG) { 2856 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 2857 res.getIdentifier().add(parseIdentifier(xpp)); 2858 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 2859 res.setCategory(parseCodeableConcept(xpp)); 2860 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sender")) { 2861 res.setSender(parseReference(xpp)); 2862 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recipient")) { 2863 res.getRecipient().add(parseReference(xpp)); 2864 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payload")) { 2865 res.getPayload().add(parseCommunicationRequestCommunicationRequestPayloadComponent(xpp, res)); 2866 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("medium")) { 2867 res.getMedium().add(parseCodeableConcept(xpp)); 2868 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requester")) { 2869 res.setRequester(parseReference(xpp)); 2870 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 2871 res.setStatusElement(parseEnumeration(xpp, CommunicationRequest.CommunicationRequestStatus.NULL, new CommunicationRequest.CommunicationRequestStatusEnumFactory())); 2872 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 2873 res.setEncounter(parseReference(xpp)); 2874 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "scheduled")) { 2875 res.setScheduled(parseType("scheduled", xpp)); 2876 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 2877 res.getReason().add(parseCodeableConcept(xpp)); 2878 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestedOn")) { 2879 res.setRequestedOnElement(parseDateTime(xpp)); 2880 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 2881 res.setSubject(parseReference(xpp)); 2882 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 2883 res.setPriority(parseCodeableConcept(xpp)); 2884 } else if (!parseDomainResourceContent(eventType, xpp, res)) 2885 unknownContent(xpp); 2886 eventType = nextNoWhitespace(xpp); 2887 } 2888 next(xpp); 2889 parseElementClose(res); 2890 return res; 2891 } 2892 2893 protected CommunicationRequest.CommunicationRequestPayloadComponent parseCommunicationRequestCommunicationRequestPayloadComponent(XmlPullParser xpp, CommunicationRequest owner) throws XmlPullParserException, IOException, FHIRFormatError { 2894 CommunicationRequest.CommunicationRequestPayloadComponent res = new CommunicationRequest.CommunicationRequestPayloadComponent(); 2895 parseBackboneAttributes(xpp, res); 2896 next(xpp); 2897 int eventType = nextNoWhitespace(xpp); 2898 while (eventType != XmlPullParser.END_TAG) { 2899 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "content")) { 2900 res.setContent(parseType("content", xpp)); 2901 } else if (!parseBackboneContent(eventType, xpp, res)) 2902 unknownContent(xpp); 2903 eventType = nextNoWhitespace(xpp); 2904 } 2905 next(xpp); 2906 parseElementClose(res); 2907 return res; 2908 } 2909 2910 protected Composition parseComposition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2911 Composition res = new Composition(); 2912 parseDomainResourceAttributes(xpp, res); 2913 next(xpp); 2914 int eventType = nextNoWhitespace(xpp); 2915 while (eventType != XmlPullParser.END_TAG) { 2916 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 2917 res.setIdentifier(parseIdentifier(xpp)); 2918 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 2919 res.setDateElement(parseDateTime(xpp)); 2920 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2921 res.setType(parseCodeableConcept(xpp)); 2922 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("class")) { 2923 res.setClass_(parseCodeableConcept(xpp)); 2924 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 2925 res.setTitleElement(parseString(xpp)); 2926 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 2927 res.setStatusElement(parseEnumeration(xpp, Composition.CompositionStatus.NULL, new Composition.CompositionStatusEnumFactory())); 2928 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("confidentiality")) { 2929 res.setConfidentialityElement(parseCode(xpp)); 2930 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 2931 res.setSubject(parseReference(xpp)); 2932 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 2933 res.getAuthor().add(parseReference(xpp)); 2934 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("attester")) { 2935 res.getAttester().add(parseCompositionCompositionAttesterComponent(xpp, res)); 2936 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("custodian")) { 2937 res.setCustodian(parseReference(xpp)); 2938 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 2939 res.getEvent().add(parseCompositionCompositionEventComponent(xpp, res)); 2940 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 2941 res.setEncounter(parseReference(xpp)); 2942 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("section")) { 2943 res.getSection().add(parseCompositionSectionComponent(xpp, res)); 2944 } else if (!parseDomainResourceContent(eventType, xpp, res)) 2945 unknownContent(xpp); 2946 eventType = nextNoWhitespace(xpp); 2947 } 2948 next(xpp); 2949 parseElementClose(res); 2950 return res; 2951 } 2952 2953 protected Composition.CompositionAttesterComponent parseCompositionCompositionAttesterComponent(XmlPullParser xpp, Composition owner) throws XmlPullParserException, IOException, FHIRFormatError { 2954 Composition.CompositionAttesterComponent res = new Composition.CompositionAttesterComponent(); 2955 parseBackboneAttributes(xpp, res); 2956 next(xpp); 2957 int eventType = nextNoWhitespace(xpp); 2958 while (eventType != XmlPullParser.END_TAG) { 2959 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 2960 res.getMode().add(parseEnumeration(xpp, Composition.CompositionAttestationMode.NULL, new Composition.CompositionAttestationModeEnumFactory())); 2961 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("time")) { 2962 res.setTimeElement(parseDateTime(xpp)); 2963 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("party")) { 2964 res.setParty(parseReference(xpp)); 2965 } else if (!parseBackboneContent(eventType, xpp, res)) 2966 unknownContent(xpp); 2967 eventType = nextNoWhitespace(xpp); 2968 } 2969 next(xpp); 2970 parseElementClose(res); 2971 return res; 2972 } 2973 2974 protected Composition.CompositionEventComponent parseCompositionCompositionEventComponent(XmlPullParser xpp, Composition owner) throws XmlPullParserException, IOException, FHIRFormatError { 2975 Composition.CompositionEventComponent res = new Composition.CompositionEventComponent(); 2976 parseBackboneAttributes(xpp, res); 2977 next(xpp); 2978 int eventType = nextNoWhitespace(xpp); 2979 while (eventType != XmlPullParser.END_TAG) { 2980 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 2981 res.getCode().add(parseCodeableConcept(xpp)); 2982 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 2983 res.setPeriod(parsePeriod(xpp)); 2984 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 2985 res.getDetail().add(parseReference(xpp)); 2986 } else if (!parseBackboneContent(eventType, xpp, res)) 2987 unknownContent(xpp); 2988 eventType = nextNoWhitespace(xpp); 2989 } 2990 next(xpp); 2991 parseElementClose(res); 2992 return res; 2993 } 2994 2995 protected Composition.SectionComponent parseCompositionSectionComponent(XmlPullParser xpp, Composition owner) throws XmlPullParserException, IOException, FHIRFormatError { 2996 Composition.SectionComponent res = new Composition.SectionComponent(); 2997 parseBackboneAttributes(xpp, res); 2998 next(xpp); 2999 int eventType = nextNoWhitespace(xpp); 3000 while (eventType != XmlPullParser.END_TAG) { 3001 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 3002 res.setTitleElement(parseString(xpp)); 3003 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3004 res.setCode(parseCodeableConcept(xpp)); 3005 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 3006 res.setText(parseNarrative(xpp)); 3007 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 3008 res.setModeElement(parseCode(xpp)); 3009 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orderedBy")) { 3010 res.setOrderedBy(parseCodeableConcept(xpp)); 3011 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entry")) { 3012 res.getEntry().add(parseReference(xpp)); 3013 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("emptyReason")) { 3014 res.setEmptyReason(parseCodeableConcept(xpp)); 3015 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("section")) { 3016 res.getSection().add(parseCompositionSectionComponent(xpp, owner)); 3017 } else if (!parseBackboneContent(eventType, xpp, res)) 3018 unknownContent(xpp); 3019 eventType = nextNoWhitespace(xpp); 3020 } 3021 next(xpp); 3022 parseElementClose(res); 3023 return res; 3024 } 3025 3026 protected ConceptMap parseConceptMap(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3027 ConceptMap res = new ConceptMap(); 3028 parseDomainResourceAttributes(xpp, res); 3029 next(xpp); 3030 int eventType = nextNoWhitespace(xpp); 3031 while (eventType != XmlPullParser.END_TAG) { 3032 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 3033 res.setUrlElement(parseUri(xpp)); 3034 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 3035 res.setIdentifier(parseIdentifier(xpp)); 3036 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 3037 res.setVersionElement(parseString(xpp)); 3038 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 3039 res.setNameElement(parseString(xpp)); 3040 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 3041 res.setStatusElement(parseEnumeration(xpp, Enumerations.ConformanceResourceStatus.NULL, new Enumerations.ConformanceResourceStatusEnumFactory())); 3042 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 3043 res.setExperimentalElement(parseBoolean(xpp)); 3044 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 3045 res.setPublisherElement(parseString(xpp)); 3046 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 3047 res.getContact().add(parseConceptMapConceptMapContactComponent(xpp, res)); 3048 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 3049 res.setDateElement(parseDateTime(xpp)); 3050 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 3051 res.setDescriptionElement(parseString(xpp)); 3052 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 3053 res.getUseContext().add(parseCodeableConcept(xpp)); 3054 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirements")) { 3055 res.setRequirementsElement(parseString(xpp)); 3056 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 3057 res.setCopyrightElement(parseString(xpp)); 3058 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "source")) { 3059 res.setSource(parseType("source", xpp)); 3060 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "target")) { 3061 res.setTarget(parseType("target", xpp)); 3062 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("element")) { 3063 res.getElement().add(parseConceptMapSourceElementComponent(xpp, res)); 3064 } else if (!parseDomainResourceContent(eventType, xpp, res)) 3065 unknownContent(xpp); 3066 eventType = nextNoWhitespace(xpp); 3067 } 3068 next(xpp); 3069 parseElementClose(res); 3070 return res; 3071 } 3072 3073 protected ConceptMap.ConceptMapContactComponent parseConceptMapConceptMapContactComponent(XmlPullParser xpp, ConceptMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 3074 ConceptMap.ConceptMapContactComponent res = new ConceptMap.ConceptMapContactComponent(); 3075 parseBackboneAttributes(xpp, res); 3076 next(xpp); 3077 int eventType = nextNoWhitespace(xpp); 3078 while (eventType != XmlPullParser.END_TAG) { 3079 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 3080 res.setNameElement(parseString(xpp)); 3081 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 3082 res.getTelecom().add(parseContactPoint(xpp)); 3083 } else if (!parseBackboneContent(eventType, xpp, res)) 3084 unknownContent(xpp); 3085 eventType = nextNoWhitespace(xpp); 3086 } 3087 next(xpp); 3088 parseElementClose(res); 3089 return res; 3090 } 3091 3092 protected ConceptMap.SourceElementComponent parseConceptMapSourceElementComponent(XmlPullParser xpp, ConceptMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 3093 ConceptMap.SourceElementComponent res = new ConceptMap.SourceElementComponent(); 3094 parseBackboneAttributes(xpp, res); 3095 next(xpp); 3096 int eventType = nextNoWhitespace(xpp); 3097 while (eventType != XmlPullParser.END_TAG) { 3098 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("codeSystem")) { 3099 res.setCodeSystemElement(parseUri(xpp)); 3100 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3101 res.setCodeElement(parseCode(xpp)); 3102 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 3103 res.getTarget().add(parseConceptMapTargetElementComponent(xpp, owner)); 3104 } else if (!parseBackboneContent(eventType, xpp, res)) 3105 unknownContent(xpp); 3106 eventType = nextNoWhitespace(xpp); 3107 } 3108 next(xpp); 3109 parseElementClose(res); 3110 return res; 3111 } 3112 3113 protected ConceptMap.TargetElementComponent parseConceptMapTargetElementComponent(XmlPullParser xpp, ConceptMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 3114 ConceptMap.TargetElementComponent res = new ConceptMap.TargetElementComponent(); 3115 parseBackboneAttributes(xpp, res); 3116 next(xpp); 3117 int eventType = nextNoWhitespace(xpp); 3118 while (eventType != XmlPullParser.END_TAG) { 3119 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("codeSystem")) { 3120 res.setCodeSystemElement(parseUri(xpp)); 3121 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3122 res.setCodeElement(parseCode(xpp)); 3123 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("equivalence")) { 3124 res.setEquivalenceElement(parseEnumeration(xpp, Enumerations.ConceptMapEquivalence.NULL, new Enumerations.ConceptMapEquivalenceEnumFactory())); 3125 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comments")) { 3126 res.setCommentsElement(parseString(xpp)); 3127 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dependsOn")) { 3128 res.getDependsOn().add(parseConceptMapOtherElementComponent(xpp, owner)); 3129 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("product")) { 3130 res.getProduct().add(parseConceptMapOtherElementComponent(xpp, owner)); 3131 } else if (!parseBackboneContent(eventType, xpp, res)) 3132 unknownContent(xpp); 3133 eventType = nextNoWhitespace(xpp); 3134 } 3135 next(xpp); 3136 parseElementClose(res); 3137 return res; 3138 } 3139 3140 protected ConceptMap.OtherElementComponent parseConceptMapOtherElementComponent(XmlPullParser xpp, ConceptMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 3141 ConceptMap.OtherElementComponent res = new ConceptMap.OtherElementComponent(); 3142 parseBackboneAttributes(xpp, res); 3143 next(xpp); 3144 int eventType = nextNoWhitespace(xpp); 3145 while (eventType != XmlPullParser.END_TAG) { 3146 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("element")) { 3147 res.setElementElement(parseUri(xpp)); 3148 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("codeSystem")) { 3149 res.setCodeSystemElement(parseUri(xpp)); 3150 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3151 res.setCodeElement(parseString(xpp)); 3152 } else if (!parseBackboneContent(eventType, xpp, res)) 3153 unknownContent(xpp); 3154 eventType = nextNoWhitespace(xpp); 3155 } 3156 next(xpp); 3157 parseElementClose(res); 3158 return res; 3159 } 3160 3161 protected Condition parseCondition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3162 Condition res = new Condition(); 3163 parseDomainResourceAttributes(xpp, res); 3164 next(xpp); 3165 int eventType = nextNoWhitespace(xpp); 3166 while (eventType != XmlPullParser.END_TAG) { 3167 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 3168 res.getIdentifier().add(parseIdentifier(xpp)); 3169 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 3170 res.setPatient(parseReference(xpp)); 3171 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 3172 res.setEncounter(parseReference(xpp)); 3173 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("asserter")) { 3174 res.setAsserter(parseReference(xpp)); 3175 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateRecorded")) { 3176 res.setDateRecordedElement(parseDate(xpp)); 3177 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3178 res.setCode(parseCodeableConcept(xpp)); 3179 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 3180 res.setCategory(parseCodeableConcept(xpp)); 3181 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("clinicalStatus")) { 3182 res.setClinicalStatusElement(parseCode(xpp)); 3183 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("verificationStatus")) { 3184 res.setVerificationStatusElement(parseEnumeration(xpp, Condition.ConditionVerificationStatus.NULL, new Condition.ConditionVerificationStatusEnumFactory())); 3185 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("severity")) { 3186 res.setSeverity(parseCodeableConcept(xpp)); 3187 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "onset")) { 3188 res.setOnset(parseType("onset", xpp)); 3189 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "abatement")) { 3190 res.setAbatement(parseType("abatement", xpp)); 3191 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("stage")) { 3192 res.setStage(parseConditionConditionStageComponent(xpp, res)); 3193 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("evidence")) { 3194 res.getEvidence().add(parseConditionConditionEvidenceComponent(xpp, res)); 3195 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 3196 res.getBodySite().add(parseCodeableConcept(xpp)); 3197 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notes")) { 3198 res.setNotesElement(parseString(xpp)); 3199 } else if (!parseDomainResourceContent(eventType, xpp, res)) 3200 unknownContent(xpp); 3201 eventType = nextNoWhitespace(xpp); 3202 } 3203 next(xpp); 3204 parseElementClose(res); 3205 return res; 3206 } 3207 3208 protected Condition.ConditionStageComponent parseConditionConditionStageComponent(XmlPullParser xpp, Condition owner) throws XmlPullParserException, IOException, FHIRFormatError { 3209 Condition.ConditionStageComponent res = new Condition.ConditionStageComponent(); 3210 parseBackboneAttributes(xpp, res); 3211 next(xpp); 3212 int eventType = nextNoWhitespace(xpp); 3213 while (eventType != XmlPullParser.END_TAG) { 3214 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("summary")) { 3215 res.setSummary(parseCodeableConcept(xpp)); 3216 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assessment")) { 3217 res.getAssessment().add(parseReference(xpp)); 3218 } else if (!parseBackboneContent(eventType, xpp, res)) 3219 unknownContent(xpp); 3220 eventType = nextNoWhitespace(xpp); 3221 } 3222 next(xpp); 3223 parseElementClose(res); 3224 return res; 3225 } 3226 3227 protected Condition.ConditionEvidenceComponent parseConditionConditionEvidenceComponent(XmlPullParser xpp, Condition owner) throws XmlPullParserException, IOException, FHIRFormatError { 3228 Condition.ConditionEvidenceComponent res = new Condition.ConditionEvidenceComponent(); 3229 parseBackboneAttributes(xpp, res); 3230 next(xpp); 3231 int eventType = nextNoWhitespace(xpp); 3232 while (eventType != XmlPullParser.END_TAG) { 3233 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3234 res.setCode(parseCodeableConcept(xpp)); 3235 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 3236 res.getDetail().add(parseReference(xpp)); 3237 } else if (!parseBackboneContent(eventType, xpp, res)) 3238 unknownContent(xpp); 3239 eventType = nextNoWhitespace(xpp); 3240 } 3241 next(xpp); 3242 parseElementClose(res); 3243 return res; 3244 } 3245 3246 protected Conformance parseConformance(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3247 Conformance res = new Conformance(); 3248 parseDomainResourceAttributes(xpp, res); 3249 next(xpp); 3250 int eventType = nextNoWhitespace(xpp); 3251 while (eventType != XmlPullParser.END_TAG) { 3252 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 3253 res.setUrlElement(parseUri(xpp)); 3254 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 3255 res.setVersionElement(parseString(xpp)); 3256 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 3257 res.setNameElement(parseString(xpp)); 3258 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 3259 res.setStatusElement(parseEnumeration(xpp, Enumerations.ConformanceResourceStatus.NULL, new Enumerations.ConformanceResourceStatusEnumFactory())); 3260 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 3261 res.setExperimentalElement(parseBoolean(xpp)); 3262 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 3263 res.setPublisherElement(parseString(xpp)); 3264 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 3265 res.getContact().add(parseConformanceConformanceContactComponent(xpp, res)); 3266 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 3267 res.setDateElement(parseDateTime(xpp)); 3268 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 3269 res.setDescriptionElement(parseString(xpp)); 3270 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirements")) { 3271 res.setRequirementsElement(parseString(xpp)); 3272 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 3273 res.setCopyrightElement(parseString(xpp)); 3274 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 3275 res.setKindElement(parseEnumeration(xpp, Conformance.ConformanceStatementKind.NULL, new Conformance.ConformanceStatementKindEnumFactory())); 3276 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("software")) { 3277 res.setSoftware(parseConformanceConformanceSoftwareComponent(xpp, res)); 3278 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("implementation")) { 3279 res.setImplementation(parseConformanceConformanceImplementationComponent(xpp, res)); 3280 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fhirVersion")) { 3281 res.setFhirVersionElement(parseId(xpp)); 3282 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("acceptUnknown")) { 3283 res.setAcceptUnknownElement(parseEnumeration(xpp, Conformance.UnknownContentCode.NULL, new Conformance.UnknownContentCodeEnumFactory())); 3284 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("format")) { 3285 res.getFormat().add(parseCode(xpp)); 3286 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 3287 res.getProfile().add(parseReference(xpp)); 3288 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rest")) { 3289 res.getRest().add(parseConformanceConformanceRestComponent(xpp, res)); 3290 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("messaging")) { 3291 res.getMessaging().add(parseConformanceConformanceMessagingComponent(xpp, res)); 3292 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("document")) { 3293 res.getDocument().add(parseConformanceConformanceDocumentComponent(xpp, res)); 3294 } else if (!parseDomainResourceContent(eventType, xpp, res)) 3295 unknownContent(xpp); 3296 eventType = nextNoWhitespace(xpp); 3297 } 3298 next(xpp); 3299 parseElementClose(res); 3300 return res; 3301 } 3302 3303 protected Conformance.ConformanceContactComponent parseConformanceConformanceContactComponent(XmlPullParser xpp, Conformance owner) throws XmlPullParserException, IOException, FHIRFormatError { 3304 Conformance.ConformanceContactComponent res = new Conformance.ConformanceContactComponent(); 3305 parseBackboneAttributes(xpp, res); 3306 next(xpp); 3307 int eventType = nextNoWhitespace(xpp); 3308 while (eventType != XmlPullParser.END_TAG) { 3309 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 3310 res.setNameElement(parseString(xpp)); 3311 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 3312 res.getTelecom().add(parseContactPoint(xpp)); 3313 } else if (!parseBackboneContent(eventType, xpp, res)) 3314 unknownContent(xpp); 3315 eventType = nextNoWhitespace(xpp); 3316 } 3317 next(xpp); 3318 parseElementClose(res); 3319 return res; 3320 } 3321 3322 protected Conformance.ConformanceSoftwareComponent parseConformanceConformanceSoftwareComponent(XmlPullParser xpp, Conformance owner) throws XmlPullParserException, IOException, FHIRFormatError { 3323 Conformance.ConformanceSoftwareComponent res = new Conformance.ConformanceSoftwareComponent(); 3324 parseBackboneAttributes(xpp, res); 3325 next(xpp); 3326 int eventType = nextNoWhitespace(xpp); 3327 while (eventType != XmlPullParser.END_TAG) { 3328 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 3329 res.setNameElement(parseString(xpp)); 3330 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 3331 res.setVersionElement(parseString(xpp)); 3332 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("releaseDate")) { 3333 res.setReleaseDateElement(parseDateTime(xpp)); 3334 } else if (!parseBackboneContent(eventType, xpp, res)) 3335 unknownContent(xpp); 3336 eventType = nextNoWhitespace(xpp); 3337 } 3338 next(xpp); 3339 parseElementClose(res); 3340 return res; 3341 } 3342 3343 protected Conformance.ConformanceImplementationComponent parseConformanceConformanceImplementationComponent(XmlPullParser xpp, Conformance owner) throws XmlPullParserException, IOException, FHIRFormatError { 3344 Conformance.ConformanceImplementationComponent res = new Conformance.ConformanceImplementationComponent(); 3345 parseBackboneAttributes(xpp, res); 3346 next(xpp); 3347 int eventType = nextNoWhitespace(xpp); 3348 while (eventType != XmlPullParser.END_TAG) { 3349 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 3350 res.setDescriptionElement(parseString(xpp)); 3351 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 3352 res.setUrlElement(parseUri(xpp)); 3353 } else if (!parseBackboneContent(eventType, xpp, res)) 3354 unknownContent(xpp); 3355 eventType = nextNoWhitespace(xpp); 3356 } 3357 next(xpp); 3358 parseElementClose(res); 3359 return res; 3360 } 3361 3362 protected Conformance.ConformanceRestComponent parseConformanceConformanceRestComponent(XmlPullParser xpp, Conformance owner) throws XmlPullParserException, IOException, FHIRFormatError { 3363 Conformance.ConformanceRestComponent res = new Conformance.ConformanceRestComponent(); 3364 parseBackboneAttributes(xpp, res); 3365 next(xpp); 3366 int eventType = nextNoWhitespace(xpp); 3367 while (eventType != XmlPullParser.END_TAG) { 3368 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 3369 res.setModeElement(parseEnumeration(xpp, Conformance.RestfulConformanceMode.NULL, new Conformance.RestfulConformanceModeEnumFactory())); 3370 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 3371 res.setDocumentationElement(parseString(xpp)); 3372 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("security")) { 3373 res.setSecurity(parseConformanceConformanceRestSecurityComponent(xpp, owner)); 3374 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 3375 res.getResource().add(parseConformanceConformanceRestResourceComponent(xpp, owner)); 3376 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("interaction")) { 3377 res.getInteraction().add(parseConformanceSystemInteractionComponent(xpp, owner)); 3378 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("transactionMode")) { 3379 res.setTransactionModeElement(parseEnumeration(xpp, Conformance.TransactionMode.NULL, new Conformance.TransactionModeEnumFactory())); 3380 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("searchParam")) { 3381 res.getSearchParam().add(parseConformanceConformanceRestResourceSearchParamComponent(xpp, owner)); 3382 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operation")) { 3383 res.getOperation().add(parseConformanceConformanceRestOperationComponent(xpp, owner)); 3384 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("compartment")) { 3385 res.getCompartment().add(parseUri(xpp)); 3386 } else if (!parseBackboneContent(eventType, xpp, res)) 3387 unknownContent(xpp); 3388 eventType = nextNoWhitespace(xpp); 3389 } 3390 next(xpp); 3391 parseElementClose(res); 3392 return res; 3393 } 3394 3395 protected Conformance.ConformanceRestSecurityComponent parseConformanceConformanceRestSecurityComponent(XmlPullParser xpp, Conformance owner) throws XmlPullParserException, IOException, FHIRFormatError { 3396 Conformance.ConformanceRestSecurityComponent res = new Conformance.ConformanceRestSecurityComponent(); 3397 parseBackboneAttributes(xpp, res); 3398 next(xpp); 3399 int eventType = nextNoWhitespace(xpp); 3400 while (eventType != XmlPullParser.END_TAG) { 3401 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("cors")) { 3402 res.setCorsElement(parseBoolean(xpp)); 3403 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 3404 res.getService().add(parseCodeableConcept(xpp)); 3405 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 3406 res.setDescriptionElement(parseString(xpp)); 3407 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("certificate")) { 3408 res.getCertificate().add(parseConformanceConformanceRestSecurityCertificateComponent(xpp, owner)); 3409 } else if (!parseBackboneContent(eventType, xpp, res)) 3410 unknownContent(xpp); 3411 eventType = nextNoWhitespace(xpp); 3412 } 3413 next(xpp); 3414 parseElementClose(res); 3415 return res; 3416 } 3417 3418 protected Conformance.ConformanceRestSecurityCertificateComponent parseConformanceConformanceRestSecurityCertificateComponent(XmlPullParser xpp, Conformance owner) throws XmlPullParserException, IOException, FHIRFormatError { 3419 Conformance.ConformanceRestSecurityCertificateComponent res = new Conformance.ConformanceRestSecurityCertificateComponent(); 3420 parseBackboneAttributes(xpp, res); 3421 next(xpp); 3422 int eventType = nextNoWhitespace(xpp); 3423 while (eventType != XmlPullParser.END_TAG) { 3424 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 3425 res.setTypeElement(parseCode(xpp)); 3426 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("blob")) { 3427 res.setBlobElement(parseBase64Binary(xpp)); 3428 } else if (!parseBackboneContent(eventType, xpp, res)) 3429 unknownContent(xpp); 3430 eventType = nextNoWhitespace(xpp); 3431 } 3432 next(xpp); 3433 parseElementClose(res); 3434 return res; 3435 } 3436 3437 protected Conformance.ConformanceRestResourceComponent parseConformanceConformanceRestResourceComponent(XmlPullParser xpp, Conformance owner) throws XmlPullParserException, IOException, FHIRFormatError { 3438 Conformance.ConformanceRestResourceComponent res = new Conformance.ConformanceRestResourceComponent(); 3439 parseBackboneAttributes(xpp, res); 3440 next(xpp); 3441 int eventType = nextNoWhitespace(xpp); 3442 while (eventType != XmlPullParser.END_TAG) { 3443 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 3444 res.setTypeElement(parseCode(xpp)); 3445 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 3446 res.setProfile(parseReference(xpp)); 3447 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("interaction")) { 3448 res.getInteraction().add(parseConformanceResourceInteractionComponent(xpp, owner)); 3449 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("versioning")) { 3450 res.setVersioningElement(parseEnumeration(xpp, Conformance.ResourceVersionPolicy.NULL, new Conformance.ResourceVersionPolicyEnumFactory())); 3451 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("readHistory")) { 3452 res.setReadHistoryElement(parseBoolean(xpp)); 3453 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("updateCreate")) { 3454 res.setUpdateCreateElement(parseBoolean(xpp)); 3455 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("conditionalCreate")) { 3456 res.setConditionalCreateElement(parseBoolean(xpp)); 3457 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("conditionalUpdate")) { 3458 res.setConditionalUpdateElement(parseBoolean(xpp)); 3459 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("conditionalDelete")) { 3460 res.setConditionalDeleteElement(parseEnumeration(xpp, Conformance.ConditionalDeleteStatus.NULL, new Conformance.ConditionalDeleteStatusEnumFactory())); 3461 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("searchInclude")) { 3462 res.getSearchInclude().add(parseString(xpp)); 3463 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("searchRevInclude")) { 3464 res.getSearchRevInclude().add(parseString(xpp)); 3465 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("searchParam")) { 3466 res.getSearchParam().add(parseConformanceConformanceRestResourceSearchParamComponent(xpp, owner)); 3467 } else if (!parseBackboneContent(eventType, xpp, res)) 3468 unknownContent(xpp); 3469 eventType = nextNoWhitespace(xpp); 3470 } 3471 next(xpp); 3472 parseElementClose(res); 3473 return res; 3474 } 3475 3476 protected Conformance.ResourceInteractionComponent parseConformanceResourceInteractionComponent(XmlPullParser xpp, Conformance owner) throws XmlPullParserException, IOException, FHIRFormatError { 3477 Conformance.ResourceInteractionComponent res = new Conformance.ResourceInteractionComponent(); 3478 parseBackboneAttributes(xpp, res); 3479 next(xpp); 3480 int eventType = nextNoWhitespace(xpp); 3481 while (eventType != XmlPullParser.END_TAG) { 3482 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3483 res.setCodeElement(parseEnumeration(xpp, Conformance.TypeRestfulInteraction.NULL, new Conformance.TypeRestfulInteractionEnumFactory())); 3484 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 3485 res.setDocumentationElement(parseString(xpp)); 3486 } else if (!parseBackboneContent(eventType, xpp, res)) 3487 unknownContent(xpp); 3488 eventType = nextNoWhitespace(xpp); 3489 } 3490 next(xpp); 3491 parseElementClose(res); 3492 return res; 3493 } 3494 3495 protected Conformance.ConformanceRestResourceSearchParamComponent parseConformanceConformanceRestResourceSearchParamComponent(XmlPullParser xpp, Conformance owner) throws XmlPullParserException, IOException, FHIRFormatError { 3496 Conformance.ConformanceRestResourceSearchParamComponent res = new Conformance.ConformanceRestResourceSearchParamComponent(); 3497 parseBackboneAttributes(xpp, res); 3498 next(xpp); 3499 int eventType = nextNoWhitespace(xpp); 3500 while (eventType != XmlPullParser.END_TAG) { 3501 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 3502 res.setNameElement(parseString(xpp)); 3503 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 3504 res.setDefinitionElement(parseUri(xpp)); 3505 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 3506 res.setTypeElement(parseEnumeration(xpp, Enumerations.SearchParamType.NULL, new Enumerations.SearchParamTypeEnumFactory())); 3507 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 3508 res.setDocumentationElement(parseString(xpp)); 3509 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 3510 res.getTarget().add(parseCode(xpp)); 3511 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 3512 res.getModifier().add(parseEnumeration(xpp, Conformance.SearchModifierCode.NULL, new Conformance.SearchModifierCodeEnumFactory())); 3513 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("chain")) { 3514 res.getChain().add(parseString(xpp)); 3515 } else if (!parseBackboneContent(eventType, xpp, res)) 3516 unknownContent(xpp); 3517 eventType = nextNoWhitespace(xpp); 3518 } 3519 next(xpp); 3520 parseElementClose(res); 3521 return res; 3522 } 3523 3524 protected Conformance.SystemInteractionComponent parseConformanceSystemInteractionComponent(XmlPullParser xpp, Conformance owner) throws XmlPullParserException, IOException, FHIRFormatError { 3525 Conformance.SystemInteractionComponent res = new Conformance.SystemInteractionComponent(); 3526 parseBackboneAttributes(xpp, res); 3527 next(xpp); 3528 int eventType = nextNoWhitespace(xpp); 3529 while (eventType != XmlPullParser.END_TAG) { 3530 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3531 res.setCodeElement(parseEnumeration(xpp, Conformance.SystemRestfulInteraction.NULL, new Conformance.SystemRestfulInteractionEnumFactory())); 3532 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 3533 res.setDocumentationElement(parseString(xpp)); 3534 } else if (!parseBackboneContent(eventType, xpp, res)) 3535 unknownContent(xpp); 3536 eventType = nextNoWhitespace(xpp); 3537 } 3538 next(xpp); 3539 parseElementClose(res); 3540 return res; 3541 } 3542 3543 protected Conformance.ConformanceRestOperationComponent parseConformanceConformanceRestOperationComponent(XmlPullParser xpp, Conformance owner) throws XmlPullParserException, IOException, FHIRFormatError { 3544 Conformance.ConformanceRestOperationComponent res = new Conformance.ConformanceRestOperationComponent(); 3545 parseBackboneAttributes(xpp, res); 3546 next(xpp); 3547 int eventType = nextNoWhitespace(xpp); 3548 while (eventType != XmlPullParser.END_TAG) { 3549 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 3550 res.setNameElement(parseString(xpp)); 3551 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 3552 res.setDefinition(parseReference(xpp)); 3553 } else if (!parseBackboneContent(eventType, xpp, res)) 3554 unknownContent(xpp); 3555 eventType = nextNoWhitespace(xpp); 3556 } 3557 next(xpp); 3558 parseElementClose(res); 3559 return res; 3560 } 3561 3562 protected Conformance.ConformanceMessagingComponent parseConformanceConformanceMessagingComponent(XmlPullParser xpp, Conformance owner) throws XmlPullParserException, IOException, FHIRFormatError { 3563 Conformance.ConformanceMessagingComponent res = new Conformance.ConformanceMessagingComponent(); 3564 parseBackboneAttributes(xpp, res); 3565 next(xpp); 3566 int eventType = nextNoWhitespace(xpp); 3567 while (eventType != XmlPullParser.END_TAG) { 3568 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 3569 res.getEndpoint().add(parseConformanceConformanceMessagingEndpointComponent(xpp, owner)); 3570 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reliableCache")) { 3571 res.setReliableCacheElement(parseUnsignedInt(xpp)); 3572 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 3573 res.setDocumentationElement(parseString(xpp)); 3574 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 3575 res.getEvent().add(parseConformanceConformanceMessagingEventComponent(xpp, owner)); 3576 } else if (!parseBackboneContent(eventType, xpp, res)) 3577 unknownContent(xpp); 3578 eventType = nextNoWhitespace(xpp); 3579 } 3580 next(xpp); 3581 parseElementClose(res); 3582 return res; 3583 } 3584 3585 protected Conformance.ConformanceMessagingEndpointComponent parseConformanceConformanceMessagingEndpointComponent(XmlPullParser xpp, Conformance owner) throws XmlPullParserException, IOException, FHIRFormatError { 3586 Conformance.ConformanceMessagingEndpointComponent res = new Conformance.ConformanceMessagingEndpointComponent(); 3587 parseBackboneAttributes(xpp, res); 3588 next(xpp); 3589 int eventType = nextNoWhitespace(xpp); 3590 while (eventType != XmlPullParser.END_TAG) { 3591 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("protocol")) { 3592 res.setProtocol(parseCoding(xpp)); 3593 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 3594 res.setAddressElement(parseUri(xpp)); 3595 } else if (!parseBackboneContent(eventType, xpp, res)) 3596 unknownContent(xpp); 3597 eventType = nextNoWhitespace(xpp); 3598 } 3599 next(xpp); 3600 parseElementClose(res); 3601 return res; 3602 } 3603 3604 protected Conformance.ConformanceMessagingEventComponent parseConformanceConformanceMessagingEventComponent(XmlPullParser xpp, Conformance owner) throws XmlPullParserException, IOException, FHIRFormatError { 3605 Conformance.ConformanceMessagingEventComponent res = new Conformance.ConformanceMessagingEventComponent(); 3606 parseBackboneAttributes(xpp, res); 3607 next(xpp); 3608 int eventType = nextNoWhitespace(xpp); 3609 while (eventType != XmlPullParser.END_TAG) { 3610 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3611 res.setCode(parseCoding(xpp)); 3612 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 3613 res.setCategoryElement(parseEnumeration(xpp, Conformance.MessageSignificanceCategory.NULL, new Conformance.MessageSignificanceCategoryEnumFactory())); 3614 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 3615 res.setModeElement(parseEnumeration(xpp, Conformance.ConformanceEventMode.NULL, new Conformance.ConformanceEventModeEnumFactory())); 3616 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focus")) { 3617 res.setFocusElement(parseCode(xpp)); 3618 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 3619 res.setRequest(parseReference(xpp)); 3620 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("response")) { 3621 res.setResponse(parseReference(xpp)); 3622 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 3623 res.setDocumentationElement(parseString(xpp)); 3624 } else if (!parseBackboneContent(eventType, xpp, res)) 3625 unknownContent(xpp); 3626 eventType = nextNoWhitespace(xpp); 3627 } 3628 next(xpp); 3629 parseElementClose(res); 3630 return res; 3631 } 3632 3633 protected Conformance.ConformanceDocumentComponent parseConformanceConformanceDocumentComponent(XmlPullParser xpp, Conformance owner) throws XmlPullParserException, IOException, FHIRFormatError { 3634 Conformance.ConformanceDocumentComponent res = new Conformance.ConformanceDocumentComponent(); 3635 parseBackboneAttributes(xpp, res); 3636 next(xpp); 3637 int eventType = nextNoWhitespace(xpp); 3638 while (eventType != XmlPullParser.END_TAG) { 3639 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 3640 res.setModeElement(parseEnumeration(xpp, Conformance.DocumentMode.NULL, new Conformance.DocumentModeEnumFactory())); 3641 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 3642 res.setDocumentationElement(parseString(xpp)); 3643 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 3644 res.setProfile(parseReference(xpp)); 3645 } else if (!parseBackboneContent(eventType, xpp, res)) 3646 unknownContent(xpp); 3647 eventType = nextNoWhitespace(xpp); 3648 } 3649 next(xpp); 3650 parseElementClose(res); 3651 return res; 3652 } 3653 3654 protected Contract parseContract(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3655 Contract res = new Contract(); 3656 parseDomainResourceAttributes(xpp, res); 3657 next(xpp); 3658 int eventType = nextNoWhitespace(xpp); 3659 while (eventType != XmlPullParser.END_TAG) { 3660 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 3661 res.setIdentifier(parseIdentifier(xpp)); 3662 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issued")) { 3663 res.setIssuedElement(parseDateTime(xpp)); 3664 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("applies")) { 3665 res.setApplies(parsePeriod(xpp)); 3666 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 3667 res.getSubject().add(parseReference(xpp)); 3668 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authority")) { 3669 res.getAuthority().add(parseReference(xpp)); 3670 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("domain")) { 3671 res.getDomain().add(parseReference(xpp)); 3672 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 3673 res.setType(parseCodeableConcept(xpp)); 3674 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subType")) { 3675 res.getSubType().add(parseCodeableConcept(xpp)); 3676 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 3677 res.getAction().add(parseCodeableConcept(xpp)); 3678 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actionReason")) { 3679 res.getActionReason().add(parseCodeableConcept(xpp)); 3680 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 3681 res.getActor().add(parseContractActorComponent(xpp, res)); 3682 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valuedItem")) { 3683 res.getValuedItem().add(parseContractValuedItemComponent(xpp, res)); 3684 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("signer")) { 3685 res.getSigner().add(parseContractSignatoryComponent(xpp, res)); 3686 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("term")) { 3687 res.getTerm().add(parseContractTermComponent(xpp, res)); 3688 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "binding")) { 3689 res.setBinding(parseType("binding", xpp)); 3690 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("friendly")) { 3691 res.getFriendly().add(parseContractFriendlyLanguageComponent(xpp, res)); 3692 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("legal")) { 3693 res.getLegal().add(parseContractLegalLanguageComponent(xpp, res)); 3694 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rule")) { 3695 res.getRule().add(parseContractComputableLanguageComponent(xpp, res)); 3696 } else if (!parseDomainResourceContent(eventType, xpp, res)) 3697 unknownContent(xpp); 3698 eventType = nextNoWhitespace(xpp); 3699 } 3700 next(xpp); 3701 parseElementClose(res); 3702 return res; 3703 } 3704 3705 protected Contract.ActorComponent parseContractActorComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 3706 Contract.ActorComponent res = new Contract.ActorComponent(); 3707 parseBackboneAttributes(xpp, res); 3708 next(xpp); 3709 int eventType = nextNoWhitespace(xpp); 3710 while (eventType != XmlPullParser.END_TAG) { 3711 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entity")) { 3712 res.setEntity(parseReference(xpp)); 3713 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 3714 res.getRole().add(parseCodeableConcept(xpp)); 3715 } else if (!parseBackboneContent(eventType, xpp, res)) 3716 unknownContent(xpp); 3717 eventType = nextNoWhitespace(xpp); 3718 } 3719 next(xpp); 3720 parseElementClose(res); 3721 return res; 3722 } 3723 3724 protected Contract.ValuedItemComponent parseContractValuedItemComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 3725 Contract.ValuedItemComponent res = new Contract.ValuedItemComponent(); 3726 parseBackboneAttributes(xpp, res); 3727 next(xpp); 3728 int eventType = nextNoWhitespace(xpp); 3729 while (eventType != XmlPullParser.END_TAG) { 3730 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "entity")) { 3731 res.setEntity(parseType("entity", xpp)); 3732 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 3733 res.setIdentifier(parseIdentifier(xpp)); 3734 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectiveTime")) { 3735 res.setEffectiveTimeElement(parseDateTime(xpp)); 3736 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 3737 res.setQuantity(parseSimpleQuantity(xpp)); 3738 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 3739 res.setUnitPrice(parseMoney(xpp)); 3740 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 3741 res.setFactorElement(parseDecimal(xpp)); 3742 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("points")) { 3743 res.setPointsElement(parseDecimal(xpp)); 3744 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 3745 res.setNet(parseMoney(xpp)); 3746 } else if (!parseBackboneContent(eventType, xpp, res)) 3747 unknownContent(xpp); 3748 eventType = nextNoWhitespace(xpp); 3749 } 3750 next(xpp); 3751 parseElementClose(res); 3752 return res; 3753 } 3754 3755 protected Contract.SignatoryComponent parseContractSignatoryComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 3756 Contract.SignatoryComponent res = new Contract.SignatoryComponent(); 3757 parseBackboneAttributes(xpp, res); 3758 next(xpp); 3759 int eventType = nextNoWhitespace(xpp); 3760 while (eventType != XmlPullParser.END_TAG) { 3761 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 3762 res.setType(parseCoding(xpp)); 3763 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("party")) { 3764 res.setParty(parseReference(xpp)); 3765 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("signature")) { 3766 res.setSignatureElement(parseString(xpp)); 3767 } else if (!parseBackboneContent(eventType, xpp, res)) 3768 unknownContent(xpp); 3769 eventType = nextNoWhitespace(xpp); 3770 } 3771 next(xpp); 3772 parseElementClose(res); 3773 return res; 3774 } 3775 3776 protected Contract.TermComponent parseContractTermComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 3777 Contract.TermComponent res = new Contract.TermComponent(); 3778 parseBackboneAttributes(xpp, res); 3779 next(xpp); 3780 int eventType = nextNoWhitespace(xpp); 3781 while (eventType != XmlPullParser.END_TAG) { 3782 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 3783 res.setIdentifier(parseIdentifier(xpp)); 3784 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issued")) { 3785 res.setIssuedElement(parseDateTime(xpp)); 3786 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("applies")) { 3787 res.setApplies(parsePeriod(xpp)); 3788 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 3789 res.setType(parseCodeableConcept(xpp)); 3790 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subType")) { 3791 res.setSubType(parseCodeableConcept(xpp)); 3792 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 3793 res.setSubject(parseReference(xpp)); 3794 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 3795 res.getAction().add(parseCodeableConcept(xpp)); 3796 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actionReason")) { 3797 res.getActionReason().add(parseCodeableConcept(xpp)); 3798 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 3799 res.getActor().add(parseContractTermActorComponent(xpp, owner)); 3800 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 3801 res.setTextElement(parseString(xpp)); 3802 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valuedItem")) { 3803 res.getValuedItem().add(parseContractTermValuedItemComponent(xpp, owner)); 3804 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("group")) { 3805 res.getGroup().add(parseContractTermComponent(xpp, owner)); 3806 } else if (!parseBackboneContent(eventType, xpp, res)) 3807 unknownContent(xpp); 3808 eventType = nextNoWhitespace(xpp); 3809 } 3810 next(xpp); 3811 parseElementClose(res); 3812 return res; 3813 } 3814 3815 protected Contract.TermActorComponent parseContractTermActorComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 3816 Contract.TermActorComponent res = new Contract.TermActorComponent(); 3817 parseBackboneAttributes(xpp, res); 3818 next(xpp); 3819 int eventType = nextNoWhitespace(xpp); 3820 while (eventType != XmlPullParser.END_TAG) { 3821 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entity")) { 3822 res.setEntity(parseReference(xpp)); 3823 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 3824 res.getRole().add(parseCodeableConcept(xpp)); 3825 } else if (!parseBackboneContent(eventType, xpp, res)) 3826 unknownContent(xpp); 3827 eventType = nextNoWhitespace(xpp); 3828 } 3829 next(xpp); 3830 parseElementClose(res); 3831 return res; 3832 } 3833 3834 protected Contract.TermValuedItemComponent parseContractTermValuedItemComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 3835 Contract.TermValuedItemComponent res = new Contract.TermValuedItemComponent(); 3836 parseBackboneAttributes(xpp, res); 3837 next(xpp); 3838 int eventType = nextNoWhitespace(xpp); 3839 while (eventType != XmlPullParser.END_TAG) { 3840 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "entity")) { 3841 res.setEntity(parseType("entity", xpp)); 3842 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 3843 res.setIdentifier(parseIdentifier(xpp)); 3844 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectiveTime")) { 3845 res.setEffectiveTimeElement(parseDateTime(xpp)); 3846 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 3847 res.setQuantity(parseSimpleQuantity(xpp)); 3848 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 3849 res.setUnitPrice(parseMoney(xpp)); 3850 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 3851 res.setFactorElement(parseDecimal(xpp)); 3852 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("points")) { 3853 res.setPointsElement(parseDecimal(xpp)); 3854 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 3855 res.setNet(parseMoney(xpp)); 3856 } else if (!parseBackboneContent(eventType, xpp, res)) 3857 unknownContent(xpp); 3858 eventType = nextNoWhitespace(xpp); 3859 } 3860 next(xpp); 3861 parseElementClose(res); 3862 return res; 3863 } 3864 3865 protected Contract.FriendlyLanguageComponent parseContractFriendlyLanguageComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 3866 Contract.FriendlyLanguageComponent res = new Contract.FriendlyLanguageComponent(); 3867 parseBackboneAttributes(xpp, res); 3868 next(xpp); 3869 int eventType = nextNoWhitespace(xpp); 3870 while (eventType != XmlPullParser.END_TAG) { 3871 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "content")) { 3872 res.setContent(parseType("content", xpp)); 3873 } else if (!parseBackboneContent(eventType, xpp, res)) 3874 unknownContent(xpp); 3875 eventType = nextNoWhitespace(xpp); 3876 } 3877 next(xpp); 3878 parseElementClose(res); 3879 return res; 3880 } 3881 3882 protected Contract.LegalLanguageComponent parseContractLegalLanguageComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 3883 Contract.LegalLanguageComponent res = new Contract.LegalLanguageComponent(); 3884 parseBackboneAttributes(xpp, res); 3885 next(xpp); 3886 int eventType = nextNoWhitespace(xpp); 3887 while (eventType != XmlPullParser.END_TAG) { 3888 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "content")) { 3889 res.setContent(parseType("content", xpp)); 3890 } else if (!parseBackboneContent(eventType, xpp, res)) 3891 unknownContent(xpp); 3892 eventType = nextNoWhitespace(xpp); 3893 } 3894 next(xpp); 3895 parseElementClose(res); 3896 return res; 3897 } 3898 3899 protected Contract.ComputableLanguageComponent parseContractComputableLanguageComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 3900 Contract.ComputableLanguageComponent res = new Contract.ComputableLanguageComponent(); 3901 parseBackboneAttributes(xpp, res); 3902 next(xpp); 3903 int eventType = nextNoWhitespace(xpp); 3904 while (eventType != XmlPullParser.END_TAG) { 3905 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "content")) { 3906 res.setContent(parseType("content", xpp)); 3907 } else if (!parseBackboneContent(eventType, xpp, res)) 3908 unknownContent(xpp); 3909 eventType = nextNoWhitespace(xpp); 3910 } 3911 next(xpp); 3912 parseElementClose(res); 3913 return res; 3914 } 3915 3916 protected Coverage parseCoverage(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3917 Coverage res = new Coverage(); 3918 parseDomainResourceAttributes(xpp, res); 3919 next(xpp); 3920 int eventType = nextNoWhitespace(xpp); 3921 while (eventType != XmlPullParser.END_TAG) { 3922 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issuer")) { 3923 res.setIssuer(parseReference(xpp)); 3924 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bin")) { 3925 res.setBin(parseIdentifier(xpp)); 3926 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 3927 res.setPeriod(parsePeriod(xpp)); 3928 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 3929 res.setType(parseCoding(xpp)); 3930 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subscriberId")) { 3931 res.setSubscriberId(parseIdentifier(xpp)); 3932 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 3933 res.getIdentifier().add(parseIdentifier(xpp)); 3934 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("group")) { 3935 res.setGroupElement(parseString(xpp)); 3936 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("plan")) { 3937 res.setPlanElement(parseString(xpp)); 3938 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subPlan")) { 3939 res.setSubPlanElement(parseString(xpp)); 3940 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dependent")) { 3941 res.setDependentElement(parsePositiveInt(xpp)); 3942 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 3943 res.setSequenceElement(parsePositiveInt(xpp)); 3944 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subscriber")) { 3945 res.setSubscriber(parseReference(xpp)); 3946 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("network")) { 3947 res.setNetwork(parseIdentifier(xpp)); 3948 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contract")) { 3949 res.getContract().add(parseReference(xpp)); 3950 } else if (!parseDomainResourceContent(eventType, xpp, res)) 3951 unknownContent(xpp); 3952 eventType = nextNoWhitespace(xpp); 3953 } 3954 next(xpp); 3955 parseElementClose(res); 3956 return res; 3957 } 3958 3959 protected DataElement parseDataElement(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3960 DataElement res = new DataElement(); 3961 parseDomainResourceAttributes(xpp, res); 3962 next(xpp); 3963 int eventType = nextNoWhitespace(xpp); 3964 while (eventType != XmlPullParser.END_TAG) { 3965 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 3966 res.setUrlElement(parseUri(xpp)); 3967 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 3968 res.getIdentifier().add(parseIdentifier(xpp)); 3969 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 3970 res.setVersionElement(parseString(xpp)); 3971 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 3972 res.setNameElement(parseString(xpp)); 3973 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 3974 res.setStatusElement(parseEnumeration(xpp, Enumerations.ConformanceResourceStatus.NULL, new Enumerations.ConformanceResourceStatusEnumFactory())); 3975 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 3976 res.setExperimentalElement(parseBoolean(xpp)); 3977 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 3978 res.setPublisherElement(parseString(xpp)); 3979 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 3980 res.getContact().add(parseDataElementDataElementContactComponent(xpp, res)); 3981 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 3982 res.setDateElement(parseDateTime(xpp)); 3983 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 3984 res.getUseContext().add(parseCodeableConcept(xpp)); 3985 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 3986 res.setCopyrightElement(parseString(xpp)); 3987 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("stringency")) { 3988 res.setStringencyElement(parseEnumeration(xpp, DataElement.DataElementStringency.NULL, new DataElement.DataElementStringencyEnumFactory())); 3989 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mapping")) { 3990 res.getMapping().add(parseDataElementDataElementMappingComponent(xpp, res)); 3991 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("element")) { 3992 res.getElement().add(parseElementDefinition(xpp)); 3993 } else if (!parseDomainResourceContent(eventType, xpp, res)) 3994 unknownContent(xpp); 3995 eventType = nextNoWhitespace(xpp); 3996 } 3997 next(xpp); 3998 parseElementClose(res); 3999 return res; 4000 } 4001 4002 protected DataElement.DataElementContactComponent parseDataElementDataElementContactComponent(XmlPullParser xpp, DataElement owner) throws XmlPullParserException, IOException, FHIRFormatError { 4003 DataElement.DataElementContactComponent res = new DataElement.DataElementContactComponent(); 4004 parseBackboneAttributes(xpp, res); 4005 next(xpp); 4006 int eventType = nextNoWhitespace(xpp); 4007 while (eventType != XmlPullParser.END_TAG) { 4008 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 4009 res.setNameElement(parseString(xpp)); 4010 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 4011 res.getTelecom().add(parseContactPoint(xpp)); 4012 } else if (!parseBackboneContent(eventType, xpp, res)) 4013 unknownContent(xpp); 4014 eventType = nextNoWhitespace(xpp); 4015 } 4016 next(xpp); 4017 parseElementClose(res); 4018 return res; 4019 } 4020 4021 protected DataElement.DataElementMappingComponent parseDataElementDataElementMappingComponent(XmlPullParser xpp, DataElement owner) throws XmlPullParserException, IOException, FHIRFormatError { 4022 DataElement.DataElementMappingComponent res = new DataElement.DataElementMappingComponent(); 4023 parseBackboneAttributes(xpp, res); 4024 next(xpp); 4025 int eventType = nextNoWhitespace(xpp); 4026 while (eventType != XmlPullParser.END_TAG) { 4027 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identity")) { 4028 res.setIdentityElement(parseId(xpp)); 4029 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uri")) { 4030 res.setUriElement(parseUri(xpp)); 4031 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 4032 res.setNameElement(parseString(xpp)); 4033 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comments")) { 4034 res.setCommentsElement(parseString(xpp)); 4035 } else if (!parseBackboneContent(eventType, xpp, res)) 4036 unknownContent(xpp); 4037 eventType = nextNoWhitespace(xpp); 4038 } 4039 next(xpp); 4040 parseElementClose(res); 4041 return res; 4042 } 4043 4044 protected DetectedIssue parseDetectedIssue(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4045 DetectedIssue res = new DetectedIssue(); 4046 parseDomainResourceAttributes(xpp, res); 4047 next(xpp); 4048 int eventType = nextNoWhitespace(xpp); 4049 while (eventType != XmlPullParser.END_TAG) { 4050 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 4051 res.setPatient(parseReference(xpp)); 4052 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 4053 res.setCategory(parseCodeableConcept(xpp)); 4054 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("severity")) { 4055 res.setSeverityElement(parseEnumeration(xpp, DetectedIssue.DetectedIssueSeverity.NULL, new DetectedIssue.DetectedIssueSeverityEnumFactory())); 4056 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("implicated")) { 4057 res.getImplicated().add(parseReference(xpp)); 4058 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 4059 res.setDetailElement(parseString(xpp)); 4060 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 4061 res.setDateElement(parseDateTime(xpp)); 4062 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 4063 res.setAuthor(parseReference(xpp)); 4064 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4065 res.setIdentifier(parseIdentifier(xpp)); 4066 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 4067 res.setReferenceElement(parseUri(xpp)); 4068 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mitigation")) { 4069 res.getMitigation().add(parseDetectedIssueDetectedIssueMitigationComponent(xpp, res)); 4070 } else if (!parseDomainResourceContent(eventType, xpp, res)) 4071 unknownContent(xpp); 4072 eventType = nextNoWhitespace(xpp); 4073 } 4074 next(xpp); 4075 parseElementClose(res); 4076 return res; 4077 } 4078 4079 protected DetectedIssue.DetectedIssueMitigationComponent parseDetectedIssueDetectedIssueMitigationComponent(XmlPullParser xpp, DetectedIssue owner) throws XmlPullParserException, IOException, FHIRFormatError { 4080 DetectedIssue.DetectedIssueMitigationComponent res = new DetectedIssue.DetectedIssueMitigationComponent(); 4081 parseBackboneAttributes(xpp, res); 4082 next(xpp); 4083 int eventType = nextNoWhitespace(xpp); 4084 while (eventType != XmlPullParser.END_TAG) { 4085 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 4086 res.setAction(parseCodeableConcept(xpp)); 4087 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 4088 res.setDateElement(parseDateTime(xpp)); 4089 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 4090 res.setAuthor(parseReference(xpp)); 4091 } else if (!parseBackboneContent(eventType, xpp, res)) 4092 unknownContent(xpp); 4093 eventType = nextNoWhitespace(xpp); 4094 } 4095 next(xpp); 4096 parseElementClose(res); 4097 return res; 4098 } 4099 4100 protected Device parseDevice(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4101 Device res = new Device(); 4102 parseDomainResourceAttributes(xpp, res); 4103 next(xpp); 4104 int eventType = nextNoWhitespace(xpp); 4105 while (eventType != XmlPullParser.END_TAG) { 4106 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4107 res.getIdentifier().add(parseIdentifier(xpp)); 4108 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 4109 res.setType(parseCodeableConcept(xpp)); 4110 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 4111 res.getNote().add(parseAnnotation(xpp)); 4112 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 4113 res.setStatusElement(parseEnumeration(xpp, Device.DeviceStatus.NULL, new Device.DeviceStatusEnumFactory())); 4114 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manufacturer")) { 4115 res.setManufacturerElement(parseString(xpp)); 4116 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("model")) { 4117 res.setModelElement(parseString(xpp)); 4118 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 4119 res.setVersionElement(parseString(xpp)); 4120 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manufactureDate")) { 4121 res.setManufactureDateElement(parseDateTime(xpp)); 4122 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expiry")) { 4123 res.setExpiryElement(parseDateTime(xpp)); 4124 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udi")) { 4125 res.setUdiElement(parseString(xpp)); 4126 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lotNumber")) { 4127 res.setLotNumberElement(parseString(xpp)); 4128 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("owner")) { 4129 res.setOwner(parseReference(xpp)); 4130 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 4131 res.setLocation(parseReference(xpp)); 4132 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 4133 res.setPatient(parseReference(xpp)); 4134 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 4135 res.getContact().add(parseContactPoint(xpp)); 4136 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 4137 res.setUrlElement(parseUri(xpp)); 4138 } else if (!parseDomainResourceContent(eventType, xpp, res)) 4139 unknownContent(xpp); 4140 eventType = nextNoWhitespace(xpp); 4141 } 4142 next(xpp); 4143 parseElementClose(res); 4144 return res; 4145 } 4146 4147 protected DeviceComponent parseDeviceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4148 DeviceComponent res = new DeviceComponent(); 4149 parseDomainResourceAttributes(xpp, res); 4150 next(xpp); 4151 int eventType = nextNoWhitespace(xpp); 4152 while (eventType != XmlPullParser.END_TAG) { 4153 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 4154 res.setType(parseCodeableConcept(xpp)); 4155 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4156 res.setIdentifier(parseIdentifier(xpp)); 4157 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastSystemChange")) { 4158 res.setLastSystemChangeElement(parseInstant(xpp)); 4159 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 4160 res.setSource(parseReference(xpp)); 4161 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parent")) { 4162 res.setParent(parseReference(xpp)); 4163 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operationalStatus")) { 4164 res.getOperationalStatus().add(parseCodeableConcept(xpp)); 4165 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameterGroup")) { 4166 res.setParameterGroup(parseCodeableConcept(xpp)); 4167 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("measurementPrinciple")) { 4168 res.setMeasurementPrincipleElement(parseEnumeration(xpp, DeviceComponent.MeasmntPrinciple.NULL, new DeviceComponent.MeasmntPrincipleEnumFactory())); 4169 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productionSpecification")) { 4170 res.getProductionSpecification().add(parseDeviceComponentDeviceComponentProductionSpecificationComponent(xpp, res)); 4171 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("languageCode")) { 4172 res.setLanguageCode(parseCodeableConcept(xpp)); 4173 } else if (!parseDomainResourceContent(eventType, xpp, res)) 4174 unknownContent(xpp); 4175 eventType = nextNoWhitespace(xpp); 4176 } 4177 next(xpp); 4178 parseElementClose(res); 4179 return res; 4180 } 4181 4182 protected DeviceComponent.DeviceComponentProductionSpecificationComponent parseDeviceComponentDeviceComponentProductionSpecificationComponent(XmlPullParser xpp, DeviceComponent owner) throws XmlPullParserException, IOException, FHIRFormatError { 4183 DeviceComponent.DeviceComponentProductionSpecificationComponent res = new DeviceComponent.DeviceComponentProductionSpecificationComponent(); 4184 parseBackboneAttributes(xpp, res); 4185 next(xpp); 4186 int eventType = nextNoWhitespace(xpp); 4187 while (eventType != XmlPullParser.END_TAG) { 4188 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specType")) { 4189 res.setSpecType(parseCodeableConcept(xpp)); 4190 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("componentId")) { 4191 res.setComponentId(parseIdentifier(xpp)); 4192 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productionSpec")) { 4193 res.setProductionSpecElement(parseString(xpp)); 4194 } else if (!parseBackboneContent(eventType, xpp, res)) 4195 unknownContent(xpp); 4196 eventType = nextNoWhitespace(xpp); 4197 } 4198 next(xpp); 4199 parseElementClose(res); 4200 return res; 4201 } 4202 4203 protected DeviceMetric parseDeviceMetric(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4204 DeviceMetric res = new DeviceMetric(); 4205 parseDomainResourceAttributes(xpp, res); 4206 next(xpp); 4207 int eventType = nextNoWhitespace(xpp); 4208 while (eventType != XmlPullParser.END_TAG) { 4209 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 4210 res.setType(parseCodeableConcept(xpp)); 4211 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4212 res.setIdentifier(parseIdentifier(xpp)); 4213 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unit")) { 4214 res.setUnit(parseCodeableConcept(xpp)); 4215 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 4216 res.setSource(parseReference(xpp)); 4217 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parent")) { 4218 res.setParent(parseReference(xpp)); 4219 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operationalStatus")) { 4220 res.setOperationalStatusElement(parseEnumeration(xpp, DeviceMetric.DeviceMetricOperationalStatus.NULL, new DeviceMetric.DeviceMetricOperationalStatusEnumFactory())); 4221 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("color")) { 4222 res.setColorElement(parseEnumeration(xpp, DeviceMetric.DeviceMetricColor.NULL, new DeviceMetric.DeviceMetricColorEnumFactory())); 4223 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 4224 res.setCategoryElement(parseEnumeration(xpp, DeviceMetric.DeviceMetricCategory.NULL, new DeviceMetric.DeviceMetricCategoryEnumFactory())); 4225 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("measurementPeriod")) { 4226 res.setMeasurementPeriod(parseTiming(xpp)); 4227 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("calibration")) { 4228 res.getCalibration().add(parseDeviceMetricDeviceMetricCalibrationComponent(xpp, res)); 4229 } else if (!parseDomainResourceContent(eventType, xpp, res)) 4230 unknownContent(xpp); 4231 eventType = nextNoWhitespace(xpp); 4232 } 4233 next(xpp); 4234 parseElementClose(res); 4235 return res; 4236 } 4237 4238 protected DeviceMetric.DeviceMetricCalibrationComponent parseDeviceMetricDeviceMetricCalibrationComponent(XmlPullParser xpp, DeviceMetric owner) throws XmlPullParserException, IOException, FHIRFormatError { 4239 DeviceMetric.DeviceMetricCalibrationComponent res = new DeviceMetric.DeviceMetricCalibrationComponent(); 4240 parseBackboneAttributes(xpp, res); 4241 next(xpp); 4242 int eventType = nextNoWhitespace(xpp); 4243 while (eventType != XmlPullParser.END_TAG) { 4244 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 4245 res.setTypeElement(parseEnumeration(xpp, DeviceMetric.DeviceMetricCalibrationType.NULL, new DeviceMetric.DeviceMetricCalibrationTypeEnumFactory())); 4246 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("state")) { 4247 res.setStateElement(parseEnumeration(xpp, DeviceMetric.DeviceMetricCalibrationState.NULL, new DeviceMetric.DeviceMetricCalibrationStateEnumFactory())); 4248 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("time")) { 4249 res.setTimeElement(parseInstant(xpp)); 4250 } else if (!parseBackboneContent(eventType, xpp, res)) 4251 unknownContent(xpp); 4252 eventType = nextNoWhitespace(xpp); 4253 } 4254 next(xpp); 4255 parseElementClose(res); 4256 return res; 4257 } 4258 4259 protected DeviceUseRequest parseDeviceUseRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4260 DeviceUseRequest res = new DeviceUseRequest(); 4261 parseDomainResourceAttributes(xpp, res); 4262 next(xpp); 4263 int eventType = nextNoWhitespace(xpp); 4264 while (eventType != XmlPullParser.END_TAG) { 4265 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "bodySite")) { 4266 res.setBodySite(parseType("bodySite", xpp)); 4267 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 4268 res.setStatusElement(parseEnumeration(xpp, DeviceUseRequest.DeviceUseRequestStatus.NULL, new DeviceUseRequest.DeviceUseRequestStatusEnumFactory())); 4269 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 4270 res.setDevice(parseReference(xpp)); 4271 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 4272 res.setEncounter(parseReference(xpp)); 4273 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4274 res.getIdentifier().add(parseIdentifier(xpp)); 4275 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("indication")) { 4276 res.getIndication().add(parseCodeableConcept(xpp)); 4277 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notes")) { 4278 res.getNotes().add(parseString(xpp)); 4279 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prnReason")) { 4280 res.getPrnReason().add(parseCodeableConcept(xpp)); 4281 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orderedOn")) { 4282 res.setOrderedOnElement(parseDateTime(xpp)); 4283 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recordedOn")) { 4284 res.setRecordedOnElement(parseDateTime(xpp)); 4285 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 4286 res.setSubject(parseReference(xpp)); 4287 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "timing")) { 4288 res.setTiming(parseType("timing", xpp)); 4289 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 4290 res.setPriorityElement(parseEnumeration(xpp, DeviceUseRequest.DeviceUseRequestPriority.NULL, new DeviceUseRequest.DeviceUseRequestPriorityEnumFactory())); 4291 } else if (!parseDomainResourceContent(eventType, xpp, res)) 4292 unknownContent(xpp); 4293 eventType = nextNoWhitespace(xpp); 4294 } 4295 next(xpp); 4296 parseElementClose(res); 4297 return res; 4298 } 4299 4300 protected DeviceUseStatement parseDeviceUseStatement(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4301 DeviceUseStatement res = new DeviceUseStatement(); 4302 parseDomainResourceAttributes(xpp, res); 4303 next(xpp); 4304 int eventType = nextNoWhitespace(xpp); 4305 while (eventType != XmlPullParser.END_TAG) { 4306 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "bodySite")) { 4307 res.setBodySite(parseType("bodySite", xpp)); 4308 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("whenUsed")) { 4309 res.setWhenUsed(parsePeriod(xpp)); 4310 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 4311 res.setDevice(parseReference(xpp)); 4312 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4313 res.getIdentifier().add(parseIdentifier(xpp)); 4314 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("indication")) { 4315 res.getIndication().add(parseCodeableConcept(xpp)); 4316 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notes")) { 4317 res.getNotes().add(parseString(xpp)); 4318 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recordedOn")) { 4319 res.setRecordedOnElement(parseDateTime(xpp)); 4320 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 4321 res.setSubject(parseReference(xpp)); 4322 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "timing")) { 4323 res.setTiming(parseType("timing", xpp)); 4324 } else if (!parseDomainResourceContent(eventType, xpp, res)) 4325 unknownContent(xpp); 4326 eventType = nextNoWhitespace(xpp); 4327 } 4328 next(xpp); 4329 parseElementClose(res); 4330 return res; 4331 } 4332 4333 protected DiagnosticOrder parseDiagnosticOrder(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4334 DiagnosticOrder res = new DiagnosticOrder(); 4335 parseDomainResourceAttributes(xpp, res); 4336 next(xpp); 4337 int eventType = nextNoWhitespace(xpp); 4338 while (eventType != XmlPullParser.END_TAG) { 4339 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 4340 res.setSubject(parseReference(xpp)); 4341 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orderer")) { 4342 res.setOrderer(parseReference(xpp)); 4343 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4344 res.getIdentifier().add(parseIdentifier(xpp)); 4345 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 4346 res.setEncounter(parseReference(xpp)); 4347 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 4348 res.getReason().add(parseCodeableConcept(xpp)); 4349 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInformation")) { 4350 res.getSupportingInformation().add(parseReference(xpp)); 4351 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specimen")) { 4352 res.getSpecimen().add(parseReference(xpp)); 4353 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 4354 res.setStatusElement(parseEnumeration(xpp, DiagnosticOrder.DiagnosticOrderStatus.NULL, new DiagnosticOrder.DiagnosticOrderStatusEnumFactory())); 4355 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 4356 res.setPriorityElement(parseEnumeration(xpp, DiagnosticOrder.DiagnosticOrderPriority.NULL, new DiagnosticOrder.DiagnosticOrderPriorityEnumFactory())); 4357 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 4358 res.getEvent().add(parseDiagnosticOrderDiagnosticOrderEventComponent(xpp, res)); 4359 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 4360 res.getItem().add(parseDiagnosticOrderDiagnosticOrderItemComponent(xpp, res)); 4361 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 4362 res.getNote().add(parseAnnotation(xpp)); 4363 } else if (!parseDomainResourceContent(eventType, xpp, res)) 4364 unknownContent(xpp); 4365 eventType = nextNoWhitespace(xpp); 4366 } 4367 next(xpp); 4368 parseElementClose(res); 4369 return res; 4370 } 4371 4372 protected DiagnosticOrder.DiagnosticOrderEventComponent parseDiagnosticOrderDiagnosticOrderEventComponent(XmlPullParser xpp, DiagnosticOrder owner) throws XmlPullParserException, IOException, FHIRFormatError { 4373 DiagnosticOrder.DiagnosticOrderEventComponent res = new DiagnosticOrder.DiagnosticOrderEventComponent(); 4374 parseBackboneAttributes(xpp, res); 4375 next(xpp); 4376 int eventType = nextNoWhitespace(xpp); 4377 while (eventType != XmlPullParser.END_TAG) { 4378 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 4379 res.setStatusElement(parseEnumeration(xpp, DiagnosticOrder.DiagnosticOrderStatus.NULL, new DiagnosticOrder.DiagnosticOrderStatusEnumFactory())); 4380 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 4381 res.setDescription(parseCodeableConcept(xpp)); 4382 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateTime")) { 4383 res.setDateTimeElement(parseDateTime(xpp)); 4384 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 4385 res.setActor(parseReference(xpp)); 4386 } else if (!parseBackboneContent(eventType, xpp, res)) 4387 unknownContent(xpp); 4388 eventType = nextNoWhitespace(xpp); 4389 } 4390 next(xpp); 4391 parseElementClose(res); 4392 return res; 4393 } 4394 4395 protected DiagnosticOrder.DiagnosticOrderItemComponent parseDiagnosticOrderDiagnosticOrderItemComponent(XmlPullParser xpp, DiagnosticOrder owner) throws XmlPullParserException, IOException, FHIRFormatError { 4396 DiagnosticOrder.DiagnosticOrderItemComponent res = new DiagnosticOrder.DiagnosticOrderItemComponent(); 4397 parseBackboneAttributes(xpp, res); 4398 next(xpp); 4399 int eventType = nextNoWhitespace(xpp); 4400 while (eventType != XmlPullParser.END_TAG) { 4401 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 4402 res.setCode(parseCodeableConcept(xpp)); 4403 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specimen")) { 4404 res.getSpecimen().add(parseReference(xpp)); 4405 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 4406 res.setBodySite(parseCodeableConcept(xpp)); 4407 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 4408 res.setStatusElement(parseEnumeration(xpp, DiagnosticOrder.DiagnosticOrderStatus.NULL, new DiagnosticOrder.DiagnosticOrderStatusEnumFactory())); 4409 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 4410 res.getEvent().add(parseDiagnosticOrderDiagnosticOrderEventComponent(xpp, owner)); 4411 } else if (!parseBackboneContent(eventType, xpp, res)) 4412 unknownContent(xpp); 4413 eventType = nextNoWhitespace(xpp); 4414 } 4415 next(xpp); 4416 parseElementClose(res); 4417 return res; 4418 } 4419 4420 protected DiagnosticReport parseDiagnosticReport(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4421 DiagnosticReport res = new DiagnosticReport(); 4422 parseDomainResourceAttributes(xpp, res); 4423 next(xpp); 4424 int eventType = nextNoWhitespace(xpp); 4425 while (eventType != XmlPullParser.END_TAG) { 4426 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4427 res.getIdentifier().add(parseIdentifier(xpp)); 4428 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 4429 res.setStatusElement(parseEnumeration(xpp, DiagnosticReport.DiagnosticReportStatus.NULL, new DiagnosticReport.DiagnosticReportStatusEnumFactory())); 4430 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 4431 res.setCategory(parseCodeableConcept(xpp)); 4432 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 4433 res.setCode(parseCodeableConcept(xpp)); 4434 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 4435 res.setSubject(parseReference(xpp)); 4436 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 4437 res.setEncounter(parseReference(xpp)); 4438 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "effective")) { 4439 res.setEffective(parseType("effective", xpp)); 4440 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issued")) { 4441 res.setIssuedElement(parseInstant(xpp)); 4442 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 4443 res.setPerformer(parseReference(xpp)); 4444 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 4445 res.getRequest().add(parseReference(xpp)); 4446 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specimen")) { 4447 res.getSpecimen().add(parseReference(xpp)); 4448 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("result")) { 4449 res.getResult().add(parseReference(xpp)); 4450 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("imagingStudy")) { 4451 res.getImagingStudy().add(parseReference(xpp)); 4452 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("image")) { 4453 res.getImage().add(parseDiagnosticReportDiagnosticReportImageComponent(xpp, res)); 4454 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("conclusion")) { 4455 res.setConclusionElement(parseString(xpp)); 4456 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("codedDiagnosis")) { 4457 res.getCodedDiagnosis().add(parseCodeableConcept(xpp)); 4458 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("presentedForm")) { 4459 res.getPresentedForm().add(parseAttachment(xpp)); 4460 } else if (!parseDomainResourceContent(eventType, xpp, res)) 4461 unknownContent(xpp); 4462 eventType = nextNoWhitespace(xpp); 4463 } 4464 next(xpp); 4465 parseElementClose(res); 4466 return res; 4467 } 4468 4469 protected DiagnosticReport.DiagnosticReportImageComponent parseDiagnosticReportDiagnosticReportImageComponent(XmlPullParser xpp, DiagnosticReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 4470 DiagnosticReport.DiagnosticReportImageComponent res = new DiagnosticReport.DiagnosticReportImageComponent(); 4471 parseBackboneAttributes(xpp, res); 4472 next(xpp); 4473 int eventType = nextNoWhitespace(xpp); 4474 while (eventType != XmlPullParser.END_TAG) { 4475 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 4476 res.setCommentElement(parseString(xpp)); 4477 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 4478 res.setLink(parseReference(xpp)); 4479 } else if (!parseBackboneContent(eventType, xpp, res)) 4480 unknownContent(xpp); 4481 eventType = nextNoWhitespace(xpp); 4482 } 4483 next(xpp); 4484 parseElementClose(res); 4485 return res; 4486 } 4487 4488 protected DocumentManifest parseDocumentManifest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4489 DocumentManifest res = new DocumentManifest(); 4490 parseDomainResourceAttributes(xpp, res); 4491 next(xpp); 4492 int eventType = nextNoWhitespace(xpp); 4493 while (eventType != XmlPullParser.END_TAG) { 4494 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("masterIdentifier")) { 4495 res.setMasterIdentifier(parseIdentifier(xpp)); 4496 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4497 res.getIdentifier().add(parseIdentifier(xpp)); 4498 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 4499 res.setSubject(parseReference(xpp)); 4500 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recipient")) { 4501 res.getRecipient().add(parseReference(xpp)); 4502 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 4503 res.setType(parseCodeableConcept(xpp)); 4504 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 4505 res.getAuthor().add(parseReference(xpp)); 4506 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 4507 res.setCreatedElement(parseDateTime(xpp)); 4508 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 4509 res.setSourceElement(parseUri(xpp)); 4510 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 4511 res.setStatusElement(parseEnumeration(xpp, Enumerations.DocumentReferenceStatus.NULL, new Enumerations.DocumentReferenceStatusEnumFactory())); 4512 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 4513 res.setDescriptionElement(parseString(xpp)); 4514 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 4515 res.getContent().add(parseDocumentManifestDocumentManifestContentComponent(xpp, res)); 4516 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("related")) { 4517 res.getRelated().add(parseDocumentManifestDocumentManifestRelatedComponent(xpp, res)); 4518 } else if (!parseDomainResourceContent(eventType, xpp, res)) 4519 unknownContent(xpp); 4520 eventType = nextNoWhitespace(xpp); 4521 } 4522 next(xpp); 4523 parseElementClose(res); 4524 return res; 4525 } 4526 4527 protected DocumentManifest.DocumentManifestContentComponent parseDocumentManifestDocumentManifestContentComponent(XmlPullParser xpp, DocumentManifest owner) throws XmlPullParserException, IOException, FHIRFormatError { 4528 DocumentManifest.DocumentManifestContentComponent res = new DocumentManifest.DocumentManifestContentComponent(); 4529 parseBackboneAttributes(xpp, res); 4530 next(xpp); 4531 int eventType = nextNoWhitespace(xpp); 4532 while (eventType != XmlPullParser.END_TAG) { 4533 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "p")) { 4534 res.setP(parseType("p", xpp)); 4535 } else if (!parseBackboneContent(eventType, xpp, res)) 4536 unknownContent(xpp); 4537 eventType = nextNoWhitespace(xpp); 4538 } 4539 next(xpp); 4540 parseElementClose(res); 4541 return res; 4542 } 4543 4544 protected DocumentManifest.DocumentManifestRelatedComponent parseDocumentManifestDocumentManifestRelatedComponent(XmlPullParser xpp, DocumentManifest owner) throws XmlPullParserException, IOException, FHIRFormatError { 4545 DocumentManifest.DocumentManifestRelatedComponent res = new DocumentManifest.DocumentManifestRelatedComponent(); 4546 parseBackboneAttributes(xpp, res); 4547 next(xpp); 4548 int eventType = nextNoWhitespace(xpp); 4549 while (eventType != XmlPullParser.END_TAG) { 4550 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4551 res.setIdentifier(parseIdentifier(xpp)); 4552 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ref")) { 4553 res.setRef(parseReference(xpp)); 4554 } else if (!parseBackboneContent(eventType, xpp, res)) 4555 unknownContent(xpp); 4556 eventType = nextNoWhitespace(xpp); 4557 } 4558 next(xpp); 4559 parseElementClose(res); 4560 return res; 4561 } 4562 4563 protected DocumentReference parseDocumentReference(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4564 DocumentReference res = new DocumentReference(); 4565 parseDomainResourceAttributes(xpp, res); 4566 next(xpp); 4567 int eventType = nextNoWhitespace(xpp); 4568 while (eventType != XmlPullParser.END_TAG) { 4569 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("masterIdentifier")) { 4570 res.setMasterIdentifier(parseIdentifier(xpp)); 4571 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4572 res.getIdentifier().add(parseIdentifier(xpp)); 4573 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 4574 res.setSubject(parseReference(xpp)); 4575 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 4576 res.setType(parseCodeableConcept(xpp)); 4577 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("class")) { 4578 res.setClass_(parseCodeableConcept(xpp)); 4579 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 4580 res.getAuthor().add(parseReference(xpp)); 4581 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("custodian")) { 4582 res.setCustodian(parseReference(xpp)); 4583 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authenticator")) { 4584 res.setAuthenticator(parseReference(xpp)); 4585 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 4586 res.setCreatedElement(parseDateTime(xpp)); 4587 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("indexed")) { 4588 res.setIndexedElement(parseInstant(xpp)); 4589 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 4590 res.setStatusElement(parseEnumeration(xpp, Enumerations.DocumentReferenceStatus.NULL, new Enumerations.DocumentReferenceStatusEnumFactory())); 4591 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("docStatus")) { 4592 res.setDocStatus(parseCodeableConcept(xpp)); 4593 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatesTo")) { 4594 res.getRelatesTo().add(parseDocumentReferenceDocumentReferenceRelatesToComponent(xpp, res)); 4595 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 4596 res.setDescriptionElement(parseString(xpp)); 4597 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("securityLabel")) { 4598 res.getSecurityLabel().add(parseCodeableConcept(xpp)); 4599 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 4600 res.getContent().add(parseDocumentReferenceDocumentReferenceContentComponent(xpp, res)); 4601 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 4602 res.setContext(parseDocumentReferenceDocumentReferenceContextComponent(xpp, res)); 4603 } else if (!parseDomainResourceContent(eventType, xpp, res)) 4604 unknownContent(xpp); 4605 eventType = nextNoWhitespace(xpp); 4606 } 4607 next(xpp); 4608 parseElementClose(res); 4609 return res; 4610 } 4611 4612 protected DocumentReference.DocumentReferenceRelatesToComponent parseDocumentReferenceDocumentReferenceRelatesToComponent(XmlPullParser xpp, DocumentReference owner) throws XmlPullParserException, IOException, FHIRFormatError { 4613 DocumentReference.DocumentReferenceRelatesToComponent res = new DocumentReference.DocumentReferenceRelatesToComponent(); 4614 parseBackboneAttributes(xpp, res); 4615 next(xpp); 4616 int eventType = nextNoWhitespace(xpp); 4617 while (eventType != XmlPullParser.END_TAG) { 4618 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 4619 res.setCodeElement(parseEnumeration(xpp, DocumentReference.DocumentRelationshipType.NULL, new DocumentReference.DocumentRelationshipTypeEnumFactory())); 4620 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 4621 res.setTarget(parseReference(xpp)); 4622 } else if (!parseBackboneContent(eventType, xpp, res)) 4623 unknownContent(xpp); 4624 eventType = nextNoWhitespace(xpp); 4625 } 4626 next(xpp); 4627 parseElementClose(res); 4628 return res; 4629 } 4630 4631 protected DocumentReference.DocumentReferenceContentComponent parseDocumentReferenceDocumentReferenceContentComponent(XmlPullParser xpp, DocumentReference owner) throws XmlPullParserException, IOException, FHIRFormatError { 4632 DocumentReference.DocumentReferenceContentComponent res = new DocumentReference.DocumentReferenceContentComponent(); 4633 parseBackboneAttributes(xpp, res); 4634 next(xpp); 4635 int eventType = nextNoWhitespace(xpp); 4636 while (eventType != XmlPullParser.END_TAG) { 4637 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("attachment")) { 4638 res.setAttachment(parseAttachment(xpp)); 4639 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("format")) { 4640 res.getFormat().add(parseCoding(xpp)); 4641 } else if (!parseBackboneContent(eventType, xpp, res)) 4642 unknownContent(xpp); 4643 eventType = nextNoWhitespace(xpp); 4644 } 4645 next(xpp); 4646 parseElementClose(res); 4647 return res; 4648 } 4649 4650 protected DocumentReference.DocumentReferenceContextComponent parseDocumentReferenceDocumentReferenceContextComponent(XmlPullParser xpp, DocumentReference owner) throws XmlPullParserException, IOException, FHIRFormatError { 4651 DocumentReference.DocumentReferenceContextComponent res = new DocumentReference.DocumentReferenceContextComponent(); 4652 parseBackboneAttributes(xpp, res); 4653 next(xpp); 4654 int eventType = nextNoWhitespace(xpp); 4655 while (eventType != XmlPullParser.END_TAG) { 4656 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 4657 res.setEncounter(parseReference(xpp)); 4658 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 4659 res.getEvent().add(parseCodeableConcept(xpp)); 4660 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 4661 res.setPeriod(parsePeriod(xpp)); 4662 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("facilityType")) { 4663 res.setFacilityType(parseCodeableConcept(xpp)); 4664 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("practiceSetting")) { 4665 res.setPracticeSetting(parseCodeableConcept(xpp)); 4666 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sourcePatientInfo")) { 4667 res.setSourcePatientInfo(parseReference(xpp)); 4668 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("related")) { 4669 res.getRelated().add(parseDocumentReferenceDocumentReferenceContextRelatedComponent(xpp, owner)); 4670 } else if (!parseBackboneContent(eventType, xpp, res)) 4671 unknownContent(xpp); 4672 eventType = nextNoWhitespace(xpp); 4673 } 4674 next(xpp); 4675 parseElementClose(res); 4676 return res; 4677 } 4678 4679 protected DocumentReference.DocumentReferenceContextRelatedComponent parseDocumentReferenceDocumentReferenceContextRelatedComponent(XmlPullParser xpp, DocumentReference owner) throws XmlPullParserException, IOException, FHIRFormatError { 4680 DocumentReference.DocumentReferenceContextRelatedComponent res = new DocumentReference.DocumentReferenceContextRelatedComponent(); 4681 parseBackboneAttributes(xpp, res); 4682 next(xpp); 4683 int eventType = nextNoWhitespace(xpp); 4684 while (eventType != XmlPullParser.END_TAG) { 4685 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4686 res.setIdentifier(parseIdentifier(xpp)); 4687 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ref")) { 4688 res.setRef(parseReference(xpp)); 4689 } else if (!parseBackboneContent(eventType, xpp, res)) 4690 unknownContent(xpp); 4691 eventType = nextNoWhitespace(xpp); 4692 } 4693 next(xpp); 4694 parseElementClose(res); 4695 return res; 4696 } 4697 4698 protected EligibilityRequest parseEligibilityRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4699 EligibilityRequest res = new EligibilityRequest(); 4700 parseDomainResourceAttributes(xpp, res); 4701 next(xpp); 4702 int eventType = nextNoWhitespace(xpp); 4703 while (eventType != XmlPullParser.END_TAG) { 4704 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4705 res.getIdentifier().add(parseIdentifier(xpp)); 4706 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleset")) { 4707 res.setRuleset(parseCoding(xpp)); 4708 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("originalRuleset")) { 4709 res.setOriginalRuleset(parseCoding(xpp)); 4710 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 4711 res.setCreatedElement(parseDateTime(xpp)); 4712 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 4713 res.setTarget(parseReference(xpp)); 4714 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provider")) { 4715 res.setProvider(parseReference(xpp)); 4716 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 4717 res.setOrganization(parseReference(xpp)); 4718 } else if (!parseDomainResourceContent(eventType, xpp, res)) 4719 unknownContent(xpp); 4720 eventType = nextNoWhitespace(xpp); 4721 } 4722 next(xpp); 4723 parseElementClose(res); 4724 return res; 4725 } 4726 4727 protected EligibilityResponse parseEligibilityResponse(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4728 EligibilityResponse res = new EligibilityResponse(); 4729 parseDomainResourceAttributes(xpp, res); 4730 next(xpp); 4731 int eventType = nextNoWhitespace(xpp); 4732 while (eventType != XmlPullParser.END_TAG) { 4733 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4734 res.getIdentifier().add(parseIdentifier(xpp)); 4735 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 4736 res.setRequest(parseReference(xpp)); 4737 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 4738 res.setOutcomeElement(parseEnumeration(xpp, Enumerations.RemittanceOutcome.NULL, new Enumerations.RemittanceOutcomeEnumFactory())); 4739 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disposition")) { 4740 res.setDispositionElement(parseString(xpp)); 4741 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleset")) { 4742 res.setRuleset(parseCoding(xpp)); 4743 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("originalRuleset")) { 4744 res.setOriginalRuleset(parseCoding(xpp)); 4745 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 4746 res.setCreatedElement(parseDateTime(xpp)); 4747 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 4748 res.setOrganization(parseReference(xpp)); 4749 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestProvider")) { 4750 res.setRequestProvider(parseReference(xpp)); 4751 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestOrganization")) { 4752 res.setRequestOrganization(parseReference(xpp)); 4753 } else if (!parseDomainResourceContent(eventType, xpp, res)) 4754 unknownContent(xpp); 4755 eventType = nextNoWhitespace(xpp); 4756 } 4757 next(xpp); 4758 parseElementClose(res); 4759 return res; 4760 } 4761 4762 protected Encounter parseEncounter(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4763 Encounter res = new Encounter(); 4764 parseDomainResourceAttributes(xpp, res); 4765 next(xpp); 4766 int eventType = nextNoWhitespace(xpp); 4767 while (eventType != XmlPullParser.END_TAG) { 4768 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4769 res.getIdentifier().add(parseIdentifier(xpp)); 4770 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 4771 res.setStatusElement(parseEnumeration(xpp, Encounter.EncounterState.NULL, new Encounter.EncounterStateEnumFactory())); 4772 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusHistory")) { 4773 res.getStatusHistory().add(parseEncounterEncounterStatusHistoryComponent(xpp, res)); 4774 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("class")) { 4775 res.setClass_Element(parseEnumeration(xpp, Encounter.EncounterClass.NULL, new Encounter.EncounterClassEnumFactory())); 4776 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 4777 res.getType().add(parseCodeableConcept(xpp)); 4778 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 4779 res.setPriority(parseCodeableConcept(xpp)); 4780 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 4781 res.setPatient(parseReference(xpp)); 4782 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("episodeOfCare")) { 4783 res.getEpisodeOfCare().add(parseReference(xpp)); 4784 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("incomingReferral")) { 4785 res.getIncomingReferral().add(parseReference(xpp)); 4786 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 4787 res.getParticipant().add(parseEncounterEncounterParticipantComponent(xpp, res)); 4788 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("appointment")) { 4789 res.setAppointment(parseReference(xpp)); 4790 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 4791 res.setPeriod(parsePeriod(xpp)); 4792 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("length")) { 4793 res.setLength(parseDuration(xpp)); 4794 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 4795 res.getReason().add(parseCodeableConcept(xpp)); 4796 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("indication")) { 4797 res.getIndication().add(parseReference(xpp)); 4798 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("hospitalization")) { 4799 res.setHospitalization(parseEncounterEncounterHospitalizationComponent(xpp, res)); 4800 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 4801 res.getLocation().add(parseEncounterEncounterLocationComponent(xpp, res)); 4802 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceProvider")) { 4803 res.setServiceProvider(parseReference(xpp)); 4804 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 4805 res.setPartOf(parseReference(xpp)); 4806 } else if (!parseDomainResourceContent(eventType, xpp, res)) 4807 unknownContent(xpp); 4808 eventType = nextNoWhitespace(xpp); 4809 } 4810 next(xpp); 4811 parseElementClose(res); 4812 return res; 4813 } 4814 4815 protected Encounter.EncounterStatusHistoryComponent parseEncounterEncounterStatusHistoryComponent(XmlPullParser xpp, Encounter owner) throws XmlPullParserException, IOException, FHIRFormatError { 4816 Encounter.EncounterStatusHistoryComponent res = new Encounter.EncounterStatusHistoryComponent(); 4817 parseBackboneAttributes(xpp, res); 4818 next(xpp); 4819 int eventType = nextNoWhitespace(xpp); 4820 while (eventType != XmlPullParser.END_TAG) { 4821 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 4822 res.setStatusElement(parseEnumeration(xpp, Encounter.EncounterState.NULL, new Encounter.EncounterStateEnumFactory())); 4823 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 4824 res.setPeriod(parsePeriod(xpp)); 4825 } else if (!parseBackboneContent(eventType, xpp, res)) 4826 unknownContent(xpp); 4827 eventType = nextNoWhitespace(xpp); 4828 } 4829 next(xpp); 4830 parseElementClose(res); 4831 return res; 4832 } 4833 4834 protected Encounter.EncounterParticipantComponent parseEncounterEncounterParticipantComponent(XmlPullParser xpp, Encounter owner) throws XmlPullParserException, IOException, FHIRFormatError { 4835 Encounter.EncounterParticipantComponent res = new Encounter.EncounterParticipantComponent(); 4836 parseBackboneAttributes(xpp, res); 4837 next(xpp); 4838 int eventType = nextNoWhitespace(xpp); 4839 while (eventType != XmlPullParser.END_TAG) { 4840 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 4841 res.getType().add(parseCodeableConcept(xpp)); 4842 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 4843 res.setPeriod(parsePeriod(xpp)); 4844 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("individual")) { 4845 res.setIndividual(parseReference(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 Encounter.EncounterHospitalizationComponent parseEncounterEncounterHospitalizationComponent(XmlPullParser xpp, Encounter owner) throws XmlPullParserException, IOException, FHIRFormatError { 4856 Encounter.EncounterHospitalizationComponent res = new Encounter.EncounterHospitalizationComponent(); 4857 parseBackboneAttributes(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("preAdmissionIdentifier")) { 4862 res.setPreAdmissionIdentifier(parseIdentifier(xpp)); 4863 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("origin")) { 4864 res.setOrigin(parseReference(xpp)); 4865 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("admitSource")) { 4866 res.setAdmitSource(parseCodeableConcept(xpp)); 4867 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("admittingDiagnosis")) { 4868 res.getAdmittingDiagnosis().add(parseReference(xpp)); 4869 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reAdmission")) { 4870 res.setReAdmission(parseCodeableConcept(xpp)); 4871 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dietPreference")) { 4872 res.getDietPreference().add(parseCodeableConcept(xpp)); 4873 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialCourtesy")) { 4874 res.getSpecialCourtesy().add(parseCodeableConcept(xpp)); 4875 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialArrangement")) { 4876 res.getSpecialArrangement().add(parseCodeableConcept(xpp)); 4877 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 4878 res.setDestination(parseReference(xpp)); 4879 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dischargeDisposition")) { 4880 res.setDischargeDisposition(parseCodeableConcept(xpp)); 4881 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dischargeDiagnosis")) { 4882 res.getDischargeDiagnosis().add(parseReference(xpp)); 4883 } else if (!parseBackboneContent(eventType, xpp, res)) 4884 unknownContent(xpp); 4885 eventType = nextNoWhitespace(xpp); 4886 } 4887 next(xpp); 4888 parseElementClose(res); 4889 return res; 4890 } 4891 4892 protected Encounter.EncounterLocationComponent parseEncounterEncounterLocationComponent(XmlPullParser xpp, Encounter owner) throws XmlPullParserException, IOException, FHIRFormatError { 4893 Encounter.EncounterLocationComponent res = new Encounter.EncounterLocationComponent(); 4894 parseBackboneAttributes(xpp, res); 4895 next(xpp); 4896 int eventType = nextNoWhitespace(xpp); 4897 while (eventType != XmlPullParser.END_TAG) { 4898 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 4899 res.setLocation(parseReference(xpp)); 4900 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 4901 res.setStatusElement(parseEnumeration(xpp, Encounter.EncounterLocationStatus.NULL, new Encounter.EncounterLocationStatusEnumFactory())); 4902 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 4903 res.setPeriod(parsePeriod(xpp)); 4904 } else if (!parseBackboneContent(eventType, xpp, res)) 4905 unknownContent(xpp); 4906 eventType = nextNoWhitespace(xpp); 4907 } 4908 next(xpp); 4909 parseElementClose(res); 4910 return res; 4911 } 4912 4913 protected EnrollmentRequest parseEnrollmentRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4914 EnrollmentRequest res = new EnrollmentRequest(); 4915 parseDomainResourceAttributes(xpp, res); 4916 next(xpp); 4917 int eventType = nextNoWhitespace(xpp); 4918 while (eventType != XmlPullParser.END_TAG) { 4919 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4920 res.getIdentifier().add(parseIdentifier(xpp)); 4921 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleset")) { 4922 res.setRuleset(parseCoding(xpp)); 4923 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("originalRuleset")) { 4924 res.setOriginalRuleset(parseCoding(xpp)); 4925 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 4926 res.setCreatedElement(parseDateTime(xpp)); 4927 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 4928 res.setTarget(parseReference(xpp)); 4929 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provider")) { 4930 res.setProvider(parseReference(xpp)); 4931 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 4932 res.setOrganization(parseReference(xpp)); 4933 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 4934 res.setSubject(parseReference(xpp)); 4935 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverage")) { 4936 res.setCoverage(parseReference(xpp)); 4937 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 4938 res.setRelationship(parseCoding(xpp)); 4939 } else if (!parseDomainResourceContent(eventType, xpp, res)) 4940 unknownContent(xpp); 4941 eventType = nextNoWhitespace(xpp); 4942 } 4943 next(xpp); 4944 parseElementClose(res); 4945 return res; 4946 } 4947 4948 protected EnrollmentResponse parseEnrollmentResponse(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4949 EnrollmentResponse res = new EnrollmentResponse(); 4950 parseDomainResourceAttributes(xpp, res); 4951 next(xpp); 4952 int eventType = nextNoWhitespace(xpp); 4953 while (eventType != XmlPullParser.END_TAG) { 4954 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4955 res.getIdentifier().add(parseIdentifier(xpp)); 4956 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 4957 res.setRequest(parseReference(xpp)); 4958 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 4959 res.setOutcomeElement(parseEnumeration(xpp, Enumerations.RemittanceOutcome.NULL, new Enumerations.RemittanceOutcomeEnumFactory())); 4960 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disposition")) { 4961 res.setDispositionElement(parseString(xpp)); 4962 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleset")) { 4963 res.setRuleset(parseCoding(xpp)); 4964 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("originalRuleset")) { 4965 res.setOriginalRuleset(parseCoding(xpp)); 4966 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 4967 res.setCreatedElement(parseDateTime(xpp)); 4968 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 4969 res.setOrganization(parseReference(xpp)); 4970 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestProvider")) { 4971 res.setRequestProvider(parseReference(xpp)); 4972 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestOrganization")) { 4973 res.setRequestOrganization(parseReference(xpp)); 4974 } else if (!parseDomainResourceContent(eventType, xpp, res)) 4975 unknownContent(xpp); 4976 eventType = nextNoWhitespace(xpp); 4977 } 4978 next(xpp); 4979 parseElementClose(res); 4980 return res; 4981 } 4982 4983 protected EpisodeOfCare parseEpisodeOfCare(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4984 EpisodeOfCare res = new EpisodeOfCare(); 4985 parseDomainResourceAttributes(xpp, res); 4986 next(xpp); 4987 int eventType = nextNoWhitespace(xpp); 4988 while (eventType != XmlPullParser.END_TAG) { 4989 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4990 res.getIdentifier().add(parseIdentifier(xpp)); 4991 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 4992 res.setStatusElement(parseEnumeration(xpp, EpisodeOfCare.EpisodeOfCareStatus.NULL, new EpisodeOfCare.EpisodeOfCareStatusEnumFactory())); 4993 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusHistory")) { 4994 res.getStatusHistory().add(parseEpisodeOfCareEpisodeOfCareStatusHistoryComponent(xpp, res)); 4995 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 4996 res.getType().add(parseCodeableConcept(xpp)); 4997 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 4998 res.getCondition().add(parseReference(xpp)); 4999 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 5000 res.setPatient(parseReference(xpp)); 5001 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("managingOrganization")) { 5002 res.setManagingOrganization(parseReference(xpp)); 5003 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 5004 res.setPeriod(parsePeriod(xpp)); 5005 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referralRequest")) { 5006 res.getReferralRequest().add(parseReference(xpp)); 5007 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("careManager")) { 5008 res.setCareManager(parseReference(xpp)); 5009 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("careTeam")) { 5010 res.getCareTeam().add(parseEpisodeOfCareEpisodeOfCareCareTeamComponent(xpp, res)); 5011 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5012 unknownContent(xpp); 5013 eventType = nextNoWhitespace(xpp); 5014 } 5015 next(xpp); 5016 parseElementClose(res); 5017 return res; 5018 } 5019 5020 protected EpisodeOfCare.EpisodeOfCareStatusHistoryComponent parseEpisodeOfCareEpisodeOfCareStatusHistoryComponent(XmlPullParser xpp, EpisodeOfCare owner) throws XmlPullParserException, IOException, FHIRFormatError { 5021 EpisodeOfCare.EpisodeOfCareStatusHistoryComponent res = new EpisodeOfCare.EpisodeOfCareStatusHistoryComponent(); 5022 parseBackboneAttributes(xpp, res); 5023 next(xpp); 5024 int eventType = nextNoWhitespace(xpp); 5025 while (eventType != XmlPullParser.END_TAG) { 5026 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 5027 res.setStatusElement(parseEnumeration(xpp, EpisodeOfCare.EpisodeOfCareStatus.NULL, new EpisodeOfCare.EpisodeOfCareStatusEnumFactory())); 5028 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 5029 res.setPeriod(parsePeriod(xpp)); 5030 } else if (!parseBackboneContent(eventType, xpp, res)) 5031 unknownContent(xpp); 5032 eventType = nextNoWhitespace(xpp); 5033 } 5034 next(xpp); 5035 parseElementClose(res); 5036 return res; 5037 } 5038 5039 protected EpisodeOfCare.EpisodeOfCareCareTeamComponent parseEpisodeOfCareEpisodeOfCareCareTeamComponent(XmlPullParser xpp, EpisodeOfCare owner) throws XmlPullParserException, IOException, FHIRFormatError { 5040 EpisodeOfCare.EpisodeOfCareCareTeamComponent res = new EpisodeOfCare.EpisodeOfCareCareTeamComponent(); 5041 parseBackboneAttributes(xpp, res); 5042 next(xpp); 5043 int eventType = nextNoWhitespace(xpp); 5044 while (eventType != XmlPullParser.END_TAG) { 5045 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 5046 res.getRole().add(parseCodeableConcept(xpp)); 5047 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 5048 res.setPeriod(parsePeriod(xpp)); 5049 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("member")) { 5050 res.setMember(parseReference(xpp)); 5051 } else if (!parseBackboneContent(eventType, xpp, res)) 5052 unknownContent(xpp); 5053 eventType = nextNoWhitespace(xpp); 5054 } 5055 next(xpp); 5056 parseElementClose(res); 5057 return res; 5058 } 5059 5060 protected ExplanationOfBenefit parseExplanationOfBenefit(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5061 ExplanationOfBenefit res = new ExplanationOfBenefit(); 5062 parseDomainResourceAttributes(xpp, res); 5063 next(xpp); 5064 int eventType = nextNoWhitespace(xpp); 5065 while (eventType != XmlPullParser.END_TAG) { 5066 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5067 res.getIdentifier().add(parseIdentifier(xpp)); 5068 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 5069 res.setRequest(parseReference(xpp)); 5070 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 5071 res.setOutcomeElement(parseEnumeration(xpp, Enumerations.RemittanceOutcome.NULL, new Enumerations.RemittanceOutcomeEnumFactory())); 5072 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disposition")) { 5073 res.setDispositionElement(parseString(xpp)); 5074 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleset")) { 5075 res.setRuleset(parseCoding(xpp)); 5076 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("originalRuleset")) { 5077 res.setOriginalRuleset(parseCoding(xpp)); 5078 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 5079 res.setCreatedElement(parseDateTime(xpp)); 5080 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 5081 res.setOrganization(parseReference(xpp)); 5082 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestProvider")) { 5083 res.setRequestProvider(parseReference(xpp)); 5084 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestOrganization")) { 5085 res.setRequestOrganization(parseReference(xpp)); 5086 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5087 unknownContent(xpp); 5088 eventType = nextNoWhitespace(xpp); 5089 } 5090 next(xpp); 5091 parseElementClose(res); 5092 return res; 5093 } 5094 5095 protected FamilyMemberHistory parseFamilyMemberHistory(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5096 FamilyMemberHistory res = new FamilyMemberHistory(); 5097 parseDomainResourceAttributes(xpp, res); 5098 next(xpp); 5099 int eventType = nextNoWhitespace(xpp); 5100 while (eventType != XmlPullParser.END_TAG) { 5101 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5102 res.getIdentifier().add(parseIdentifier(xpp)); 5103 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 5104 res.setPatient(parseReference(xpp)); 5105 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 5106 res.setDateElement(parseDateTime(xpp)); 5107 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 5108 res.setStatusElement(parseEnumeration(xpp, FamilyMemberHistory.FamilyHistoryStatus.NULL, new FamilyMemberHistory.FamilyHistoryStatusEnumFactory())); 5109 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 5110 res.setNameElement(parseString(xpp)); 5111 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 5112 res.setRelationship(parseCodeableConcept(xpp)); 5113 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gender")) { 5114 res.setGenderElement(parseEnumeration(xpp, Enumerations.AdministrativeGender.NULL, new Enumerations.AdministrativeGenderEnumFactory())); 5115 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "born")) { 5116 res.setBorn(parseType("born", xpp)); 5117 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "age")) { 5118 res.setAge(parseType("age", xpp)); 5119 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "deceased")) { 5120 res.setDeceased(parseType("deceased", xpp)); 5121 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 5122 res.setNote(parseAnnotation(xpp)); 5123 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 5124 res.getCondition().add(parseFamilyMemberHistoryFamilyMemberHistoryConditionComponent(xpp, res)); 5125 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5126 unknownContent(xpp); 5127 eventType = nextNoWhitespace(xpp); 5128 } 5129 next(xpp); 5130 parseElementClose(res); 5131 return res; 5132 } 5133 5134 protected FamilyMemberHistory.FamilyMemberHistoryConditionComponent parseFamilyMemberHistoryFamilyMemberHistoryConditionComponent(XmlPullParser xpp, FamilyMemberHistory owner) throws XmlPullParserException, IOException, FHIRFormatError { 5135 FamilyMemberHistory.FamilyMemberHistoryConditionComponent res = new FamilyMemberHistory.FamilyMemberHistoryConditionComponent(); 5136 parseBackboneAttributes(xpp, res); 5137 next(xpp); 5138 int eventType = nextNoWhitespace(xpp); 5139 while (eventType != XmlPullParser.END_TAG) { 5140 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 5141 res.setCode(parseCodeableConcept(xpp)); 5142 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 5143 res.setOutcome(parseCodeableConcept(xpp)); 5144 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "onset")) { 5145 res.setOnset(parseType("onset", xpp)); 5146 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 5147 res.setNote(parseAnnotation(xpp)); 5148 } else if (!parseBackboneContent(eventType, xpp, res)) 5149 unknownContent(xpp); 5150 eventType = nextNoWhitespace(xpp); 5151 } 5152 next(xpp); 5153 parseElementClose(res); 5154 return res; 5155 } 5156 5157 protected Flag parseFlag(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5158 Flag res = new Flag(); 5159 parseDomainResourceAttributes(xpp, res); 5160 next(xpp); 5161 int eventType = nextNoWhitespace(xpp); 5162 while (eventType != XmlPullParser.END_TAG) { 5163 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5164 res.getIdentifier().add(parseIdentifier(xpp)); 5165 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 5166 res.setCategory(parseCodeableConcept(xpp)); 5167 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 5168 res.setStatusElement(parseEnumeration(xpp, Flag.FlagStatus.NULL, new Flag.FlagStatusEnumFactory())); 5169 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 5170 res.setPeriod(parsePeriod(xpp)); 5171 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 5172 res.setSubject(parseReference(xpp)); 5173 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 5174 res.setEncounter(parseReference(xpp)); 5175 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 5176 res.setAuthor(parseReference(xpp)); 5177 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 5178 res.setCode(parseCodeableConcept(xpp)); 5179 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5180 unknownContent(xpp); 5181 eventType = nextNoWhitespace(xpp); 5182 } 5183 next(xpp); 5184 parseElementClose(res); 5185 return res; 5186 } 5187 5188 protected Goal parseGoal(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5189 Goal res = new Goal(); 5190 parseDomainResourceAttributes(xpp, res); 5191 next(xpp); 5192 int eventType = nextNoWhitespace(xpp); 5193 while (eventType != XmlPullParser.END_TAG) { 5194 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5195 res.getIdentifier().add(parseIdentifier(xpp)); 5196 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 5197 res.setSubject(parseReference(xpp)); 5198 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "start")) { 5199 res.setStart(parseType("start", xpp)); 5200 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "target")) { 5201 res.setTarget(parseType("target", xpp)); 5202 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 5203 res.getCategory().add(parseCodeableConcept(xpp)); 5204 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 5205 res.setDescriptionElement(parseString(xpp)); 5206 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 5207 res.setStatusElement(parseEnumeration(xpp, Goal.GoalStatus.NULL, new Goal.GoalStatusEnumFactory())); 5208 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusDate")) { 5209 res.setStatusDateElement(parseDate(xpp)); 5210 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusReason")) { 5211 res.setStatusReason(parseCodeableConcept(xpp)); 5212 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 5213 res.setAuthor(parseReference(xpp)); 5214 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 5215 res.setPriority(parseCodeableConcept(xpp)); 5216 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("addresses")) { 5217 res.getAddresses().add(parseReference(xpp)); 5218 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 5219 res.getNote().add(parseAnnotation(xpp)); 5220 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 5221 res.getOutcome().add(parseGoalGoalOutcomeComponent(xpp, res)); 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 Goal.GoalOutcomeComponent parseGoalGoalOutcomeComponent(XmlPullParser xpp, Goal owner) throws XmlPullParserException, IOException, FHIRFormatError { 5232 Goal.GoalOutcomeComponent res = new Goal.GoalOutcomeComponent(); 5233 parseBackboneAttributes(xpp, res); 5234 next(xpp); 5235 int eventType = nextNoWhitespace(xpp); 5236 while (eventType != XmlPullParser.END_TAG) { 5237 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "result")) { 5238 res.setResult(parseType("result", xpp)); 5239 } else if (!parseBackboneContent(eventType, xpp, res)) 5240 unknownContent(xpp); 5241 eventType = nextNoWhitespace(xpp); 5242 } 5243 next(xpp); 5244 parseElementClose(res); 5245 return res; 5246 } 5247 5248 protected Group parseGroup(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5249 Group res = new Group(); 5250 parseDomainResourceAttributes(xpp, res); 5251 next(xpp); 5252 int eventType = nextNoWhitespace(xpp); 5253 while (eventType != XmlPullParser.END_TAG) { 5254 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5255 res.getIdentifier().add(parseIdentifier(xpp)); 5256 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 5257 res.setTypeElement(parseEnumeration(xpp, Group.GroupType.NULL, new Group.GroupTypeEnumFactory())); 5258 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actual")) { 5259 res.setActualElement(parseBoolean(xpp)); 5260 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 5261 res.setCode(parseCodeableConcept(xpp)); 5262 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 5263 res.setNameElement(parseString(xpp)); 5264 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 5265 res.setQuantityElement(parseUnsignedInt(xpp)); 5266 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("characteristic")) { 5267 res.getCharacteristic().add(parseGroupGroupCharacteristicComponent(xpp, res)); 5268 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("member")) { 5269 res.getMember().add(parseGroupGroupMemberComponent(xpp, res)); 5270 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5271 unknownContent(xpp); 5272 eventType = nextNoWhitespace(xpp); 5273 } 5274 next(xpp); 5275 parseElementClose(res); 5276 return res; 5277 } 5278 5279 protected Group.GroupCharacteristicComponent parseGroupGroupCharacteristicComponent(XmlPullParser xpp, Group owner) throws XmlPullParserException, IOException, FHIRFormatError { 5280 Group.GroupCharacteristicComponent res = new Group.GroupCharacteristicComponent(); 5281 parseBackboneAttributes(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("code")) { 5286 res.setCode(parseCodeableConcept(xpp)); 5287 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 5288 res.setValue(parseType("value", xpp)); 5289 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exclude")) { 5290 res.setExcludeElement(parseBoolean(xpp)); 5291 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 5292 res.setPeriod(parsePeriod(xpp)); 5293 } else if (!parseBackboneContent(eventType, xpp, res)) 5294 unknownContent(xpp); 5295 eventType = nextNoWhitespace(xpp); 5296 } 5297 next(xpp); 5298 parseElementClose(res); 5299 return res; 5300 } 5301 5302 protected Group.GroupMemberComponent parseGroupGroupMemberComponent(XmlPullParser xpp, Group owner) throws XmlPullParserException, IOException, FHIRFormatError { 5303 Group.GroupMemberComponent res = new Group.GroupMemberComponent(); 5304 parseBackboneAttributes(xpp, res); 5305 next(xpp); 5306 int eventType = nextNoWhitespace(xpp); 5307 while (eventType != XmlPullParser.END_TAG) { 5308 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entity")) { 5309 res.setEntity(parseReference(xpp)); 5310 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 5311 res.setPeriod(parsePeriod(xpp)); 5312 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("inactive")) { 5313 res.setInactiveElement(parseBoolean(xpp)); 5314 } else if (!parseBackboneContent(eventType, xpp, res)) 5315 unknownContent(xpp); 5316 eventType = nextNoWhitespace(xpp); 5317 } 5318 next(xpp); 5319 parseElementClose(res); 5320 return res; 5321 } 5322 5323 protected HealthcareService parseHealthcareService(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5324 HealthcareService res = new HealthcareService(); 5325 parseDomainResourceAttributes(xpp, res); 5326 next(xpp); 5327 int eventType = nextNoWhitespace(xpp); 5328 while (eventType != XmlPullParser.END_TAG) { 5329 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5330 res.getIdentifier().add(parseIdentifier(xpp)); 5331 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("providedBy")) { 5332 res.setProvidedBy(parseReference(xpp)); 5333 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceCategory")) { 5334 res.setServiceCategory(parseCodeableConcept(xpp)); 5335 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceType")) { 5336 res.getServiceType().add(parseHealthcareServiceServiceTypeComponent(xpp, res)); 5337 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 5338 res.setLocation(parseReference(xpp)); 5339 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceName")) { 5340 res.setServiceNameElement(parseString(xpp)); 5341 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 5342 res.setCommentElement(parseString(xpp)); 5343 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("extraDetails")) { 5344 res.setExtraDetailsElement(parseString(xpp)); 5345 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("photo")) { 5346 res.setPhoto(parseAttachment(xpp)); 5347 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 5348 res.getTelecom().add(parseContactPoint(xpp)); 5349 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverageArea")) { 5350 res.getCoverageArea().add(parseReference(xpp)); 5351 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceProvisionCode")) { 5352 res.getServiceProvisionCode().add(parseCodeableConcept(xpp)); 5353 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eligibility")) { 5354 res.setEligibility(parseCodeableConcept(xpp)); 5355 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eligibilityNote")) { 5356 res.setEligibilityNoteElement(parseString(xpp)); 5357 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("programName")) { 5358 res.getProgramName().add(parseString(xpp)); 5359 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("characteristic")) { 5360 res.getCharacteristic().add(parseCodeableConcept(xpp)); 5361 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referralMethod")) { 5362 res.getReferralMethod().add(parseCodeableConcept(xpp)); 5363 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publicKey")) { 5364 res.setPublicKeyElement(parseString(xpp)); 5365 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("appointmentRequired")) { 5366 res.setAppointmentRequiredElement(parseBoolean(xpp)); 5367 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availableTime")) { 5368 res.getAvailableTime().add(parseHealthcareServiceHealthcareServiceAvailableTimeComponent(xpp, res)); 5369 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notAvailable")) { 5370 res.getNotAvailable().add(parseHealthcareServiceHealthcareServiceNotAvailableComponent(xpp, res)); 5371 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availabilityExceptions")) { 5372 res.setAvailabilityExceptionsElement(parseString(xpp)); 5373 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5374 unknownContent(xpp); 5375 eventType = nextNoWhitespace(xpp); 5376 } 5377 next(xpp); 5378 parseElementClose(res); 5379 return res; 5380 } 5381 5382 protected HealthcareService.ServiceTypeComponent parseHealthcareServiceServiceTypeComponent(XmlPullParser xpp, HealthcareService owner) throws XmlPullParserException, IOException, FHIRFormatError { 5383 HealthcareService.ServiceTypeComponent res = new HealthcareService.ServiceTypeComponent(); 5384 parseBackboneAttributes(xpp, res); 5385 next(xpp); 5386 int eventType = nextNoWhitespace(xpp); 5387 while (eventType != XmlPullParser.END_TAG) { 5388 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 5389 res.setType(parseCodeableConcept(xpp)); 5390 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialty")) { 5391 res.getSpecialty().add(parseCodeableConcept(xpp)); 5392 } else if (!parseBackboneContent(eventType, xpp, res)) 5393 unknownContent(xpp); 5394 eventType = nextNoWhitespace(xpp); 5395 } 5396 next(xpp); 5397 parseElementClose(res); 5398 return res; 5399 } 5400 5401 protected HealthcareService.HealthcareServiceAvailableTimeComponent parseHealthcareServiceHealthcareServiceAvailableTimeComponent(XmlPullParser xpp, HealthcareService owner) throws XmlPullParserException, IOException, FHIRFormatError { 5402 HealthcareService.HealthcareServiceAvailableTimeComponent res = new HealthcareService.HealthcareServiceAvailableTimeComponent(); 5403 parseBackboneAttributes(xpp, res); 5404 next(xpp); 5405 int eventType = nextNoWhitespace(xpp); 5406 while (eventType != XmlPullParser.END_TAG) { 5407 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("daysOfWeek")) { 5408 res.getDaysOfWeek().add(parseEnumeration(xpp, HealthcareService.DaysOfWeek.NULL, new HealthcareService.DaysOfWeekEnumFactory())); 5409 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("allDay")) { 5410 res.setAllDayElement(parseBoolean(xpp)); 5411 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availableStartTime")) { 5412 res.setAvailableStartTimeElement(parseTime(xpp)); 5413 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availableEndTime")) { 5414 res.setAvailableEndTimeElement(parseTime(xpp)); 5415 } else if (!parseBackboneContent(eventType, xpp, res)) 5416 unknownContent(xpp); 5417 eventType = nextNoWhitespace(xpp); 5418 } 5419 next(xpp); 5420 parseElementClose(res); 5421 return res; 5422 } 5423 5424 protected HealthcareService.HealthcareServiceNotAvailableComponent parseHealthcareServiceHealthcareServiceNotAvailableComponent(XmlPullParser xpp, HealthcareService owner) throws XmlPullParserException, IOException, FHIRFormatError { 5425 HealthcareService.HealthcareServiceNotAvailableComponent res = new HealthcareService.HealthcareServiceNotAvailableComponent(); 5426 parseBackboneAttributes(xpp, res); 5427 next(xpp); 5428 int eventType = nextNoWhitespace(xpp); 5429 while (eventType != XmlPullParser.END_TAG) { 5430 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 5431 res.setDescriptionElement(parseString(xpp)); 5432 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("during")) { 5433 res.setDuring(parsePeriod(xpp)); 5434 } else if (!parseBackboneContent(eventType, xpp, res)) 5435 unknownContent(xpp); 5436 eventType = nextNoWhitespace(xpp); 5437 } 5438 next(xpp); 5439 parseElementClose(res); 5440 return res; 5441 } 5442 5443 protected ImagingObjectSelection parseImagingObjectSelection(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5444 ImagingObjectSelection res = new ImagingObjectSelection(); 5445 parseDomainResourceAttributes(xpp, res); 5446 next(xpp); 5447 int eventType = nextNoWhitespace(xpp); 5448 while (eventType != XmlPullParser.END_TAG) { 5449 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uid")) { 5450 res.setUidElement(parseOid(xpp)); 5451 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 5452 res.setPatient(parseReference(xpp)); 5453 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 5454 res.setTitle(parseCodeableConcept(xpp)); 5455 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 5456 res.setDescriptionElement(parseString(xpp)); 5457 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 5458 res.setAuthor(parseReference(xpp)); 5459 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authoringTime")) { 5460 res.setAuthoringTimeElement(parseDateTime(xpp)); 5461 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("study")) { 5462 res.getStudy().add(parseImagingObjectSelectionStudyComponent(xpp, res)); 5463 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5464 unknownContent(xpp); 5465 eventType = nextNoWhitespace(xpp); 5466 } 5467 next(xpp); 5468 parseElementClose(res); 5469 return res; 5470 } 5471 5472 protected ImagingObjectSelection.StudyComponent parseImagingObjectSelectionStudyComponent(XmlPullParser xpp, ImagingObjectSelection owner) throws XmlPullParserException, IOException, FHIRFormatError { 5473 ImagingObjectSelection.StudyComponent res = new ImagingObjectSelection.StudyComponent(); 5474 parseBackboneAttributes(xpp, res); 5475 next(xpp); 5476 int eventType = nextNoWhitespace(xpp); 5477 while (eventType != XmlPullParser.END_TAG) { 5478 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uid")) { 5479 res.setUidElement(parseOid(xpp)); 5480 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 5481 res.setUrlElement(parseUri(xpp)); 5482 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("imagingStudy")) { 5483 res.setImagingStudy(parseReference(xpp)); 5484 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("series")) { 5485 res.getSeries().add(parseImagingObjectSelectionSeriesComponent(xpp, owner)); 5486 } else if (!parseBackboneContent(eventType, xpp, res)) 5487 unknownContent(xpp); 5488 eventType = nextNoWhitespace(xpp); 5489 } 5490 next(xpp); 5491 parseElementClose(res); 5492 return res; 5493 } 5494 5495 protected ImagingObjectSelection.SeriesComponent parseImagingObjectSelectionSeriesComponent(XmlPullParser xpp, ImagingObjectSelection owner) throws XmlPullParserException, IOException, FHIRFormatError { 5496 ImagingObjectSelection.SeriesComponent res = new ImagingObjectSelection.SeriesComponent(); 5497 parseBackboneAttributes(xpp, res); 5498 next(xpp); 5499 int eventType = nextNoWhitespace(xpp); 5500 while (eventType != XmlPullParser.END_TAG) { 5501 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uid")) { 5502 res.setUidElement(parseOid(xpp)); 5503 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 5504 res.setUrlElement(parseUri(xpp)); 5505 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instance")) { 5506 res.getInstance().add(parseImagingObjectSelectionInstanceComponent(xpp, owner)); 5507 } else if (!parseBackboneContent(eventType, xpp, res)) 5508 unknownContent(xpp); 5509 eventType = nextNoWhitespace(xpp); 5510 } 5511 next(xpp); 5512 parseElementClose(res); 5513 return res; 5514 } 5515 5516 protected ImagingObjectSelection.InstanceComponent parseImagingObjectSelectionInstanceComponent(XmlPullParser xpp, ImagingObjectSelection owner) throws XmlPullParserException, IOException, FHIRFormatError { 5517 ImagingObjectSelection.InstanceComponent res = new ImagingObjectSelection.InstanceComponent(); 5518 parseBackboneAttributes(xpp, res); 5519 next(xpp); 5520 int eventType = nextNoWhitespace(xpp); 5521 while (eventType != XmlPullParser.END_TAG) { 5522 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sopClass")) { 5523 res.setSopClassElement(parseOid(xpp)); 5524 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uid")) { 5525 res.setUidElement(parseOid(xpp)); 5526 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 5527 res.setUrlElement(parseUri(xpp)); 5528 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("frames")) { 5529 res.getFrames().add(parseImagingObjectSelectionFramesComponent(xpp, owner)); 5530 } else if (!parseBackboneContent(eventType, xpp, res)) 5531 unknownContent(xpp); 5532 eventType = nextNoWhitespace(xpp); 5533 } 5534 next(xpp); 5535 parseElementClose(res); 5536 return res; 5537 } 5538 5539 protected ImagingObjectSelection.FramesComponent parseImagingObjectSelectionFramesComponent(XmlPullParser xpp, ImagingObjectSelection owner) throws XmlPullParserException, IOException, FHIRFormatError { 5540 ImagingObjectSelection.FramesComponent res = new ImagingObjectSelection.FramesComponent(); 5541 parseBackboneAttributes(xpp, res); 5542 next(xpp); 5543 int eventType = nextNoWhitespace(xpp); 5544 while (eventType != XmlPullParser.END_TAG) { 5545 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("frameNumbers")) { 5546 res.getFrameNumbers().add(parseUnsignedInt(xpp)); 5547 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 5548 res.setUrlElement(parseUri(xpp)); 5549 } else if (!parseBackboneContent(eventType, xpp, res)) 5550 unknownContent(xpp); 5551 eventType = nextNoWhitespace(xpp); 5552 } 5553 next(xpp); 5554 parseElementClose(res); 5555 return res; 5556 } 5557 5558 protected ImagingStudy parseImagingStudy(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5559 ImagingStudy res = new ImagingStudy(); 5560 parseDomainResourceAttributes(xpp, res); 5561 next(xpp); 5562 int eventType = nextNoWhitespace(xpp); 5563 while (eventType != XmlPullParser.END_TAG) { 5564 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("started")) { 5565 res.setStartedElement(parseDateTime(xpp)); 5566 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 5567 res.setPatient(parseReference(xpp)); 5568 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uid")) { 5569 res.setUidElement(parseOid(xpp)); 5570 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("accession")) { 5571 res.setAccession(parseIdentifier(xpp)); 5572 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5573 res.getIdentifier().add(parseIdentifier(xpp)); 5574 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("order")) { 5575 res.getOrder().add(parseReference(xpp)); 5576 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modalityList")) { 5577 res.getModalityList().add(parseCoding(xpp)); 5578 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referrer")) { 5579 res.setReferrer(parseReference(xpp)); 5580 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availability")) { 5581 res.setAvailabilityElement(parseEnumeration(xpp, ImagingStudy.InstanceAvailability.NULL, new ImagingStudy.InstanceAvailabilityEnumFactory())); 5582 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 5583 res.setUrlElement(parseUri(xpp)); 5584 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("numberOfSeries")) { 5585 res.setNumberOfSeriesElement(parseUnsignedInt(xpp)); 5586 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("numberOfInstances")) { 5587 res.setNumberOfInstancesElement(parseUnsignedInt(xpp)); 5588 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("procedure")) { 5589 res.getProcedure().add(parseReference(xpp)); 5590 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("interpreter")) { 5591 res.setInterpreter(parseReference(xpp)); 5592 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 5593 res.setDescriptionElement(parseString(xpp)); 5594 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("series")) { 5595 res.getSeries().add(parseImagingStudyImagingStudySeriesComponent(xpp, res)); 5596 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5597 unknownContent(xpp); 5598 eventType = nextNoWhitespace(xpp); 5599 } 5600 next(xpp); 5601 parseElementClose(res); 5602 return res; 5603 } 5604 5605 protected ImagingStudy.ImagingStudySeriesComponent parseImagingStudyImagingStudySeriesComponent(XmlPullParser xpp, ImagingStudy owner) throws XmlPullParserException, IOException, FHIRFormatError { 5606 ImagingStudy.ImagingStudySeriesComponent res = new ImagingStudy.ImagingStudySeriesComponent(); 5607 parseBackboneAttributes(xpp, res); 5608 next(xpp); 5609 int eventType = nextNoWhitespace(xpp); 5610 while (eventType != XmlPullParser.END_TAG) { 5611 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("number")) { 5612 res.setNumberElement(parseUnsignedInt(xpp)); 5613 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modality")) { 5614 res.setModality(parseCoding(xpp)); 5615 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uid")) { 5616 res.setUidElement(parseOid(xpp)); 5617 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 5618 res.setDescriptionElement(parseString(xpp)); 5619 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("numberOfInstances")) { 5620 res.setNumberOfInstancesElement(parseUnsignedInt(xpp)); 5621 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availability")) { 5622 res.setAvailabilityElement(parseEnumeration(xpp, ImagingStudy.InstanceAvailability.NULL, new ImagingStudy.InstanceAvailabilityEnumFactory())); 5623 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 5624 res.setUrlElement(parseUri(xpp)); 5625 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 5626 res.setBodySite(parseCoding(xpp)); 5627 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("laterality")) { 5628 res.setLaterality(parseCoding(xpp)); 5629 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("started")) { 5630 res.setStartedElement(parseDateTime(xpp)); 5631 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instance")) { 5632 res.getInstance().add(parseImagingStudyImagingStudySeriesInstanceComponent(xpp, owner)); 5633 } else if (!parseBackboneContent(eventType, xpp, res)) 5634 unknownContent(xpp); 5635 eventType = nextNoWhitespace(xpp); 5636 } 5637 next(xpp); 5638 parseElementClose(res); 5639 return res; 5640 } 5641 5642 protected ImagingStudy.ImagingStudySeriesInstanceComponent parseImagingStudyImagingStudySeriesInstanceComponent(XmlPullParser xpp, ImagingStudy owner) throws XmlPullParserException, IOException, FHIRFormatError { 5643 ImagingStudy.ImagingStudySeriesInstanceComponent res = new ImagingStudy.ImagingStudySeriesInstanceComponent(); 5644 parseBackboneAttributes(xpp, res); 5645 next(xpp); 5646 int eventType = nextNoWhitespace(xpp); 5647 while (eventType != XmlPullParser.END_TAG) { 5648 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("number")) { 5649 res.setNumberElement(parseUnsignedInt(xpp)); 5650 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uid")) { 5651 res.setUidElement(parseOid(xpp)); 5652 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sopClass")) { 5653 res.setSopClassElement(parseOid(xpp)); 5654 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 5655 res.setTypeElement(parseString(xpp)); 5656 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 5657 res.setTitleElement(parseString(xpp)); 5658 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 5659 res.getContent().add(parseAttachment(xpp)); 5660 } else if (!parseBackboneContent(eventType, xpp, res)) 5661 unknownContent(xpp); 5662 eventType = nextNoWhitespace(xpp); 5663 } 5664 next(xpp); 5665 parseElementClose(res); 5666 return res; 5667 } 5668 5669 protected Immunization parseImmunization(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5670 Immunization res = new Immunization(); 5671 parseDomainResourceAttributes(xpp, res); 5672 next(xpp); 5673 int eventType = nextNoWhitespace(xpp); 5674 while (eventType != XmlPullParser.END_TAG) { 5675 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5676 res.getIdentifier().add(parseIdentifier(xpp)); 5677 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 5678 res.setStatusElement(parseCode(xpp)); 5679 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 5680 res.setDateElement(parseDateTime(xpp)); 5681 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("vaccineCode")) { 5682 res.setVaccineCode(parseCodeableConcept(xpp)); 5683 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 5684 res.setPatient(parseReference(xpp)); 5685 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("wasNotGiven")) { 5686 res.setWasNotGivenElement(parseBoolean(xpp)); 5687 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reported")) { 5688 res.setReportedElement(parseBoolean(xpp)); 5689 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 5690 res.setPerformer(parseReference(xpp)); 5691 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requester")) { 5692 res.setRequester(parseReference(xpp)); 5693 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 5694 res.setEncounter(parseReference(xpp)); 5695 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manufacturer")) { 5696 res.setManufacturer(parseReference(xpp)); 5697 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 5698 res.setLocation(parseReference(xpp)); 5699 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lotNumber")) { 5700 res.setLotNumberElement(parseString(xpp)); 5701 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expirationDate")) { 5702 res.setExpirationDateElement(parseDate(xpp)); 5703 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("site")) { 5704 res.setSite(parseCodeableConcept(xpp)); 5705 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("route")) { 5706 res.setRoute(parseCodeableConcept(xpp)); 5707 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseQuantity")) { 5708 res.setDoseQuantity(parseSimpleQuantity(xpp)); 5709 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 5710 res.getNote().add(parseAnnotation(xpp)); 5711 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("explanation")) { 5712 res.setExplanation(parseImmunizationImmunizationExplanationComponent(xpp, res)); 5713 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reaction")) { 5714 res.getReaction().add(parseImmunizationImmunizationReactionComponent(xpp, res)); 5715 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("vaccinationProtocol")) { 5716 res.getVaccinationProtocol().add(parseImmunizationImmunizationVaccinationProtocolComponent(xpp, res)); 5717 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5718 unknownContent(xpp); 5719 eventType = nextNoWhitespace(xpp); 5720 } 5721 next(xpp); 5722 parseElementClose(res); 5723 return res; 5724 } 5725 5726 protected Immunization.ImmunizationExplanationComponent parseImmunizationImmunizationExplanationComponent(XmlPullParser xpp, Immunization owner) throws XmlPullParserException, IOException, FHIRFormatError { 5727 Immunization.ImmunizationExplanationComponent res = new Immunization.ImmunizationExplanationComponent(); 5728 parseBackboneAttributes(xpp, res); 5729 next(xpp); 5730 int eventType = nextNoWhitespace(xpp); 5731 while (eventType != XmlPullParser.END_TAG) { 5732 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 5733 res.getReason().add(parseCodeableConcept(xpp)); 5734 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonNotGiven")) { 5735 res.getReasonNotGiven().add(parseCodeableConcept(xpp)); 5736 } else if (!parseBackboneContent(eventType, xpp, res)) 5737 unknownContent(xpp); 5738 eventType = nextNoWhitespace(xpp); 5739 } 5740 next(xpp); 5741 parseElementClose(res); 5742 return res; 5743 } 5744 5745 protected Immunization.ImmunizationReactionComponent parseImmunizationImmunizationReactionComponent(XmlPullParser xpp, Immunization owner) throws XmlPullParserException, IOException, FHIRFormatError { 5746 Immunization.ImmunizationReactionComponent res = new Immunization.ImmunizationReactionComponent(); 5747 parseBackboneAttributes(xpp, res); 5748 next(xpp); 5749 int eventType = nextNoWhitespace(xpp); 5750 while (eventType != XmlPullParser.END_TAG) { 5751 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 5752 res.setDateElement(parseDateTime(xpp)); 5753 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 5754 res.setDetail(parseReference(xpp)); 5755 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reported")) { 5756 res.setReportedElement(parseBoolean(xpp)); 5757 } else if (!parseBackboneContent(eventType, xpp, res)) 5758 unknownContent(xpp); 5759 eventType = nextNoWhitespace(xpp); 5760 } 5761 next(xpp); 5762 parseElementClose(res); 5763 return res; 5764 } 5765 5766 protected Immunization.ImmunizationVaccinationProtocolComponent parseImmunizationImmunizationVaccinationProtocolComponent(XmlPullParser xpp, Immunization owner) throws XmlPullParserException, IOException, FHIRFormatError { 5767 Immunization.ImmunizationVaccinationProtocolComponent res = new Immunization.ImmunizationVaccinationProtocolComponent(); 5768 parseBackboneAttributes(xpp, res); 5769 next(xpp); 5770 int eventType = nextNoWhitespace(xpp); 5771 while (eventType != XmlPullParser.END_TAG) { 5772 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseSequence")) { 5773 res.setDoseSequenceElement(parsePositiveInt(xpp)); 5774 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 5775 res.setDescriptionElement(parseString(xpp)); 5776 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authority")) { 5777 res.setAuthority(parseReference(xpp)); 5778 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("series")) { 5779 res.setSeriesElement(parseString(xpp)); 5780 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("seriesDoses")) { 5781 res.setSeriesDosesElement(parsePositiveInt(xpp)); 5782 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("targetDisease")) { 5783 res.getTargetDisease().add(parseCodeableConcept(xpp)); 5784 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseStatus")) { 5785 res.setDoseStatus(parseCodeableConcept(xpp)); 5786 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseStatusReason")) { 5787 res.setDoseStatusReason(parseCodeableConcept(xpp)); 5788 } else if (!parseBackboneContent(eventType, xpp, res)) 5789 unknownContent(xpp); 5790 eventType = nextNoWhitespace(xpp); 5791 } 5792 next(xpp); 5793 parseElementClose(res); 5794 return res; 5795 } 5796 5797 protected ImmunizationRecommendation parseImmunizationRecommendation(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5798 ImmunizationRecommendation res = new ImmunizationRecommendation(); 5799 parseDomainResourceAttributes(xpp, res); 5800 next(xpp); 5801 int eventType = nextNoWhitespace(xpp); 5802 while (eventType != XmlPullParser.END_TAG) { 5803 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5804 res.getIdentifier().add(parseIdentifier(xpp)); 5805 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 5806 res.setPatient(parseReference(xpp)); 5807 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recommendation")) { 5808 res.getRecommendation().add(parseImmunizationRecommendationImmunizationRecommendationRecommendationComponent(xpp, res)); 5809 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5810 unknownContent(xpp); 5811 eventType = nextNoWhitespace(xpp); 5812 } 5813 next(xpp); 5814 parseElementClose(res); 5815 return res; 5816 } 5817 5818 protected ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent parseImmunizationRecommendationImmunizationRecommendationRecommendationComponent(XmlPullParser xpp, ImmunizationRecommendation owner) throws XmlPullParserException, IOException, FHIRFormatError { 5819 ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent res = new ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent(); 5820 parseBackboneAttributes(xpp, res); 5821 next(xpp); 5822 int eventType = nextNoWhitespace(xpp); 5823 while (eventType != XmlPullParser.END_TAG) { 5824 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 5825 res.setDateElement(parseDateTime(xpp)); 5826 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("vaccineCode")) { 5827 res.setVaccineCode(parseCodeableConcept(xpp)); 5828 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseNumber")) { 5829 res.setDoseNumberElement(parsePositiveInt(xpp)); 5830 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("forecastStatus")) { 5831 res.setForecastStatus(parseCodeableConcept(xpp)); 5832 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateCriterion")) { 5833 res.getDateCriterion().add(parseImmunizationRecommendationImmunizationRecommendationRecommendationDateCriterionComponent(xpp, owner)); 5834 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("protocol")) { 5835 res.setProtocol(parseImmunizationRecommendationImmunizationRecommendationRecommendationProtocolComponent(xpp, owner)); 5836 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingImmunization")) { 5837 res.getSupportingImmunization().add(parseReference(xpp)); 5838 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingPatientInformation")) { 5839 res.getSupportingPatientInformation().add(parseReference(xpp)); 5840 } else if (!parseBackboneContent(eventType, xpp, res)) 5841 unknownContent(xpp); 5842 eventType = nextNoWhitespace(xpp); 5843 } 5844 next(xpp); 5845 parseElementClose(res); 5846 return res; 5847 } 5848 5849 protected ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent parseImmunizationRecommendationImmunizationRecommendationRecommendationDateCriterionComponent(XmlPullParser xpp, ImmunizationRecommendation owner) throws XmlPullParserException, IOException, FHIRFormatError { 5850 ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent res = new ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent(); 5851 parseBackboneAttributes(xpp, res); 5852 next(xpp); 5853 int eventType = nextNoWhitespace(xpp); 5854 while (eventType != XmlPullParser.END_TAG) { 5855 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 5856 res.setCode(parseCodeableConcept(xpp)); 5857 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 5858 res.setValueElement(parseDateTime(xpp)); 5859 } else if (!parseBackboneContent(eventType, xpp, res)) 5860 unknownContent(xpp); 5861 eventType = nextNoWhitespace(xpp); 5862 } 5863 next(xpp); 5864 parseElementClose(res); 5865 return res; 5866 } 5867 5868 protected ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent parseImmunizationRecommendationImmunizationRecommendationRecommendationProtocolComponent(XmlPullParser xpp, ImmunizationRecommendation owner) throws XmlPullParserException, IOException, FHIRFormatError { 5869 ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent res = new ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent(); 5870 parseBackboneAttributes(xpp, res); 5871 next(xpp); 5872 int eventType = nextNoWhitespace(xpp); 5873 while (eventType != XmlPullParser.END_TAG) { 5874 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseSequence")) { 5875 res.setDoseSequenceElement(parseInteger(xpp)); 5876 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 5877 res.setDescriptionElement(parseString(xpp)); 5878 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authority")) { 5879 res.setAuthority(parseReference(xpp)); 5880 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("series")) { 5881 res.setSeriesElement(parseString(xpp)); 5882 } else if (!parseBackboneContent(eventType, xpp, res)) 5883 unknownContent(xpp); 5884 eventType = nextNoWhitespace(xpp); 5885 } 5886 next(xpp); 5887 parseElementClose(res); 5888 return res; 5889 } 5890 5891 protected ImplementationGuide parseImplementationGuide(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5892 ImplementationGuide res = new ImplementationGuide(); 5893 parseDomainResourceAttributes(xpp, res); 5894 next(xpp); 5895 int eventType = nextNoWhitespace(xpp); 5896 while (eventType != XmlPullParser.END_TAG) { 5897 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 5898 res.setUrlElement(parseUri(xpp)); 5899 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 5900 res.setVersionElement(parseString(xpp)); 5901 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 5902 res.setNameElement(parseString(xpp)); 5903 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 5904 res.setStatusElement(parseEnumeration(xpp, Enumerations.ConformanceResourceStatus.NULL, new Enumerations.ConformanceResourceStatusEnumFactory())); 5905 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 5906 res.setExperimentalElement(parseBoolean(xpp)); 5907 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 5908 res.setPublisherElement(parseString(xpp)); 5909 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 5910 res.getContact().add(parseImplementationGuideImplementationGuideContactComponent(xpp, res)); 5911 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 5912 res.setDateElement(parseDateTime(xpp)); 5913 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 5914 res.setDescriptionElement(parseString(xpp)); 5915 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 5916 res.getUseContext().add(parseCodeableConcept(xpp)); 5917 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 5918 res.setCopyrightElement(parseString(xpp)); 5919 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fhirVersion")) { 5920 res.setFhirVersionElement(parseId(xpp)); 5921 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dependency")) { 5922 res.getDependency().add(parseImplementationGuideImplementationGuideDependencyComponent(xpp, res)); 5923 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("package")) { 5924 res.getPackage().add(parseImplementationGuideImplementationGuidePackageComponent(xpp, res)); 5925 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("global")) { 5926 res.getGlobal().add(parseImplementationGuideImplementationGuideGlobalComponent(xpp, res)); 5927 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("binary")) { 5928 res.getBinary().add(parseUri(xpp)); 5929 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("page")) { 5930 res.setPage(parseImplementationGuideImplementationGuidePageComponent(xpp, res)); 5931 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5932 unknownContent(xpp); 5933 eventType = nextNoWhitespace(xpp); 5934 } 5935 next(xpp); 5936 parseElementClose(res); 5937 return res; 5938 } 5939 5940 protected ImplementationGuide.ImplementationGuideContactComponent parseImplementationGuideImplementationGuideContactComponent(XmlPullParser xpp, ImplementationGuide owner) throws XmlPullParserException, IOException, FHIRFormatError { 5941 ImplementationGuide.ImplementationGuideContactComponent res = new ImplementationGuide.ImplementationGuideContactComponent(); 5942 parseBackboneAttributes(xpp, res); 5943 next(xpp); 5944 int eventType = nextNoWhitespace(xpp); 5945 while (eventType != XmlPullParser.END_TAG) { 5946 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 5947 res.setNameElement(parseString(xpp)); 5948 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 5949 res.getTelecom().add(parseContactPoint(xpp)); 5950 } else if (!parseBackboneContent(eventType, xpp, res)) 5951 unknownContent(xpp); 5952 eventType = nextNoWhitespace(xpp); 5953 } 5954 next(xpp); 5955 parseElementClose(res); 5956 return res; 5957 } 5958 5959 protected ImplementationGuide.ImplementationGuideDependencyComponent parseImplementationGuideImplementationGuideDependencyComponent(XmlPullParser xpp, ImplementationGuide owner) throws XmlPullParserException, IOException, FHIRFormatError { 5960 ImplementationGuide.ImplementationGuideDependencyComponent res = new ImplementationGuide.ImplementationGuideDependencyComponent(); 5961 parseBackboneAttributes(xpp, res); 5962 next(xpp); 5963 int eventType = nextNoWhitespace(xpp); 5964 while (eventType != XmlPullParser.END_TAG) { 5965 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 5966 res.setTypeElement(parseEnumeration(xpp, ImplementationGuide.GuideDependencyType.NULL, new ImplementationGuide.GuideDependencyTypeEnumFactory())); 5967 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uri")) { 5968 res.setUriElement(parseUri(xpp)); 5969 } else if (!parseBackboneContent(eventType, xpp, res)) 5970 unknownContent(xpp); 5971 eventType = nextNoWhitespace(xpp); 5972 } 5973 next(xpp); 5974 parseElementClose(res); 5975 return res; 5976 } 5977 5978 protected ImplementationGuide.ImplementationGuidePackageComponent parseImplementationGuideImplementationGuidePackageComponent(XmlPullParser xpp, ImplementationGuide owner) throws XmlPullParserException, IOException, FHIRFormatError { 5979 ImplementationGuide.ImplementationGuidePackageComponent res = new ImplementationGuide.ImplementationGuidePackageComponent(); 5980 parseBackboneAttributes(xpp, res); 5981 next(xpp); 5982 int eventType = nextNoWhitespace(xpp); 5983 while (eventType != XmlPullParser.END_TAG) { 5984 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 5985 res.setNameElement(parseString(xpp)); 5986 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 5987 res.setDescriptionElement(parseString(xpp)); 5988 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 5989 res.getResource().add(parseImplementationGuideImplementationGuidePackageResourceComponent(xpp, owner)); 5990 } else if (!parseBackboneContent(eventType, xpp, res)) 5991 unknownContent(xpp); 5992 eventType = nextNoWhitespace(xpp); 5993 } 5994 next(xpp); 5995 parseElementClose(res); 5996 return res; 5997 } 5998 5999 protected ImplementationGuide.ImplementationGuidePackageResourceComponent parseImplementationGuideImplementationGuidePackageResourceComponent(XmlPullParser xpp, ImplementationGuide owner) throws XmlPullParserException, IOException, FHIRFormatError { 6000 ImplementationGuide.ImplementationGuidePackageResourceComponent res = new ImplementationGuide.ImplementationGuidePackageResourceComponent(); 6001 parseBackboneAttributes(xpp, res); 6002 next(xpp); 6003 int eventType = nextNoWhitespace(xpp); 6004 while (eventType != XmlPullParser.END_TAG) { 6005 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 6006 res.setPurposeElement(parseEnumeration(xpp, ImplementationGuide.GuideResourcePurpose.NULL, new ImplementationGuide.GuideResourcePurposeEnumFactory())); 6007 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 6008 res.setNameElement(parseString(xpp)); 6009 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 6010 res.setDescriptionElement(parseString(xpp)); 6011 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("acronym")) { 6012 res.setAcronymElement(parseString(xpp)); 6013 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "source")) { 6014 res.setSource(parseType("source", xpp)); 6015 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exampleFor")) { 6016 res.setExampleFor(parseReference(xpp)); 6017 } else if (!parseBackboneContent(eventType, xpp, res)) 6018 unknownContent(xpp); 6019 eventType = nextNoWhitespace(xpp); 6020 } 6021 next(xpp); 6022 parseElementClose(res); 6023 return res; 6024 } 6025 6026 protected ImplementationGuide.ImplementationGuideGlobalComponent parseImplementationGuideImplementationGuideGlobalComponent(XmlPullParser xpp, ImplementationGuide owner) throws XmlPullParserException, IOException, FHIRFormatError { 6027 ImplementationGuide.ImplementationGuideGlobalComponent res = new ImplementationGuide.ImplementationGuideGlobalComponent(); 6028 parseBackboneAttributes(xpp, res); 6029 next(xpp); 6030 int eventType = nextNoWhitespace(xpp); 6031 while (eventType != XmlPullParser.END_TAG) { 6032 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6033 res.setTypeElement(parseCode(xpp)); 6034 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 6035 res.setProfile(parseReference(xpp)); 6036 } else if (!parseBackboneContent(eventType, xpp, res)) 6037 unknownContent(xpp); 6038 eventType = nextNoWhitespace(xpp); 6039 } 6040 next(xpp); 6041 parseElementClose(res); 6042 return res; 6043 } 6044 6045 protected ImplementationGuide.ImplementationGuidePageComponent parseImplementationGuideImplementationGuidePageComponent(XmlPullParser xpp, ImplementationGuide owner) throws XmlPullParserException, IOException, FHIRFormatError { 6046 ImplementationGuide.ImplementationGuidePageComponent res = new ImplementationGuide.ImplementationGuidePageComponent(); 6047 parseBackboneAttributes(xpp, res); 6048 next(xpp); 6049 int eventType = nextNoWhitespace(xpp); 6050 while (eventType != XmlPullParser.END_TAG) { 6051 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 6052 res.setSourceElement(parseUri(xpp)); 6053 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 6054 res.setNameElement(parseString(xpp)); 6055 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 6056 res.setKindElement(parseEnumeration(xpp, ImplementationGuide.GuidePageKind.NULL, new ImplementationGuide.GuidePageKindEnumFactory())); 6057 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6058 res.getType().add(parseCode(xpp)); 6059 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("package")) { 6060 res.getPackage().add(parseString(xpp)); 6061 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("format")) { 6062 res.setFormatElement(parseCode(xpp)); 6063 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("page")) { 6064 res.getPage().add(parseImplementationGuideImplementationGuidePageComponent(xpp, owner)); 6065 } else if (!parseBackboneContent(eventType, xpp, res)) 6066 unknownContent(xpp); 6067 eventType = nextNoWhitespace(xpp); 6068 } 6069 next(xpp); 6070 parseElementClose(res); 6071 return res; 6072 } 6073 6074 protected List_ parseList_(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6075 List_ res = new List_(); 6076 parseDomainResourceAttributes(xpp, res); 6077 next(xpp); 6078 int eventType = nextNoWhitespace(xpp); 6079 while (eventType != XmlPullParser.END_TAG) { 6080 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6081 res.getIdentifier().add(parseIdentifier(xpp)); 6082 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 6083 res.setTitleElement(parseString(xpp)); 6084 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 6085 res.setCode(parseCodeableConcept(xpp)); 6086 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 6087 res.setSubject(parseReference(xpp)); 6088 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 6089 res.setSource(parseReference(xpp)); 6090 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 6091 res.setEncounter(parseReference(xpp)); 6092 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 6093 res.setStatusElement(parseEnumeration(xpp, List_.ListStatus.NULL, new List_.ListStatusEnumFactory())); 6094 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 6095 res.setDateElement(parseDateTime(xpp)); 6096 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orderedBy")) { 6097 res.setOrderedBy(parseCodeableConcept(xpp)); 6098 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 6099 res.setModeElement(parseEnumeration(xpp, List_.ListMode.NULL, new List_.ListModeEnumFactory())); 6100 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 6101 res.setNoteElement(parseString(xpp)); 6102 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entry")) { 6103 res.getEntry().add(parseList_ListEntryComponent(xpp, res)); 6104 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("emptyReason")) { 6105 res.setEmptyReason(parseCodeableConcept(xpp)); 6106 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6107 unknownContent(xpp); 6108 eventType = nextNoWhitespace(xpp); 6109 } 6110 next(xpp); 6111 parseElementClose(res); 6112 return res; 6113 } 6114 6115 protected List_.ListEntryComponent parseList_ListEntryComponent(XmlPullParser xpp, List_ owner) throws XmlPullParserException, IOException, FHIRFormatError { 6116 List_.ListEntryComponent res = new List_.ListEntryComponent(); 6117 parseBackboneAttributes(xpp, res); 6118 next(xpp); 6119 int eventType = nextNoWhitespace(xpp); 6120 while (eventType != XmlPullParser.END_TAG) { 6121 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("flag")) { 6122 res.setFlag(parseCodeableConcept(xpp)); 6123 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("deleted")) { 6124 res.setDeletedElement(parseBoolean(xpp)); 6125 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 6126 res.setDateElement(parseDateTime(xpp)); 6127 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 6128 res.setItem(parseReference(xpp)); 6129 } else if (!parseBackboneContent(eventType, xpp, res)) 6130 unknownContent(xpp); 6131 eventType = nextNoWhitespace(xpp); 6132 } 6133 next(xpp); 6134 parseElementClose(res); 6135 return res; 6136 } 6137 6138 protected Location parseLocation(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6139 Location res = new Location(); 6140 parseDomainResourceAttributes(xpp, res); 6141 next(xpp); 6142 int eventType = nextNoWhitespace(xpp); 6143 while (eventType != XmlPullParser.END_TAG) { 6144 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6145 res.getIdentifier().add(parseIdentifier(xpp)); 6146 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 6147 res.setStatusElement(parseEnumeration(xpp, Location.LocationStatus.NULL, new Location.LocationStatusEnumFactory())); 6148 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 6149 res.setNameElement(parseString(xpp)); 6150 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 6151 res.setDescriptionElement(parseString(xpp)); 6152 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 6153 res.setModeElement(parseEnumeration(xpp, Location.LocationMode.NULL, new Location.LocationModeEnumFactory())); 6154 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6155 res.setType(parseCodeableConcept(xpp)); 6156 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 6157 res.getTelecom().add(parseContactPoint(xpp)); 6158 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 6159 res.setAddress(parseAddress(xpp)); 6160 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("physicalType")) { 6161 res.setPhysicalType(parseCodeableConcept(xpp)); 6162 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("position")) { 6163 res.setPosition(parseLocationLocationPositionComponent(xpp, res)); 6164 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("managingOrganization")) { 6165 res.setManagingOrganization(parseReference(xpp)); 6166 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 6167 res.setPartOf(parseReference(xpp)); 6168 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6169 unknownContent(xpp); 6170 eventType = nextNoWhitespace(xpp); 6171 } 6172 next(xpp); 6173 parseElementClose(res); 6174 return res; 6175 } 6176 6177 protected Location.LocationPositionComponent parseLocationLocationPositionComponent(XmlPullParser xpp, Location owner) throws XmlPullParserException, IOException, FHIRFormatError { 6178 Location.LocationPositionComponent res = new Location.LocationPositionComponent(); 6179 parseBackboneAttributes(xpp, res); 6180 next(xpp); 6181 int eventType = nextNoWhitespace(xpp); 6182 while (eventType != XmlPullParser.END_TAG) { 6183 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("longitude")) { 6184 res.setLongitudeElement(parseDecimal(xpp)); 6185 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("latitude")) { 6186 res.setLatitudeElement(parseDecimal(xpp)); 6187 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("altitude")) { 6188 res.setAltitudeElement(parseDecimal(xpp)); 6189 } else if (!parseBackboneContent(eventType, xpp, res)) 6190 unknownContent(xpp); 6191 eventType = nextNoWhitespace(xpp); 6192 } 6193 next(xpp); 6194 parseElementClose(res); 6195 return res; 6196 } 6197 6198 protected Media parseMedia(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6199 Media res = new Media(); 6200 parseDomainResourceAttributes(xpp, res); 6201 next(xpp); 6202 int eventType = nextNoWhitespace(xpp); 6203 while (eventType != XmlPullParser.END_TAG) { 6204 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6205 res.setTypeElement(parseEnumeration(xpp, Media.DigitalMediaType.NULL, new Media.DigitalMediaTypeEnumFactory())); 6206 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subtype")) { 6207 res.setSubtype(parseCodeableConcept(xpp)); 6208 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6209 res.getIdentifier().add(parseIdentifier(xpp)); 6210 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 6211 res.setSubject(parseReference(xpp)); 6212 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operator")) { 6213 res.setOperator(parseReference(xpp)); 6214 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("view")) { 6215 res.setView(parseCodeableConcept(xpp)); 6216 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("deviceName")) { 6217 res.setDeviceNameElement(parseString(xpp)); 6218 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("height")) { 6219 res.setHeightElement(parsePositiveInt(xpp)); 6220 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("width")) { 6221 res.setWidthElement(parsePositiveInt(xpp)); 6222 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("frames")) { 6223 res.setFramesElement(parsePositiveInt(xpp)); 6224 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("duration")) { 6225 res.setDurationElement(parseUnsignedInt(xpp)); 6226 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 6227 res.setContent(parseAttachment(xpp)); 6228 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6229 unknownContent(xpp); 6230 eventType = nextNoWhitespace(xpp); 6231 } 6232 next(xpp); 6233 parseElementClose(res); 6234 return res; 6235 } 6236 6237 protected Medication parseMedication(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6238 Medication res = new Medication(); 6239 parseDomainResourceAttributes(xpp, res); 6240 next(xpp); 6241 int eventType = nextNoWhitespace(xpp); 6242 while (eventType != XmlPullParser.END_TAG) { 6243 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 6244 res.setCode(parseCodeableConcept(xpp)); 6245 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("isBrand")) { 6246 res.setIsBrandElement(parseBoolean(xpp)); 6247 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manufacturer")) { 6248 res.setManufacturer(parseReference(xpp)); 6249 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("product")) { 6250 res.setProduct(parseMedicationMedicationProductComponent(xpp, res)); 6251 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("package")) { 6252 res.setPackage(parseMedicationMedicationPackageComponent(xpp, res)); 6253 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6254 unknownContent(xpp); 6255 eventType = nextNoWhitespace(xpp); 6256 } 6257 next(xpp); 6258 parseElementClose(res); 6259 return res; 6260 } 6261 6262 protected Medication.MedicationProductComponent parseMedicationMedicationProductComponent(XmlPullParser xpp, Medication owner) throws XmlPullParserException, IOException, FHIRFormatError { 6263 Medication.MedicationProductComponent res = new Medication.MedicationProductComponent(); 6264 parseBackboneAttributes(xpp, res); 6265 next(xpp); 6266 int eventType = nextNoWhitespace(xpp); 6267 while (eventType != XmlPullParser.END_TAG) { 6268 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("form")) { 6269 res.setForm(parseCodeableConcept(xpp)); 6270 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ingredient")) { 6271 res.getIngredient().add(parseMedicationMedicationProductIngredientComponent(xpp, owner)); 6272 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("batch")) { 6273 res.getBatch().add(parseMedicationMedicationProductBatchComponent(xpp, owner)); 6274 } else if (!parseBackboneContent(eventType, xpp, res)) 6275 unknownContent(xpp); 6276 eventType = nextNoWhitespace(xpp); 6277 } 6278 next(xpp); 6279 parseElementClose(res); 6280 return res; 6281 } 6282 6283 protected Medication.MedicationProductIngredientComponent parseMedicationMedicationProductIngredientComponent(XmlPullParser xpp, Medication owner) throws XmlPullParserException, IOException, FHIRFormatError { 6284 Medication.MedicationProductIngredientComponent res = new Medication.MedicationProductIngredientComponent(); 6285 parseBackboneAttributes(xpp, res); 6286 next(xpp); 6287 int eventType = nextNoWhitespace(xpp); 6288 while (eventType != XmlPullParser.END_TAG) { 6289 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 6290 res.setItem(parseReference(xpp)); 6291 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 6292 res.setAmount(parseRatio(xpp)); 6293 } else if (!parseBackboneContent(eventType, xpp, res)) 6294 unknownContent(xpp); 6295 eventType = nextNoWhitespace(xpp); 6296 } 6297 next(xpp); 6298 parseElementClose(res); 6299 return res; 6300 } 6301 6302 protected Medication.MedicationProductBatchComponent parseMedicationMedicationProductBatchComponent(XmlPullParser xpp, Medication owner) throws XmlPullParserException, IOException, FHIRFormatError { 6303 Medication.MedicationProductBatchComponent res = new Medication.MedicationProductBatchComponent(); 6304 parseBackboneAttributes(xpp, res); 6305 next(xpp); 6306 int eventType = nextNoWhitespace(xpp); 6307 while (eventType != XmlPullParser.END_TAG) { 6308 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lotNumber")) { 6309 res.setLotNumberElement(parseString(xpp)); 6310 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expirationDate")) { 6311 res.setExpirationDateElement(parseDateTime(xpp)); 6312 } else if (!parseBackboneContent(eventType, xpp, res)) 6313 unknownContent(xpp); 6314 eventType = nextNoWhitespace(xpp); 6315 } 6316 next(xpp); 6317 parseElementClose(res); 6318 return res; 6319 } 6320 6321 protected Medication.MedicationPackageComponent parseMedicationMedicationPackageComponent(XmlPullParser xpp, Medication owner) throws XmlPullParserException, IOException, FHIRFormatError { 6322 Medication.MedicationPackageComponent res = new Medication.MedicationPackageComponent(); 6323 parseBackboneAttributes(xpp, res); 6324 next(xpp); 6325 int eventType = nextNoWhitespace(xpp); 6326 while (eventType != XmlPullParser.END_TAG) { 6327 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("container")) { 6328 res.setContainer(parseCodeableConcept(xpp)); 6329 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 6330 res.getContent().add(parseMedicationMedicationPackageContentComponent(xpp, owner)); 6331 } else if (!parseBackboneContent(eventType, xpp, res)) 6332 unknownContent(xpp); 6333 eventType = nextNoWhitespace(xpp); 6334 } 6335 next(xpp); 6336 parseElementClose(res); 6337 return res; 6338 } 6339 6340 protected Medication.MedicationPackageContentComponent parseMedicationMedicationPackageContentComponent(XmlPullParser xpp, Medication owner) throws XmlPullParserException, IOException, FHIRFormatError { 6341 Medication.MedicationPackageContentComponent res = new Medication.MedicationPackageContentComponent(); 6342 parseBackboneAttributes(xpp, res); 6343 next(xpp); 6344 int eventType = nextNoWhitespace(xpp); 6345 while (eventType != XmlPullParser.END_TAG) { 6346 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 6347 res.setItem(parseReference(xpp)); 6348 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 6349 res.setAmount(parseSimpleQuantity(xpp)); 6350 } else if (!parseBackboneContent(eventType, xpp, res)) 6351 unknownContent(xpp); 6352 eventType = nextNoWhitespace(xpp); 6353 } 6354 next(xpp); 6355 parseElementClose(res); 6356 return res; 6357 } 6358 6359 protected MedicationAdministration parseMedicationAdministration(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6360 MedicationAdministration res = new MedicationAdministration(); 6361 parseDomainResourceAttributes(xpp, res); 6362 next(xpp); 6363 int eventType = nextNoWhitespace(xpp); 6364 while (eventType != XmlPullParser.END_TAG) { 6365 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6366 res.getIdentifier().add(parseIdentifier(xpp)); 6367 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 6368 res.setStatusElement(parseEnumeration(xpp, MedicationAdministration.MedicationAdministrationStatus.NULL, new MedicationAdministration.MedicationAdministrationStatusEnumFactory())); 6369 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 6370 res.setPatient(parseReference(xpp)); 6371 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("practitioner")) { 6372 res.setPractitioner(parseReference(xpp)); 6373 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 6374 res.setEncounter(parseReference(xpp)); 6375 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prescription")) { 6376 res.setPrescription(parseReference(xpp)); 6377 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("wasNotGiven")) { 6378 res.setWasNotGivenElement(parseBoolean(xpp)); 6379 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonNotGiven")) { 6380 res.getReasonNotGiven().add(parseCodeableConcept(xpp)); 6381 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonGiven")) { 6382 res.getReasonGiven().add(parseCodeableConcept(xpp)); 6383 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "effectiveTime")) { 6384 res.setEffectiveTime(parseType("effectiveTime", xpp)); 6385 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "medication")) { 6386 res.setMedication(parseType("medication", xpp)); 6387 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 6388 res.getDevice().add(parseReference(xpp)); 6389 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 6390 res.setNoteElement(parseString(xpp)); 6391 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dosage")) { 6392 res.setDosage(parseMedicationAdministrationMedicationAdministrationDosageComponent(xpp, res)); 6393 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6394 unknownContent(xpp); 6395 eventType = nextNoWhitespace(xpp); 6396 } 6397 next(xpp); 6398 parseElementClose(res); 6399 return res; 6400 } 6401 6402 protected MedicationAdministration.MedicationAdministrationDosageComponent parseMedicationAdministrationMedicationAdministrationDosageComponent(XmlPullParser xpp, MedicationAdministration owner) throws XmlPullParserException, IOException, FHIRFormatError { 6403 MedicationAdministration.MedicationAdministrationDosageComponent res = new MedicationAdministration.MedicationAdministrationDosageComponent(); 6404 parseBackboneAttributes(xpp, res); 6405 next(xpp); 6406 int eventType = nextNoWhitespace(xpp); 6407 while (eventType != XmlPullParser.END_TAG) { 6408 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 6409 res.setTextElement(parseString(xpp)); 6410 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "site")) { 6411 res.setSite(parseType("site", xpp)); 6412 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("route")) { 6413 res.setRoute(parseCodeableConcept(xpp)); 6414 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 6415 res.setMethod(parseCodeableConcept(xpp)); 6416 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 6417 res.setQuantity(parseSimpleQuantity(xpp)); 6418 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "rate")) { 6419 res.setRate(parseType("rate", xpp)); 6420 } else if (!parseBackboneContent(eventType, xpp, res)) 6421 unknownContent(xpp); 6422 eventType = nextNoWhitespace(xpp); 6423 } 6424 next(xpp); 6425 parseElementClose(res); 6426 return res; 6427 } 6428 6429 protected MedicationDispense parseMedicationDispense(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6430 MedicationDispense res = new MedicationDispense(); 6431 parseDomainResourceAttributes(xpp, res); 6432 next(xpp); 6433 int eventType = nextNoWhitespace(xpp); 6434 while (eventType != XmlPullParser.END_TAG) { 6435 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6436 res.setIdentifier(parseIdentifier(xpp)); 6437 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 6438 res.setStatusElement(parseEnumeration(xpp, MedicationDispense.MedicationDispenseStatus.NULL, new MedicationDispense.MedicationDispenseStatusEnumFactory())); 6439 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 6440 res.setPatient(parseReference(xpp)); 6441 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dispenser")) { 6442 res.setDispenser(parseReference(xpp)); 6443 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authorizingPrescription")) { 6444 res.getAuthorizingPrescription().add(parseReference(xpp)); 6445 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6446 res.setType(parseCodeableConcept(xpp)); 6447 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 6448 res.setQuantity(parseSimpleQuantity(xpp)); 6449 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("daysSupply")) { 6450 res.setDaysSupply(parseSimpleQuantity(xpp)); 6451 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "medication")) { 6452 res.setMedication(parseType("medication", xpp)); 6453 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("whenPrepared")) { 6454 res.setWhenPreparedElement(parseDateTime(xpp)); 6455 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("whenHandedOver")) { 6456 res.setWhenHandedOverElement(parseDateTime(xpp)); 6457 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 6458 res.setDestination(parseReference(xpp)); 6459 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("receiver")) { 6460 res.getReceiver().add(parseReference(xpp)); 6461 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 6462 res.setNoteElement(parseString(xpp)); 6463 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dosageInstruction")) { 6464 res.getDosageInstruction().add(parseMedicationDispenseMedicationDispenseDosageInstructionComponent(xpp, res)); 6465 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("substitution")) { 6466 res.setSubstitution(parseMedicationDispenseMedicationDispenseSubstitutionComponent(xpp, res)); 6467 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6468 unknownContent(xpp); 6469 eventType = nextNoWhitespace(xpp); 6470 } 6471 next(xpp); 6472 parseElementClose(res); 6473 return res; 6474 } 6475 6476 protected MedicationDispense.MedicationDispenseDosageInstructionComponent parseMedicationDispenseMedicationDispenseDosageInstructionComponent(XmlPullParser xpp, MedicationDispense owner) throws XmlPullParserException, IOException, FHIRFormatError { 6477 MedicationDispense.MedicationDispenseDosageInstructionComponent res = new MedicationDispense.MedicationDispenseDosageInstructionComponent(); 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("text")) { 6483 res.setTextElement(parseString(xpp)); 6484 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("additionalInstructions")) { 6485 res.setAdditionalInstructions(parseCodeableConcept(xpp)); 6486 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("timing")) { 6487 res.setTiming(parseTiming(xpp)); 6488 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "asNeeded")) { 6489 res.setAsNeeded(parseType("asNeeded", xpp)); 6490 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "site")) { 6491 res.setSite(parseType("site", xpp)); 6492 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("route")) { 6493 res.setRoute(parseCodeableConcept(xpp)); 6494 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 6495 res.setMethod(parseCodeableConcept(xpp)); 6496 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "dose")) { 6497 res.setDose(parseType("dose", xpp)); 6498 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "rate")) { 6499 res.setRate(parseType("rate", xpp)); 6500 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxDosePerPeriod")) { 6501 res.setMaxDosePerPeriod(parseRatio(xpp)); 6502 } else if (!parseBackboneContent(eventType, xpp, res)) 6503 unknownContent(xpp); 6504 eventType = nextNoWhitespace(xpp); 6505 } 6506 next(xpp); 6507 parseElementClose(res); 6508 return res; 6509 } 6510 6511 protected MedicationDispense.MedicationDispenseSubstitutionComponent parseMedicationDispenseMedicationDispenseSubstitutionComponent(XmlPullParser xpp, MedicationDispense owner) throws XmlPullParserException, IOException, FHIRFormatError { 6512 MedicationDispense.MedicationDispenseSubstitutionComponent res = new MedicationDispense.MedicationDispenseSubstitutionComponent(); 6513 parseBackboneAttributes(xpp, res); 6514 next(xpp); 6515 int eventType = nextNoWhitespace(xpp); 6516 while (eventType != XmlPullParser.END_TAG) { 6517 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6518 res.setType(parseCodeableConcept(xpp)); 6519 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 6520 res.getReason().add(parseCodeableConcept(xpp)); 6521 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responsibleParty")) { 6522 res.getResponsibleParty().add(parseReference(xpp)); 6523 } else if (!parseBackboneContent(eventType, xpp, res)) 6524 unknownContent(xpp); 6525 eventType = nextNoWhitespace(xpp); 6526 } 6527 next(xpp); 6528 parseElementClose(res); 6529 return res; 6530 } 6531 6532 protected MedicationOrder parseMedicationOrder(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6533 MedicationOrder res = new MedicationOrder(); 6534 parseDomainResourceAttributes(xpp, res); 6535 next(xpp); 6536 int eventType = nextNoWhitespace(xpp); 6537 while (eventType != XmlPullParser.END_TAG) { 6538 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6539 res.getIdentifier().add(parseIdentifier(xpp)); 6540 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateWritten")) { 6541 res.setDateWrittenElement(parseDateTime(xpp)); 6542 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 6543 res.setStatusElement(parseEnumeration(xpp, MedicationOrder.MedicationOrderStatus.NULL, new MedicationOrder.MedicationOrderStatusEnumFactory())); 6544 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateEnded")) { 6545 res.setDateEndedElement(parseDateTime(xpp)); 6546 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonEnded")) { 6547 res.setReasonEnded(parseCodeableConcept(xpp)); 6548 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 6549 res.setPatient(parseReference(xpp)); 6550 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prescriber")) { 6551 res.setPrescriber(parseReference(xpp)); 6552 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 6553 res.setEncounter(parseReference(xpp)); 6554 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "reason")) { 6555 res.setReason(parseType("reason", xpp)); 6556 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 6557 res.setNoteElement(parseString(xpp)); 6558 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "medication")) { 6559 res.setMedication(parseType("medication", xpp)); 6560 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dosageInstruction")) { 6561 res.getDosageInstruction().add(parseMedicationOrderMedicationOrderDosageInstructionComponent(xpp, res)); 6562 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dispenseRequest")) { 6563 res.setDispenseRequest(parseMedicationOrderMedicationOrderDispenseRequestComponent(xpp, res)); 6564 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("substitution")) { 6565 res.setSubstitution(parseMedicationOrderMedicationOrderSubstitutionComponent(xpp, res)); 6566 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priorPrescription")) { 6567 res.setPriorPrescription(parseReference(xpp)); 6568 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6569 unknownContent(xpp); 6570 eventType = nextNoWhitespace(xpp); 6571 } 6572 next(xpp); 6573 parseElementClose(res); 6574 return res; 6575 } 6576 6577 protected MedicationOrder.MedicationOrderDosageInstructionComponent parseMedicationOrderMedicationOrderDosageInstructionComponent(XmlPullParser xpp, MedicationOrder owner) throws XmlPullParserException, IOException, FHIRFormatError { 6578 MedicationOrder.MedicationOrderDosageInstructionComponent res = new MedicationOrder.MedicationOrderDosageInstructionComponent(); 6579 parseBackboneAttributes(xpp, res); 6580 next(xpp); 6581 int eventType = nextNoWhitespace(xpp); 6582 while (eventType != XmlPullParser.END_TAG) { 6583 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 6584 res.setTextElement(parseString(xpp)); 6585 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("additionalInstructions")) { 6586 res.setAdditionalInstructions(parseCodeableConcept(xpp)); 6587 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("timing")) { 6588 res.setTiming(parseTiming(xpp)); 6589 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "asNeeded")) { 6590 res.setAsNeeded(parseType("asNeeded", xpp)); 6591 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "site")) { 6592 res.setSite(parseType("site", xpp)); 6593 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("route")) { 6594 res.setRoute(parseCodeableConcept(xpp)); 6595 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 6596 res.setMethod(parseCodeableConcept(xpp)); 6597 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "dose")) { 6598 res.setDose(parseType("dose", xpp)); 6599 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "rate")) { 6600 res.setRate(parseType("rate", xpp)); 6601 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxDosePerPeriod")) { 6602 res.setMaxDosePerPeriod(parseRatio(xpp)); 6603 } else if (!parseBackboneContent(eventType, xpp, res)) 6604 unknownContent(xpp); 6605 eventType = nextNoWhitespace(xpp); 6606 } 6607 next(xpp); 6608 parseElementClose(res); 6609 return res; 6610 } 6611 6612 protected MedicationOrder.MedicationOrderDispenseRequestComponent parseMedicationOrderMedicationOrderDispenseRequestComponent(XmlPullParser xpp, MedicationOrder owner) throws XmlPullParserException, IOException, FHIRFormatError { 6613 MedicationOrder.MedicationOrderDispenseRequestComponent res = new MedicationOrder.MedicationOrderDispenseRequestComponent(); 6614 parseBackboneAttributes(xpp, res); 6615 next(xpp); 6616 int eventType = nextNoWhitespace(xpp); 6617 while (eventType != XmlPullParser.END_TAG) { 6618 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "medication")) { 6619 res.setMedication(parseType("medication", xpp)); 6620 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("validityPeriod")) { 6621 res.setValidityPeriod(parsePeriod(xpp)); 6622 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("numberOfRepeatsAllowed")) { 6623 res.setNumberOfRepeatsAllowedElement(parsePositiveInt(xpp)); 6624 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 6625 res.setQuantity(parseSimpleQuantity(xpp)); 6626 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expectedSupplyDuration")) { 6627 res.setExpectedSupplyDuration(parseDuration(xpp)); 6628 } else if (!parseBackboneContent(eventType, xpp, res)) 6629 unknownContent(xpp); 6630 eventType = nextNoWhitespace(xpp); 6631 } 6632 next(xpp); 6633 parseElementClose(res); 6634 return res; 6635 } 6636 6637 protected MedicationOrder.MedicationOrderSubstitutionComponent parseMedicationOrderMedicationOrderSubstitutionComponent(XmlPullParser xpp, MedicationOrder owner) throws XmlPullParserException, IOException, FHIRFormatError { 6638 MedicationOrder.MedicationOrderSubstitutionComponent res = new MedicationOrder.MedicationOrderSubstitutionComponent(); 6639 parseBackboneAttributes(xpp, res); 6640 next(xpp); 6641 int eventType = nextNoWhitespace(xpp); 6642 while (eventType != XmlPullParser.END_TAG) { 6643 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6644 res.setType(parseCodeableConcept(xpp)); 6645 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 6646 res.setReason(parseCodeableConcept(xpp)); 6647 } else if (!parseBackboneContent(eventType, xpp, res)) 6648 unknownContent(xpp); 6649 eventType = nextNoWhitespace(xpp); 6650 } 6651 next(xpp); 6652 parseElementClose(res); 6653 return res; 6654 } 6655 6656 protected MedicationStatement parseMedicationStatement(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6657 MedicationStatement res = new MedicationStatement(); 6658 parseDomainResourceAttributes(xpp, res); 6659 next(xpp); 6660 int eventType = nextNoWhitespace(xpp); 6661 while (eventType != XmlPullParser.END_TAG) { 6662 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6663 res.getIdentifier().add(parseIdentifier(xpp)); 6664 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 6665 res.setPatient(parseReference(xpp)); 6666 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("informationSource")) { 6667 res.setInformationSource(parseReference(xpp)); 6668 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateAsserted")) { 6669 res.setDateAssertedElement(parseDateTime(xpp)); 6670 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 6671 res.setStatusElement(parseEnumeration(xpp, MedicationStatement.MedicationStatementStatus.NULL, new MedicationStatement.MedicationStatementStatusEnumFactory())); 6672 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("wasNotTaken")) { 6673 res.setWasNotTakenElement(parseBoolean(xpp)); 6674 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonNotTaken")) { 6675 res.getReasonNotTaken().add(parseCodeableConcept(xpp)); 6676 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "reasonForUse")) { 6677 res.setReasonForUse(parseType("reasonForUse", xpp)); 6678 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "effective")) { 6679 res.setEffective(parseType("effective", xpp)); 6680 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 6681 res.setNoteElement(parseString(xpp)); 6682 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInformation")) { 6683 res.getSupportingInformation().add(parseReference(xpp)); 6684 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "medication")) { 6685 res.setMedication(parseType("medication", xpp)); 6686 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dosage")) { 6687 res.getDosage().add(parseMedicationStatementMedicationStatementDosageComponent(xpp, res)); 6688 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6689 unknownContent(xpp); 6690 eventType = nextNoWhitespace(xpp); 6691 } 6692 next(xpp); 6693 parseElementClose(res); 6694 return res; 6695 } 6696 6697 protected MedicationStatement.MedicationStatementDosageComponent parseMedicationStatementMedicationStatementDosageComponent(XmlPullParser xpp, MedicationStatement owner) throws XmlPullParserException, IOException, FHIRFormatError { 6698 MedicationStatement.MedicationStatementDosageComponent res = new MedicationStatement.MedicationStatementDosageComponent(); 6699 parseBackboneAttributes(xpp, res); 6700 next(xpp); 6701 int eventType = nextNoWhitespace(xpp); 6702 while (eventType != XmlPullParser.END_TAG) { 6703 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 6704 res.setTextElement(parseString(xpp)); 6705 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("timing")) { 6706 res.setTiming(parseTiming(xpp)); 6707 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "asNeeded")) { 6708 res.setAsNeeded(parseType("asNeeded", xpp)); 6709 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "site")) { 6710 res.setSite(parseType("site", xpp)); 6711 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("route")) { 6712 res.setRoute(parseCodeableConcept(xpp)); 6713 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 6714 res.setMethod(parseCodeableConcept(xpp)); 6715 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "quantity")) { 6716 res.setQuantity(parseType("quantity", xpp)); 6717 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "rate")) { 6718 res.setRate(parseType("rate", xpp)); 6719 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxDosePerPeriod")) { 6720 res.setMaxDosePerPeriod(parseRatio(xpp)); 6721 } else if (!parseBackboneContent(eventType, xpp, res)) 6722 unknownContent(xpp); 6723 eventType = nextNoWhitespace(xpp); 6724 } 6725 next(xpp); 6726 parseElementClose(res); 6727 return res; 6728 } 6729 6730 protected MessageHeader parseMessageHeader(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6731 MessageHeader res = new MessageHeader(); 6732 parseDomainResourceAttributes(xpp, res); 6733 next(xpp); 6734 int eventType = nextNoWhitespace(xpp); 6735 while (eventType != XmlPullParser.END_TAG) { 6736 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("timestamp")) { 6737 res.setTimestampElement(parseInstant(xpp)); 6738 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 6739 res.setEvent(parseCoding(xpp)); 6740 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("response")) { 6741 res.setResponse(parseMessageHeaderMessageHeaderResponseComponent(xpp, res)); 6742 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 6743 res.setSource(parseMessageHeaderMessageSourceComponent(xpp, res)); 6744 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 6745 res.getDestination().add(parseMessageHeaderMessageDestinationComponent(xpp, res)); 6746 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("enterer")) { 6747 res.setEnterer(parseReference(xpp)); 6748 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 6749 res.setAuthor(parseReference(xpp)); 6750 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("receiver")) { 6751 res.setReceiver(parseReference(xpp)); 6752 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responsible")) { 6753 res.setResponsible(parseReference(xpp)); 6754 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 6755 res.setReason(parseCodeableConcept(xpp)); 6756 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("data")) { 6757 res.getData().add(parseReference(xpp)); 6758 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6759 unknownContent(xpp); 6760 eventType = nextNoWhitespace(xpp); 6761 } 6762 next(xpp); 6763 parseElementClose(res); 6764 return res; 6765 } 6766 6767 protected MessageHeader.MessageHeaderResponseComponent parseMessageHeaderMessageHeaderResponseComponent(XmlPullParser xpp, MessageHeader owner) throws XmlPullParserException, IOException, FHIRFormatError { 6768 MessageHeader.MessageHeaderResponseComponent res = new MessageHeader.MessageHeaderResponseComponent(); 6769 parseBackboneAttributes(xpp, res); 6770 next(xpp); 6771 int eventType = nextNoWhitespace(xpp); 6772 while (eventType != XmlPullParser.END_TAG) { 6773 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6774 res.setIdentifierElement(parseId(xpp)); 6775 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 6776 res.setCodeElement(parseEnumeration(xpp, MessageHeader.ResponseType.NULL, new MessageHeader.ResponseTypeEnumFactory())); 6777 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("details")) { 6778 res.setDetails(parseReference(xpp)); 6779 } else if (!parseBackboneContent(eventType, xpp, res)) 6780 unknownContent(xpp); 6781 eventType = nextNoWhitespace(xpp); 6782 } 6783 next(xpp); 6784 parseElementClose(res); 6785 return res; 6786 } 6787 6788 protected MessageHeader.MessageSourceComponent parseMessageHeaderMessageSourceComponent(XmlPullParser xpp, MessageHeader owner) throws XmlPullParserException, IOException, FHIRFormatError { 6789 MessageHeader.MessageSourceComponent res = new MessageHeader.MessageSourceComponent(); 6790 parseBackboneAttributes(xpp, res); 6791 next(xpp); 6792 int eventType = nextNoWhitespace(xpp); 6793 while (eventType != XmlPullParser.END_TAG) { 6794 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 6795 res.setNameElement(parseString(xpp)); 6796 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("software")) { 6797 res.setSoftwareElement(parseString(xpp)); 6798 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 6799 res.setVersionElement(parseString(xpp)); 6800 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 6801 res.setContact(parseContactPoint(xpp)); 6802 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 6803 res.setEndpointElement(parseUri(xpp)); 6804 } else if (!parseBackboneContent(eventType, xpp, res)) 6805 unknownContent(xpp); 6806 eventType = nextNoWhitespace(xpp); 6807 } 6808 next(xpp); 6809 parseElementClose(res); 6810 return res; 6811 } 6812 6813 protected MessageHeader.MessageDestinationComponent parseMessageHeaderMessageDestinationComponent(XmlPullParser xpp, MessageHeader owner) throws XmlPullParserException, IOException, FHIRFormatError { 6814 MessageHeader.MessageDestinationComponent res = new MessageHeader.MessageDestinationComponent(); 6815 parseBackboneAttributes(xpp, res); 6816 next(xpp); 6817 int eventType = nextNoWhitespace(xpp); 6818 while (eventType != XmlPullParser.END_TAG) { 6819 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 6820 res.setNameElement(parseString(xpp)); 6821 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 6822 res.setTarget(parseReference(xpp)); 6823 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 6824 res.setEndpointElement(parseUri(xpp)); 6825 } else if (!parseBackboneContent(eventType, xpp, res)) 6826 unknownContent(xpp); 6827 eventType = nextNoWhitespace(xpp); 6828 } 6829 next(xpp); 6830 parseElementClose(res); 6831 return res; 6832 } 6833 6834 protected NamingSystem parseNamingSystem(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6835 NamingSystem res = new NamingSystem(); 6836 parseDomainResourceAttributes(xpp, res); 6837 next(xpp); 6838 int eventType = nextNoWhitespace(xpp); 6839 while (eventType != XmlPullParser.END_TAG) { 6840 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 6841 res.setNameElement(parseString(xpp)); 6842 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 6843 res.setStatusElement(parseEnumeration(xpp, Enumerations.ConformanceResourceStatus.NULL, new Enumerations.ConformanceResourceStatusEnumFactory())); 6844 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 6845 res.setKindElement(parseEnumeration(xpp, NamingSystem.NamingSystemType.NULL, new NamingSystem.NamingSystemTypeEnumFactory())); 6846 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 6847 res.setPublisherElement(parseString(xpp)); 6848 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 6849 res.getContact().add(parseNamingSystemNamingSystemContactComponent(xpp, res)); 6850 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responsible")) { 6851 res.setResponsibleElement(parseString(xpp)); 6852 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 6853 res.setDateElement(parseDateTime(xpp)); 6854 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6855 res.setType(parseCodeableConcept(xpp)); 6856 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 6857 res.setDescriptionElement(parseString(xpp)); 6858 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 6859 res.getUseContext().add(parseCodeableConcept(xpp)); 6860 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usage")) { 6861 res.setUsageElement(parseString(xpp)); 6862 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uniqueId")) { 6863 res.getUniqueId().add(parseNamingSystemNamingSystemUniqueIdComponent(xpp, res)); 6864 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("replacedBy")) { 6865 res.setReplacedBy(parseReference(xpp)); 6866 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6867 unknownContent(xpp); 6868 eventType = nextNoWhitespace(xpp); 6869 } 6870 next(xpp); 6871 parseElementClose(res); 6872 return res; 6873 } 6874 6875 protected NamingSystem.NamingSystemContactComponent parseNamingSystemNamingSystemContactComponent(XmlPullParser xpp, NamingSystem owner) throws XmlPullParserException, IOException, FHIRFormatError { 6876 NamingSystem.NamingSystemContactComponent res = new NamingSystem.NamingSystemContactComponent(); 6877 parseBackboneAttributes(xpp, res); 6878 next(xpp); 6879 int eventType = nextNoWhitespace(xpp); 6880 while (eventType != XmlPullParser.END_TAG) { 6881 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 6882 res.setNameElement(parseString(xpp)); 6883 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 6884 res.getTelecom().add(parseContactPoint(xpp)); 6885 } else if (!parseBackboneContent(eventType, xpp, res)) 6886 unknownContent(xpp); 6887 eventType = nextNoWhitespace(xpp); 6888 } 6889 next(xpp); 6890 parseElementClose(res); 6891 return res; 6892 } 6893 6894 protected NamingSystem.NamingSystemUniqueIdComponent parseNamingSystemNamingSystemUniqueIdComponent(XmlPullParser xpp, NamingSystem owner) throws XmlPullParserException, IOException, FHIRFormatError { 6895 NamingSystem.NamingSystemUniqueIdComponent res = new NamingSystem.NamingSystemUniqueIdComponent(); 6896 parseBackboneAttributes(xpp, res); 6897 next(xpp); 6898 int eventType = nextNoWhitespace(xpp); 6899 while (eventType != XmlPullParser.END_TAG) { 6900 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6901 res.setTypeElement(parseEnumeration(xpp, NamingSystem.NamingSystemIdentifierType.NULL, new NamingSystem.NamingSystemIdentifierTypeEnumFactory())); 6902 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 6903 res.setValueElement(parseString(xpp)); 6904 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preferred")) { 6905 res.setPreferredElement(parseBoolean(xpp)); 6906 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 6907 res.setPeriod(parsePeriod(xpp)); 6908 } else if (!parseBackboneContent(eventType, xpp, res)) 6909 unknownContent(xpp); 6910 eventType = nextNoWhitespace(xpp); 6911 } 6912 next(xpp); 6913 parseElementClose(res); 6914 return res; 6915 } 6916 6917 protected NutritionOrder parseNutritionOrder(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6918 NutritionOrder res = new NutritionOrder(); 6919 parseDomainResourceAttributes(xpp, res); 6920 next(xpp); 6921 int eventType = nextNoWhitespace(xpp); 6922 while (eventType != XmlPullParser.END_TAG) { 6923 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 6924 res.setPatient(parseReference(xpp)); 6925 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orderer")) { 6926 res.setOrderer(parseReference(xpp)); 6927 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6928 res.getIdentifier().add(parseIdentifier(xpp)); 6929 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 6930 res.setEncounter(parseReference(xpp)); 6931 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateTime")) { 6932 res.setDateTimeElement(parseDateTime(xpp)); 6933 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 6934 res.setStatusElement(parseEnumeration(xpp, NutritionOrder.NutritionOrderStatus.NULL, new NutritionOrder.NutritionOrderStatusEnumFactory())); 6935 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("allergyIntolerance")) { 6936 res.getAllergyIntolerance().add(parseReference(xpp)); 6937 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("foodPreferenceModifier")) { 6938 res.getFoodPreferenceModifier().add(parseCodeableConcept(xpp)); 6939 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("excludeFoodModifier")) { 6940 res.getExcludeFoodModifier().add(parseCodeableConcept(xpp)); 6941 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("oralDiet")) { 6942 res.setOralDiet(parseNutritionOrderNutritionOrderOralDietComponent(xpp, res)); 6943 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supplement")) { 6944 res.getSupplement().add(parseNutritionOrderNutritionOrderSupplementComponent(xpp, res)); 6945 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("enteralFormula")) { 6946 res.setEnteralFormula(parseNutritionOrderNutritionOrderEnteralFormulaComponent(xpp, res)); 6947 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6948 unknownContent(xpp); 6949 eventType = nextNoWhitespace(xpp); 6950 } 6951 next(xpp); 6952 parseElementClose(res); 6953 return res; 6954 } 6955 6956 protected NutritionOrder.NutritionOrderOralDietComponent parseNutritionOrderNutritionOrderOralDietComponent(XmlPullParser xpp, NutritionOrder owner) throws XmlPullParserException, IOException, FHIRFormatError { 6957 NutritionOrder.NutritionOrderOralDietComponent res = new NutritionOrder.NutritionOrderOralDietComponent(); 6958 parseBackboneAttributes(xpp, res); 6959 next(xpp); 6960 int eventType = nextNoWhitespace(xpp); 6961 while (eventType != XmlPullParser.END_TAG) { 6962 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6963 res.getType().add(parseCodeableConcept(xpp)); 6964 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("schedule")) { 6965 res.getSchedule().add(parseTiming(xpp)); 6966 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("nutrient")) { 6967 res.getNutrient().add(parseNutritionOrderNutritionOrderOralDietNutrientComponent(xpp, owner)); 6968 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("texture")) { 6969 res.getTexture().add(parseNutritionOrderNutritionOrderOralDietTextureComponent(xpp, owner)); 6970 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fluidConsistencyType")) { 6971 res.getFluidConsistencyType().add(parseCodeableConcept(xpp)); 6972 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instruction")) { 6973 res.setInstructionElement(parseString(xpp)); 6974 } else if (!parseBackboneContent(eventType, xpp, res)) 6975 unknownContent(xpp); 6976 eventType = nextNoWhitespace(xpp); 6977 } 6978 next(xpp); 6979 parseElementClose(res); 6980 return res; 6981 } 6982 6983 protected NutritionOrder.NutritionOrderOralDietNutrientComponent parseNutritionOrderNutritionOrderOralDietNutrientComponent(XmlPullParser xpp, NutritionOrder owner) throws XmlPullParserException, IOException, FHIRFormatError { 6984 NutritionOrder.NutritionOrderOralDietNutrientComponent res = new NutritionOrder.NutritionOrderOralDietNutrientComponent(); 6985 parseBackboneAttributes(xpp, res); 6986 next(xpp); 6987 int eventType = nextNoWhitespace(xpp); 6988 while (eventType != XmlPullParser.END_TAG) { 6989 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 6990 res.setModifier(parseCodeableConcept(xpp)); 6991 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 6992 res.setAmount(parseSimpleQuantity(xpp)); 6993 } else if (!parseBackboneContent(eventType, xpp, res)) 6994 unknownContent(xpp); 6995 eventType = nextNoWhitespace(xpp); 6996 } 6997 next(xpp); 6998 parseElementClose(res); 6999 return res; 7000 } 7001 7002 protected NutritionOrder.NutritionOrderOralDietTextureComponent parseNutritionOrderNutritionOrderOralDietTextureComponent(XmlPullParser xpp, NutritionOrder owner) throws XmlPullParserException, IOException, FHIRFormatError { 7003 NutritionOrder.NutritionOrderOralDietTextureComponent res = new NutritionOrder.NutritionOrderOralDietTextureComponent(); 7004 parseBackboneAttributes(xpp, res); 7005 next(xpp); 7006 int eventType = nextNoWhitespace(xpp); 7007 while (eventType != XmlPullParser.END_TAG) { 7008 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 7009 res.setModifier(parseCodeableConcept(xpp)); 7010 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("foodType")) { 7011 res.setFoodType(parseCodeableConcept(xpp)); 7012 } else if (!parseBackboneContent(eventType, xpp, res)) 7013 unknownContent(xpp); 7014 eventType = nextNoWhitespace(xpp); 7015 } 7016 next(xpp); 7017 parseElementClose(res); 7018 return res; 7019 } 7020 7021 protected NutritionOrder.NutritionOrderSupplementComponent parseNutritionOrderNutritionOrderSupplementComponent(XmlPullParser xpp, NutritionOrder owner) throws XmlPullParserException, IOException, FHIRFormatError { 7022 NutritionOrder.NutritionOrderSupplementComponent res = new NutritionOrder.NutritionOrderSupplementComponent(); 7023 parseBackboneAttributes(xpp, res); 7024 next(xpp); 7025 int eventType = nextNoWhitespace(xpp); 7026 while (eventType != XmlPullParser.END_TAG) { 7027 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 7028 res.setType(parseCodeableConcept(xpp)); 7029 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productName")) { 7030 res.setProductNameElement(parseString(xpp)); 7031 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("schedule")) { 7032 res.getSchedule().add(parseTiming(xpp)); 7033 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 7034 res.setQuantity(parseSimpleQuantity(xpp)); 7035 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instruction")) { 7036 res.setInstructionElement(parseString(xpp)); 7037 } else if (!parseBackboneContent(eventType, xpp, res)) 7038 unknownContent(xpp); 7039 eventType = nextNoWhitespace(xpp); 7040 } 7041 next(xpp); 7042 parseElementClose(res); 7043 return res; 7044 } 7045 7046 protected NutritionOrder.NutritionOrderEnteralFormulaComponent parseNutritionOrderNutritionOrderEnteralFormulaComponent(XmlPullParser xpp, NutritionOrder owner) throws XmlPullParserException, IOException, FHIRFormatError { 7047 NutritionOrder.NutritionOrderEnteralFormulaComponent res = new NutritionOrder.NutritionOrderEnteralFormulaComponent(); 7048 parseBackboneAttributes(xpp, res); 7049 next(xpp); 7050 int eventType = nextNoWhitespace(xpp); 7051 while (eventType != XmlPullParser.END_TAG) { 7052 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("baseFormulaType")) { 7053 res.setBaseFormulaType(parseCodeableConcept(xpp)); 7054 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("baseFormulaProductName")) { 7055 res.setBaseFormulaProductNameElement(parseString(xpp)); 7056 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("additiveType")) { 7057 res.setAdditiveType(parseCodeableConcept(xpp)); 7058 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("additiveProductName")) { 7059 res.setAdditiveProductNameElement(parseString(xpp)); 7060 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("caloricDensity")) { 7061 res.setCaloricDensity(parseSimpleQuantity(xpp)); 7062 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("routeofAdministration")) { 7063 res.setRouteofAdministration(parseCodeableConcept(xpp)); 7064 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("administration")) { 7065 res.getAdministration().add(parseNutritionOrderNutritionOrderEnteralFormulaAdministrationComponent(xpp, owner)); 7066 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxVolumeToDeliver")) { 7067 res.setMaxVolumeToDeliver(parseSimpleQuantity(xpp)); 7068 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("administrationInstruction")) { 7069 res.setAdministrationInstructionElement(parseString(xpp)); 7070 } else if (!parseBackboneContent(eventType, xpp, res)) 7071 unknownContent(xpp); 7072 eventType = nextNoWhitespace(xpp); 7073 } 7074 next(xpp); 7075 parseElementClose(res); 7076 return res; 7077 } 7078 7079 protected NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent parseNutritionOrderNutritionOrderEnteralFormulaAdministrationComponent(XmlPullParser xpp, NutritionOrder owner) throws XmlPullParserException, IOException, FHIRFormatError { 7080 NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent res = new NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent(); 7081 parseBackboneAttributes(xpp, res); 7082 next(xpp); 7083 int eventType = nextNoWhitespace(xpp); 7084 while (eventType != XmlPullParser.END_TAG) { 7085 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("schedule")) { 7086 res.setSchedule(parseTiming(xpp)); 7087 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 7088 res.setQuantity(parseSimpleQuantity(xpp)); 7089 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "rate")) { 7090 res.setRate(parseType("rate", xpp)); 7091 } else if (!parseBackboneContent(eventType, xpp, res)) 7092 unknownContent(xpp); 7093 eventType = nextNoWhitespace(xpp); 7094 } 7095 next(xpp); 7096 parseElementClose(res); 7097 return res; 7098 } 7099 7100 protected Observation parseObservation(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7101 Observation res = new Observation(); 7102 parseDomainResourceAttributes(xpp, res); 7103 next(xpp); 7104 int eventType = nextNoWhitespace(xpp); 7105 while (eventType != XmlPullParser.END_TAG) { 7106 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7107 res.getIdentifier().add(parseIdentifier(xpp)); 7108 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 7109 res.setStatusElement(parseEnumeration(xpp, Observation.ObservationStatus.NULL, new Observation.ObservationStatusEnumFactory())); 7110 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 7111 res.setCategory(parseCodeableConcept(xpp)); 7112 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 7113 res.setCode(parseCodeableConcept(xpp)); 7114 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 7115 res.setSubject(parseReference(xpp)); 7116 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 7117 res.setEncounter(parseReference(xpp)); 7118 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "effective")) { 7119 res.setEffective(parseType("effective", xpp)); 7120 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issued")) { 7121 res.setIssuedElement(parseInstant(xpp)); 7122 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 7123 res.getPerformer().add(parseReference(xpp)); 7124 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 7125 res.setValue(parseType("value", xpp)); 7126 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dataAbsentReason")) { 7127 res.setDataAbsentReason(parseCodeableConcept(xpp)); 7128 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("interpretation")) { 7129 res.setInterpretation(parseCodeableConcept(xpp)); 7130 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comments")) { 7131 res.setCommentsElement(parseString(xpp)); 7132 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 7133 res.setBodySite(parseCodeableConcept(xpp)); 7134 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 7135 res.setMethod(parseCodeableConcept(xpp)); 7136 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specimen")) { 7137 res.setSpecimen(parseReference(xpp)); 7138 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 7139 res.setDevice(parseReference(xpp)); 7140 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referenceRange")) { 7141 res.getReferenceRange().add(parseObservationObservationReferenceRangeComponent(xpp, res)); 7142 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("related")) { 7143 res.getRelated().add(parseObservationObservationRelatedComponent(xpp, res)); 7144 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("component")) { 7145 res.getComponent().add(parseObservationObservationComponentComponent(xpp, res)); 7146 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7147 unknownContent(xpp); 7148 eventType = nextNoWhitespace(xpp); 7149 } 7150 next(xpp); 7151 parseElementClose(res); 7152 return res; 7153 } 7154 7155 protected Observation.ObservationReferenceRangeComponent parseObservationObservationReferenceRangeComponent(XmlPullParser xpp, Observation owner) throws XmlPullParserException, IOException, FHIRFormatError { 7156 Observation.ObservationReferenceRangeComponent res = new Observation.ObservationReferenceRangeComponent(); 7157 parseBackboneAttributes(xpp, res); 7158 next(xpp); 7159 int eventType = nextNoWhitespace(xpp); 7160 while (eventType != XmlPullParser.END_TAG) { 7161 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("low")) { 7162 res.setLow(parseSimpleQuantity(xpp)); 7163 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("high")) { 7164 res.setHigh(parseSimpleQuantity(xpp)); 7165 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("meaning")) { 7166 res.setMeaning(parseCodeableConcept(xpp)); 7167 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("age")) { 7168 res.setAge(parseRange(xpp)); 7169 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 7170 res.setTextElement(parseString(xpp)); 7171 } else if (!parseBackboneContent(eventType, xpp, res)) 7172 unknownContent(xpp); 7173 eventType = nextNoWhitespace(xpp); 7174 } 7175 next(xpp); 7176 parseElementClose(res); 7177 return res; 7178 } 7179 7180 protected Observation.ObservationRelatedComponent parseObservationObservationRelatedComponent(XmlPullParser xpp, Observation owner) throws XmlPullParserException, IOException, FHIRFormatError { 7181 Observation.ObservationRelatedComponent res = new Observation.ObservationRelatedComponent(); 7182 parseBackboneAttributes(xpp, res); 7183 next(xpp); 7184 int eventType = nextNoWhitespace(xpp); 7185 while (eventType != XmlPullParser.END_TAG) { 7186 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 7187 res.setTypeElement(parseEnumeration(xpp, Observation.ObservationRelationshipType.NULL, new Observation.ObservationRelationshipTypeEnumFactory())); 7188 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 7189 res.setTarget(parseReference(xpp)); 7190 } else if (!parseBackboneContent(eventType, xpp, res)) 7191 unknownContent(xpp); 7192 eventType = nextNoWhitespace(xpp); 7193 } 7194 next(xpp); 7195 parseElementClose(res); 7196 return res; 7197 } 7198 7199 protected Observation.ObservationComponentComponent parseObservationObservationComponentComponent(XmlPullParser xpp, Observation owner) throws XmlPullParserException, IOException, FHIRFormatError { 7200 Observation.ObservationComponentComponent res = new Observation.ObservationComponentComponent(); 7201 parseBackboneAttributes(xpp, res); 7202 next(xpp); 7203 int eventType = nextNoWhitespace(xpp); 7204 while (eventType != XmlPullParser.END_TAG) { 7205 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 7206 res.setCode(parseCodeableConcept(xpp)); 7207 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 7208 res.setValue(parseType("value", xpp)); 7209 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dataAbsentReason")) { 7210 res.setDataAbsentReason(parseCodeableConcept(xpp)); 7211 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referenceRange")) { 7212 res.getReferenceRange().add(parseObservationObservationReferenceRangeComponent(xpp, owner)); 7213 } else if (!parseBackboneContent(eventType, xpp, res)) 7214 unknownContent(xpp); 7215 eventType = nextNoWhitespace(xpp); 7216 } 7217 next(xpp); 7218 parseElementClose(res); 7219 return res; 7220 } 7221 7222 protected OperationDefinition parseOperationDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7223 OperationDefinition res = new OperationDefinition(); 7224 parseDomainResourceAttributes(xpp, res); 7225 next(xpp); 7226 int eventType = nextNoWhitespace(xpp); 7227 while (eventType != XmlPullParser.END_TAG) { 7228 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 7229 res.setUrlElement(parseUri(xpp)); 7230 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 7231 res.setVersionElement(parseString(xpp)); 7232 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 7233 res.setNameElement(parseString(xpp)); 7234 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 7235 res.setStatusElement(parseEnumeration(xpp, Enumerations.ConformanceResourceStatus.NULL, new Enumerations.ConformanceResourceStatusEnumFactory())); 7236 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 7237 res.setKindElement(parseEnumeration(xpp, OperationDefinition.OperationKind.NULL, new OperationDefinition.OperationKindEnumFactory())); 7238 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 7239 res.setExperimentalElement(parseBoolean(xpp)); 7240 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 7241 res.setPublisherElement(parseString(xpp)); 7242 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 7243 res.getContact().add(parseOperationDefinitionOperationDefinitionContactComponent(xpp, res)); 7244 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 7245 res.setDateElement(parseDateTime(xpp)); 7246 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 7247 res.setDescriptionElement(parseString(xpp)); 7248 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirements")) { 7249 res.setRequirementsElement(parseString(xpp)); 7250 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("idempotent")) { 7251 res.setIdempotentElement(parseBoolean(xpp)); 7252 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 7253 res.setCodeElement(parseCode(xpp)); 7254 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notes")) { 7255 res.setNotesElement(parseString(xpp)); 7256 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("base")) { 7257 res.setBase(parseReference(xpp)); 7258 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 7259 res.setSystemElement(parseBoolean(xpp)); 7260 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 7261 res.getType().add(parseCode(xpp)); 7262 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instance")) { 7263 res.setInstanceElement(parseBoolean(xpp)); 7264 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameter")) { 7265 res.getParameter().add(parseOperationDefinitionOperationDefinitionParameterComponent(xpp, res)); 7266 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7267 unknownContent(xpp); 7268 eventType = nextNoWhitespace(xpp); 7269 } 7270 next(xpp); 7271 parseElementClose(res); 7272 return res; 7273 } 7274 7275 protected OperationDefinition.OperationDefinitionContactComponent parseOperationDefinitionOperationDefinitionContactComponent(XmlPullParser xpp, OperationDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 7276 OperationDefinition.OperationDefinitionContactComponent res = new OperationDefinition.OperationDefinitionContactComponent(); 7277 parseBackboneAttributes(xpp, res); 7278 next(xpp); 7279 int eventType = nextNoWhitespace(xpp); 7280 while (eventType != XmlPullParser.END_TAG) { 7281 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 7282 res.setNameElement(parseString(xpp)); 7283 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 7284 res.getTelecom().add(parseContactPoint(xpp)); 7285 } else if (!parseBackboneContent(eventType, xpp, res)) 7286 unknownContent(xpp); 7287 eventType = nextNoWhitespace(xpp); 7288 } 7289 next(xpp); 7290 parseElementClose(res); 7291 return res; 7292 } 7293 7294 protected OperationDefinition.OperationDefinitionParameterComponent parseOperationDefinitionOperationDefinitionParameterComponent(XmlPullParser xpp, OperationDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 7295 OperationDefinition.OperationDefinitionParameterComponent res = new OperationDefinition.OperationDefinitionParameterComponent(); 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("name")) { 7301 res.setNameElement(parseCode(xpp)); 7302 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 7303 res.setUseElement(parseEnumeration(xpp, OperationDefinition.OperationParameterUse.NULL, new OperationDefinition.OperationParameterUseEnumFactory())); 7304 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("min")) { 7305 res.setMinElement(parseInteger(xpp)); 7306 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("max")) { 7307 res.setMaxElement(parseString(xpp)); 7308 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 7309 res.setDocumentationElement(parseString(xpp)); 7310 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 7311 res.setTypeElement(parseCode(xpp)); 7312 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 7313 res.setProfile(parseReference(xpp)); 7314 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("binding")) { 7315 res.setBinding(parseOperationDefinitionOperationDefinitionParameterBindingComponent(xpp, owner)); 7316 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("part")) { 7317 res.getPart().add(parseOperationDefinitionOperationDefinitionParameterComponent(xpp, owner)); 7318 } else if (!parseBackboneContent(eventType, xpp, res)) 7319 unknownContent(xpp); 7320 eventType = nextNoWhitespace(xpp); 7321 } 7322 next(xpp); 7323 parseElementClose(res); 7324 return res; 7325 } 7326 7327 protected OperationDefinition.OperationDefinitionParameterBindingComponent parseOperationDefinitionOperationDefinitionParameterBindingComponent(XmlPullParser xpp, OperationDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 7328 OperationDefinition.OperationDefinitionParameterBindingComponent res = new OperationDefinition.OperationDefinitionParameterBindingComponent(); 7329 parseBackboneAttributes(xpp, res); 7330 next(xpp); 7331 int eventType = nextNoWhitespace(xpp); 7332 while (eventType != XmlPullParser.END_TAG) { 7333 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("strength")) { 7334 res.setStrengthElement(parseEnumeration(xpp, Enumerations.BindingStrength.NULL, new Enumerations.BindingStrengthEnumFactory())); 7335 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "valueSet")) { 7336 res.setValueSet(parseType("valueSet", xpp)); 7337 } else if (!parseBackboneContent(eventType, xpp, res)) 7338 unknownContent(xpp); 7339 eventType = nextNoWhitespace(xpp); 7340 } 7341 next(xpp); 7342 parseElementClose(res); 7343 return res; 7344 } 7345 7346 protected OperationOutcome parseOperationOutcome(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7347 OperationOutcome res = new OperationOutcome(); 7348 parseDomainResourceAttributes(xpp, res); 7349 next(xpp); 7350 int eventType = nextNoWhitespace(xpp); 7351 while (eventType != XmlPullParser.END_TAG) { 7352 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issue")) { 7353 res.getIssue().add(parseOperationOutcomeOperationOutcomeIssueComponent(xpp, res)); 7354 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7355 unknownContent(xpp); 7356 eventType = nextNoWhitespace(xpp); 7357 } 7358 next(xpp); 7359 parseElementClose(res); 7360 return res; 7361 } 7362 7363 protected OperationOutcome.OperationOutcomeIssueComponent parseOperationOutcomeOperationOutcomeIssueComponent(XmlPullParser xpp, OperationOutcome owner) throws XmlPullParserException, IOException, FHIRFormatError { 7364 OperationOutcome.OperationOutcomeIssueComponent res = new OperationOutcome.OperationOutcomeIssueComponent(); 7365 parseBackboneAttributes(xpp, res); 7366 next(xpp); 7367 int eventType = nextNoWhitespace(xpp); 7368 while (eventType != XmlPullParser.END_TAG) { 7369 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("severity")) { 7370 res.setSeverityElement(parseEnumeration(xpp, OperationOutcome.IssueSeverity.NULL, new OperationOutcome.IssueSeverityEnumFactory())); 7371 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 7372 res.setCodeElement(parseEnumeration(xpp, OperationOutcome.IssueType.NULL, new OperationOutcome.IssueTypeEnumFactory())); 7373 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("details")) { 7374 res.setDetails(parseCodeableConcept(xpp)); 7375 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnostics")) { 7376 res.setDiagnosticsElement(parseString(xpp)); 7377 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 7378 res.getLocation().add(parseString(xpp)); 7379 } else if (!parseBackboneContent(eventType, xpp, res)) 7380 unknownContent(xpp); 7381 eventType = nextNoWhitespace(xpp); 7382 } 7383 next(xpp); 7384 parseElementClose(res); 7385 return res; 7386 } 7387 7388 protected Order parseOrder(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7389 Order res = new Order(); 7390 parseDomainResourceAttributes(xpp, res); 7391 next(xpp); 7392 int eventType = nextNoWhitespace(xpp); 7393 while (eventType != XmlPullParser.END_TAG) { 7394 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7395 res.getIdentifier().add(parseIdentifier(xpp)); 7396 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 7397 res.setDateElement(parseDateTime(xpp)); 7398 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 7399 res.setSubject(parseReference(xpp)); 7400 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 7401 res.setSource(parseReference(xpp)); 7402 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 7403 res.setTarget(parseReference(xpp)); 7404 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "reason")) { 7405 res.setReason(parseType("reason", xpp)); 7406 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("when")) { 7407 res.setWhen(parseOrderOrderWhenComponent(xpp, res)); 7408 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 7409 res.getDetail().add(parseReference(xpp)); 7410 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7411 unknownContent(xpp); 7412 eventType = nextNoWhitespace(xpp); 7413 } 7414 next(xpp); 7415 parseElementClose(res); 7416 return res; 7417 } 7418 7419 protected Order.OrderWhenComponent parseOrderOrderWhenComponent(XmlPullParser xpp, Order owner) throws XmlPullParserException, IOException, FHIRFormatError { 7420 Order.OrderWhenComponent res = new Order.OrderWhenComponent(); 7421 parseBackboneAttributes(xpp, res); 7422 next(xpp); 7423 int eventType = nextNoWhitespace(xpp); 7424 while (eventType != XmlPullParser.END_TAG) { 7425 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 7426 res.setCode(parseCodeableConcept(xpp)); 7427 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("schedule")) { 7428 res.setSchedule(parseTiming(xpp)); 7429 } else if (!parseBackboneContent(eventType, xpp, res)) 7430 unknownContent(xpp); 7431 eventType = nextNoWhitespace(xpp); 7432 } 7433 next(xpp); 7434 parseElementClose(res); 7435 return res; 7436 } 7437 7438 protected OrderResponse parseOrderResponse(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7439 OrderResponse res = new OrderResponse(); 7440 parseDomainResourceAttributes(xpp, res); 7441 next(xpp); 7442 int eventType = nextNoWhitespace(xpp); 7443 while (eventType != XmlPullParser.END_TAG) { 7444 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7445 res.getIdentifier().add(parseIdentifier(xpp)); 7446 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 7447 res.setRequest(parseReference(xpp)); 7448 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 7449 res.setDateElement(parseDateTime(xpp)); 7450 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("who")) { 7451 res.setWho(parseReference(xpp)); 7452 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orderStatus")) { 7453 res.setOrderStatusElement(parseEnumeration(xpp, OrderResponse.OrderStatus.NULL, new OrderResponse.OrderStatusEnumFactory())); 7454 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 7455 res.setDescriptionElement(parseString(xpp)); 7456 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fulfillment")) { 7457 res.getFulfillment().add(parseReference(xpp)); 7458 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7459 unknownContent(xpp); 7460 eventType = nextNoWhitespace(xpp); 7461 } 7462 next(xpp); 7463 parseElementClose(res); 7464 return res; 7465 } 7466 7467 protected Organization parseOrganization(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7468 Organization res = new Organization(); 7469 parseDomainResourceAttributes(xpp, res); 7470 next(xpp); 7471 int eventType = nextNoWhitespace(xpp); 7472 while (eventType != XmlPullParser.END_TAG) { 7473 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7474 res.getIdentifier().add(parseIdentifier(xpp)); 7475 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 7476 res.setActiveElement(parseBoolean(xpp)); 7477 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 7478 res.setType(parseCodeableConcept(xpp)); 7479 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 7480 res.setNameElement(parseString(xpp)); 7481 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 7482 res.getTelecom().add(parseContactPoint(xpp)); 7483 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 7484 res.getAddress().add(parseAddress(xpp)); 7485 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 7486 res.setPartOf(parseReference(xpp)); 7487 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 7488 res.getContact().add(parseOrganizationOrganizationContactComponent(xpp, res)); 7489 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7490 unknownContent(xpp); 7491 eventType = nextNoWhitespace(xpp); 7492 } 7493 next(xpp); 7494 parseElementClose(res); 7495 return res; 7496 } 7497 7498 protected Organization.OrganizationContactComponent parseOrganizationOrganizationContactComponent(XmlPullParser xpp, Organization owner) throws XmlPullParserException, IOException, FHIRFormatError { 7499 Organization.OrganizationContactComponent res = new Organization.OrganizationContactComponent(); 7500 parseBackboneAttributes(xpp, res); 7501 next(xpp); 7502 int eventType = nextNoWhitespace(xpp); 7503 while (eventType != XmlPullParser.END_TAG) { 7504 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 7505 res.setPurpose(parseCodeableConcept(xpp)); 7506 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 7507 res.setName(parseHumanName(xpp)); 7508 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 7509 res.getTelecom().add(parseContactPoint(xpp)); 7510 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 7511 res.setAddress(parseAddress(xpp)); 7512 } else if (!parseBackboneContent(eventType, xpp, res)) 7513 unknownContent(xpp); 7514 eventType = nextNoWhitespace(xpp); 7515 } 7516 next(xpp); 7517 parseElementClose(res); 7518 return res; 7519 } 7520 7521 protected Patient parsePatient(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7522 Patient res = new Patient(); 7523 parseDomainResourceAttributes(xpp, res); 7524 next(xpp); 7525 int eventType = nextNoWhitespace(xpp); 7526 while (eventType != XmlPullParser.END_TAG) { 7527 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7528 res.getIdentifier().add(parseIdentifier(xpp)); 7529 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 7530 res.setActiveElement(parseBoolean(xpp)); 7531 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 7532 res.getName().add(parseHumanName(xpp)); 7533 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 7534 res.getTelecom().add(parseContactPoint(xpp)); 7535 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gender")) { 7536 res.setGenderElement(parseEnumeration(xpp, Enumerations.AdministrativeGender.NULL, new Enumerations.AdministrativeGenderEnumFactory())); 7537 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("birthDate")) { 7538 res.setBirthDateElement(parseDate(xpp)); 7539 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "deceased")) { 7540 res.setDeceased(parseType("deceased", xpp)); 7541 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 7542 res.getAddress().add(parseAddress(xpp)); 7543 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maritalStatus")) { 7544 res.setMaritalStatus(parseCodeableConcept(xpp)); 7545 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "multipleBirth")) { 7546 res.setMultipleBirth(parseType("multipleBirth", xpp)); 7547 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("photo")) { 7548 res.getPhoto().add(parseAttachment(xpp)); 7549 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 7550 res.getContact().add(parsePatientContactComponent(xpp, res)); 7551 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("animal")) { 7552 res.setAnimal(parsePatientAnimalComponent(xpp, res)); 7553 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("communication")) { 7554 res.getCommunication().add(parsePatientPatientCommunicationComponent(xpp, res)); 7555 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("careProvider")) { 7556 res.getCareProvider().add(parseReference(xpp)); 7557 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("managingOrganization")) { 7558 res.setManagingOrganization(parseReference(xpp)); 7559 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 7560 res.getLink().add(parsePatientPatientLinkComponent(xpp, res)); 7561 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7562 unknownContent(xpp); 7563 eventType = nextNoWhitespace(xpp); 7564 } 7565 next(xpp); 7566 parseElementClose(res); 7567 return res; 7568 } 7569 7570 protected Patient.ContactComponent parsePatientContactComponent(XmlPullParser xpp, Patient owner) throws XmlPullParserException, IOException, FHIRFormatError { 7571 Patient.ContactComponent res = new Patient.ContactComponent(); 7572 parseBackboneAttributes(xpp, res); 7573 next(xpp); 7574 int eventType = nextNoWhitespace(xpp); 7575 while (eventType != XmlPullParser.END_TAG) { 7576 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 7577 res.getRelationship().add(parseCodeableConcept(xpp)); 7578 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 7579 res.setName(parseHumanName(xpp)); 7580 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 7581 res.getTelecom().add(parseContactPoint(xpp)); 7582 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 7583 res.setAddress(parseAddress(xpp)); 7584 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gender")) { 7585 res.setGenderElement(parseEnumeration(xpp, Enumerations.AdministrativeGender.NULL, new Enumerations.AdministrativeGenderEnumFactory())); 7586 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 7587 res.setOrganization(parseReference(xpp)); 7588 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 7589 res.setPeriod(parsePeriod(xpp)); 7590 } else if (!parseBackboneContent(eventType, xpp, res)) 7591 unknownContent(xpp); 7592 eventType = nextNoWhitespace(xpp); 7593 } 7594 next(xpp); 7595 parseElementClose(res); 7596 return res; 7597 } 7598 7599 protected Patient.AnimalComponent parsePatientAnimalComponent(XmlPullParser xpp, Patient owner) throws XmlPullParserException, IOException, FHIRFormatError { 7600 Patient.AnimalComponent res = new Patient.AnimalComponent(); 7601 parseBackboneAttributes(xpp, res); 7602 next(xpp); 7603 int eventType = nextNoWhitespace(xpp); 7604 while (eventType != XmlPullParser.END_TAG) { 7605 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("species")) { 7606 res.setSpecies(parseCodeableConcept(xpp)); 7607 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("breed")) { 7608 res.setBreed(parseCodeableConcept(xpp)); 7609 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("genderStatus")) { 7610 res.setGenderStatus(parseCodeableConcept(xpp)); 7611 } else if (!parseBackboneContent(eventType, xpp, res)) 7612 unknownContent(xpp); 7613 eventType = nextNoWhitespace(xpp); 7614 } 7615 next(xpp); 7616 parseElementClose(res); 7617 return res; 7618 } 7619 7620 protected Patient.PatientCommunicationComponent parsePatientPatientCommunicationComponent(XmlPullParser xpp, Patient owner) throws XmlPullParserException, IOException, FHIRFormatError { 7621 Patient.PatientCommunicationComponent res = new Patient.PatientCommunicationComponent(); 7622 parseBackboneAttributes(xpp, res); 7623 next(xpp); 7624 int eventType = nextNoWhitespace(xpp); 7625 while (eventType != XmlPullParser.END_TAG) { 7626 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 7627 res.setLanguage(parseCodeableConcept(xpp)); 7628 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preferred")) { 7629 res.setPreferredElement(parseBoolean(xpp)); 7630 } else if (!parseBackboneContent(eventType, xpp, res)) 7631 unknownContent(xpp); 7632 eventType = nextNoWhitespace(xpp); 7633 } 7634 next(xpp); 7635 parseElementClose(res); 7636 return res; 7637 } 7638 7639 protected Patient.PatientLinkComponent parsePatientPatientLinkComponent(XmlPullParser xpp, Patient owner) throws XmlPullParserException, IOException, FHIRFormatError { 7640 Patient.PatientLinkComponent res = new Patient.PatientLinkComponent(); 7641 parseBackboneAttributes(xpp, res); 7642 next(xpp); 7643 int eventType = nextNoWhitespace(xpp); 7644 while (eventType != XmlPullParser.END_TAG) { 7645 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("other")) { 7646 res.setOther(parseReference(xpp)); 7647 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 7648 res.setTypeElement(parseEnumeration(xpp, Patient.LinkType.NULL, new Patient.LinkTypeEnumFactory())); 7649 } else if (!parseBackboneContent(eventType, xpp, res)) 7650 unknownContent(xpp); 7651 eventType = nextNoWhitespace(xpp); 7652 } 7653 next(xpp); 7654 parseElementClose(res); 7655 return res; 7656 } 7657 7658 protected PaymentNotice parsePaymentNotice(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7659 PaymentNotice res = new PaymentNotice(); 7660 parseDomainResourceAttributes(xpp, res); 7661 next(xpp); 7662 int eventType = nextNoWhitespace(xpp); 7663 while (eventType != XmlPullParser.END_TAG) { 7664 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7665 res.getIdentifier().add(parseIdentifier(xpp)); 7666 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleset")) { 7667 res.setRuleset(parseCoding(xpp)); 7668 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("originalRuleset")) { 7669 res.setOriginalRuleset(parseCoding(xpp)); 7670 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 7671 res.setCreatedElement(parseDateTime(xpp)); 7672 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 7673 res.setTarget(parseReference(xpp)); 7674 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provider")) { 7675 res.setProvider(parseReference(xpp)); 7676 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 7677 res.setOrganization(parseReference(xpp)); 7678 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 7679 res.setRequest(parseReference(xpp)); 7680 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("response")) { 7681 res.setResponse(parseReference(xpp)); 7682 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("paymentStatus")) { 7683 res.setPaymentStatus(parseCoding(xpp)); 7684 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7685 unknownContent(xpp); 7686 eventType = nextNoWhitespace(xpp); 7687 } 7688 next(xpp); 7689 parseElementClose(res); 7690 return res; 7691 } 7692 7693 protected PaymentReconciliation parsePaymentReconciliation(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7694 PaymentReconciliation res = new PaymentReconciliation(); 7695 parseDomainResourceAttributes(xpp, res); 7696 next(xpp); 7697 int eventType = nextNoWhitespace(xpp); 7698 while (eventType != XmlPullParser.END_TAG) { 7699 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7700 res.getIdentifier().add(parseIdentifier(xpp)); 7701 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 7702 res.setRequest(parseReference(xpp)); 7703 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 7704 res.setOutcomeElement(parseEnumeration(xpp, Enumerations.RemittanceOutcome.NULL, new Enumerations.RemittanceOutcomeEnumFactory())); 7705 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disposition")) { 7706 res.setDispositionElement(parseString(xpp)); 7707 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleset")) { 7708 res.setRuleset(parseCoding(xpp)); 7709 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("originalRuleset")) { 7710 res.setOriginalRuleset(parseCoding(xpp)); 7711 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 7712 res.setCreatedElement(parseDateTime(xpp)); 7713 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 7714 res.setPeriod(parsePeriod(xpp)); 7715 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 7716 res.setOrganization(parseReference(xpp)); 7717 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestProvider")) { 7718 res.setRequestProvider(parseReference(xpp)); 7719 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestOrganization")) { 7720 res.setRequestOrganization(parseReference(xpp)); 7721 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 7722 res.getDetail().add(parsePaymentReconciliationDetailsComponent(xpp, res)); 7723 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("form")) { 7724 res.setForm(parseCoding(xpp)); 7725 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("total")) { 7726 res.setTotal(parseMoney(xpp)); 7727 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 7728 res.getNote().add(parsePaymentReconciliationNotesComponent(xpp, res)); 7729 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7730 unknownContent(xpp); 7731 eventType = nextNoWhitespace(xpp); 7732 } 7733 next(xpp); 7734 parseElementClose(res); 7735 return res; 7736 } 7737 7738 protected PaymentReconciliation.DetailsComponent parsePaymentReconciliationDetailsComponent(XmlPullParser xpp, PaymentReconciliation owner) throws XmlPullParserException, IOException, FHIRFormatError { 7739 PaymentReconciliation.DetailsComponent res = new PaymentReconciliation.DetailsComponent(); 7740 parseBackboneAttributes(xpp, res); 7741 next(xpp); 7742 int eventType = nextNoWhitespace(xpp); 7743 while (eventType != XmlPullParser.END_TAG) { 7744 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 7745 res.setType(parseCoding(xpp)); 7746 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 7747 res.setRequest(parseReference(xpp)); 7748 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responce")) { 7749 res.setResponce(parseReference(xpp)); 7750 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("submitter")) { 7751 res.setSubmitter(parseReference(xpp)); 7752 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payee")) { 7753 res.setPayee(parseReference(xpp)); 7754 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 7755 res.setDateElement(parseDate(xpp)); 7756 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 7757 res.setAmount(parseMoney(xpp)); 7758 } else if (!parseBackboneContent(eventType, xpp, res)) 7759 unknownContent(xpp); 7760 eventType = nextNoWhitespace(xpp); 7761 } 7762 next(xpp); 7763 parseElementClose(res); 7764 return res; 7765 } 7766 7767 protected PaymentReconciliation.NotesComponent parsePaymentReconciliationNotesComponent(XmlPullParser xpp, PaymentReconciliation owner) throws XmlPullParserException, IOException, FHIRFormatError { 7768 PaymentReconciliation.NotesComponent res = new PaymentReconciliation.NotesComponent(); 7769 parseBackboneAttributes(xpp, res); 7770 next(xpp); 7771 int eventType = nextNoWhitespace(xpp); 7772 while (eventType != XmlPullParser.END_TAG) { 7773 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 7774 res.setType(parseCoding(xpp)); 7775 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 7776 res.setTextElement(parseString(xpp)); 7777 } else if (!parseBackboneContent(eventType, xpp, res)) 7778 unknownContent(xpp); 7779 eventType = nextNoWhitespace(xpp); 7780 } 7781 next(xpp); 7782 parseElementClose(res); 7783 return res; 7784 } 7785 7786 protected Person parsePerson(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7787 Person res = new Person(); 7788 parseDomainResourceAttributes(xpp, res); 7789 next(xpp); 7790 int eventType = nextNoWhitespace(xpp); 7791 while (eventType != XmlPullParser.END_TAG) { 7792 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7793 res.getIdentifier().add(parseIdentifier(xpp)); 7794 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 7795 res.getName().add(parseHumanName(xpp)); 7796 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 7797 res.getTelecom().add(parseContactPoint(xpp)); 7798 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gender")) { 7799 res.setGenderElement(parseEnumeration(xpp, Enumerations.AdministrativeGender.NULL, new Enumerations.AdministrativeGenderEnumFactory())); 7800 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("birthDate")) { 7801 res.setBirthDateElement(parseDate(xpp)); 7802 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 7803 res.getAddress().add(parseAddress(xpp)); 7804 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("photo")) { 7805 res.setPhoto(parseAttachment(xpp)); 7806 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("managingOrganization")) { 7807 res.setManagingOrganization(parseReference(xpp)); 7808 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 7809 res.setActiveElement(parseBoolean(xpp)); 7810 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 7811 res.getLink().add(parsePersonPersonLinkComponent(xpp, res)); 7812 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7813 unknownContent(xpp); 7814 eventType = nextNoWhitespace(xpp); 7815 } 7816 next(xpp); 7817 parseElementClose(res); 7818 return res; 7819 } 7820 7821 protected Person.PersonLinkComponent parsePersonPersonLinkComponent(XmlPullParser xpp, Person owner) throws XmlPullParserException, IOException, FHIRFormatError { 7822 Person.PersonLinkComponent res = new Person.PersonLinkComponent(); 7823 parseBackboneAttributes(xpp, res); 7824 next(xpp); 7825 int eventType = nextNoWhitespace(xpp); 7826 while (eventType != XmlPullParser.END_TAG) { 7827 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 7828 res.setTarget(parseReference(xpp)); 7829 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assurance")) { 7830 res.setAssuranceElement(parseEnumeration(xpp, Person.IdentityAssuranceLevel.NULL, new Person.IdentityAssuranceLevelEnumFactory())); 7831 } else if (!parseBackboneContent(eventType, xpp, res)) 7832 unknownContent(xpp); 7833 eventType = nextNoWhitespace(xpp); 7834 } 7835 next(xpp); 7836 parseElementClose(res); 7837 return res; 7838 } 7839 7840 protected Practitioner parsePractitioner(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7841 Practitioner res = new Practitioner(); 7842 parseDomainResourceAttributes(xpp, res); 7843 next(xpp); 7844 int eventType = nextNoWhitespace(xpp); 7845 while (eventType != XmlPullParser.END_TAG) { 7846 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7847 res.getIdentifier().add(parseIdentifier(xpp)); 7848 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 7849 res.setActiveElement(parseBoolean(xpp)); 7850 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 7851 res.setName(parseHumanName(xpp)); 7852 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 7853 res.getTelecom().add(parseContactPoint(xpp)); 7854 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 7855 res.getAddress().add(parseAddress(xpp)); 7856 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gender")) { 7857 res.setGenderElement(parseEnumeration(xpp, Enumerations.AdministrativeGender.NULL, new Enumerations.AdministrativeGenderEnumFactory())); 7858 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("birthDate")) { 7859 res.setBirthDateElement(parseDate(xpp)); 7860 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("photo")) { 7861 res.getPhoto().add(parseAttachment(xpp)); 7862 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("practitionerRole")) { 7863 res.getPractitionerRole().add(parsePractitionerPractitionerPractitionerRoleComponent(xpp, res)); 7864 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("qualification")) { 7865 res.getQualification().add(parsePractitionerPractitionerQualificationComponent(xpp, res)); 7866 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("communication")) { 7867 res.getCommunication().add(parseCodeableConcept(xpp)); 7868 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7869 unknownContent(xpp); 7870 eventType = nextNoWhitespace(xpp); 7871 } 7872 next(xpp); 7873 parseElementClose(res); 7874 return res; 7875 } 7876 7877 protected Practitioner.PractitionerPractitionerRoleComponent parsePractitionerPractitionerPractitionerRoleComponent(XmlPullParser xpp, Practitioner owner) throws XmlPullParserException, IOException, FHIRFormatError { 7878 Practitioner.PractitionerPractitionerRoleComponent res = new Practitioner.PractitionerPractitionerRoleComponent(); 7879 parseBackboneAttributes(xpp, res); 7880 next(xpp); 7881 int eventType = nextNoWhitespace(xpp); 7882 while (eventType != XmlPullParser.END_TAG) { 7883 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("managingOrganization")) { 7884 res.setManagingOrganization(parseReference(xpp)); 7885 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 7886 res.setRole(parseCodeableConcept(xpp)); 7887 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialty")) { 7888 res.getSpecialty().add(parseCodeableConcept(xpp)); 7889 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 7890 res.setPeriod(parsePeriod(xpp)); 7891 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 7892 res.getLocation().add(parseReference(xpp)); 7893 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("healthcareService")) { 7894 res.getHealthcareService().add(parseReference(xpp)); 7895 } else if (!parseBackboneContent(eventType, xpp, res)) 7896 unknownContent(xpp); 7897 eventType = nextNoWhitespace(xpp); 7898 } 7899 next(xpp); 7900 parseElementClose(res); 7901 return res; 7902 } 7903 7904 protected Practitioner.PractitionerQualificationComponent parsePractitionerPractitionerQualificationComponent(XmlPullParser xpp, Practitioner owner) throws XmlPullParserException, IOException, FHIRFormatError { 7905 Practitioner.PractitionerQualificationComponent res = new Practitioner.PractitionerQualificationComponent(); 7906 parseBackboneAttributes(xpp, res); 7907 next(xpp); 7908 int eventType = nextNoWhitespace(xpp); 7909 while (eventType != XmlPullParser.END_TAG) { 7910 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7911 res.getIdentifier().add(parseIdentifier(xpp)); 7912 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 7913 res.setCode(parseCodeableConcept(xpp)); 7914 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 7915 res.setPeriod(parsePeriod(xpp)); 7916 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issuer")) { 7917 res.setIssuer(parseReference(xpp)); 7918 } else if (!parseBackboneContent(eventType, xpp, res)) 7919 unknownContent(xpp); 7920 eventType = nextNoWhitespace(xpp); 7921 } 7922 next(xpp); 7923 parseElementClose(res); 7924 return res; 7925 } 7926 7927 protected Procedure parseProcedure(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7928 Procedure res = new Procedure(); 7929 parseDomainResourceAttributes(xpp, res); 7930 next(xpp); 7931 int eventType = nextNoWhitespace(xpp); 7932 while (eventType != XmlPullParser.END_TAG) { 7933 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7934 res.getIdentifier().add(parseIdentifier(xpp)); 7935 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 7936 res.setSubject(parseReference(xpp)); 7937 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 7938 res.setStatusElement(parseEnumeration(xpp, Procedure.ProcedureStatus.NULL, new Procedure.ProcedureStatusEnumFactory())); 7939 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 7940 res.setCategory(parseCodeableConcept(xpp)); 7941 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 7942 res.setCode(parseCodeableConcept(xpp)); 7943 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notPerformed")) { 7944 res.setNotPerformedElement(parseBoolean(xpp)); 7945 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonNotPerformed")) { 7946 res.getReasonNotPerformed().add(parseCodeableConcept(xpp)); 7947 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 7948 res.getBodySite().add(parseCodeableConcept(xpp)); 7949 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "reason")) { 7950 res.setReason(parseType("reason", xpp)); 7951 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 7952 res.getPerformer().add(parseProcedureProcedurePerformerComponent(xpp, res)); 7953 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "performed")) { 7954 res.setPerformed(parseType("performed", xpp)); 7955 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 7956 res.setEncounter(parseReference(xpp)); 7957 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 7958 res.setLocation(parseReference(xpp)); 7959 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 7960 res.setOutcome(parseCodeableConcept(xpp)); 7961 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("report")) { 7962 res.getReport().add(parseReference(xpp)); 7963 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("complication")) { 7964 res.getComplication().add(parseCodeableConcept(xpp)); 7965 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("followUp")) { 7966 res.getFollowUp().add(parseCodeableConcept(xpp)); 7967 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 7968 res.setRequest(parseReference(xpp)); 7969 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notes")) { 7970 res.getNotes().add(parseAnnotation(xpp)); 7971 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focalDevice")) { 7972 res.getFocalDevice().add(parseProcedureProcedureFocalDeviceComponent(xpp, res)); 7973 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("used")) { 7974 res.getUsed().add(parseReference(xpp)); 7975 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7976 unknownContent(xpp); 7977 eventType = nextNoWhitespace(xpp); 7978 } 7979 next(xpp); 7980 parseElementClose(res); 7981 return res; 7982 } 7983 7984 protected Procedure.ProcedurePerformerComponent parseProcedureProcedurePerformerComponent(XmlPullParser xpp, Procedure owner) throws XmlPullParserException, IOException, FHIRFormatError { 7985 Procedure.ProcedurePerformerComponent res = new Procedure.ProcedurePerformerComponent(); 7986 parseBackboneAttributes(xpp, res); 7987 next(xpp); 7988 int eventType = nextNoWhitespace(xpp); 7989 while (eventType != XmlPullParser.END_TAG) { 7990 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 7991 res.setActor(parseReference(xpp)); 7992 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 7993 res.setRole(parseCodeableConcept(xpp)); 7994 } else if (!parseBackboneContent(eventType, xpp, res)) 7995 unknownContent(xpp); 7996 eventType = nextNoWhitespace(xpp); 7997 } 7998 next(xpp); 7999 parseElementClose(res); 8000 return res; 8001 } 8002 8003 protected Procedure.ProcedureFocalDeviceComponent parseProcedureProcedureFocalDeviceComponent(XmlPullParser xpp, Procedure owner) throws XmlPullParserException, IOException, FHIRFormatError { 8004 Procedure.ProcedureFocalDeviceComponent res = new Procedure.ProcedureFocalDeviceComponent(); 8005 parseBackboneAttributes(xpp, res); 8006 next(xpp); 8007 int eventType = nextNoWhitespace(xpp); 8008 while (eventType != XmlPullParser.END_TAG) { 8009 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 8010 res.setAction(parseCodeableConcept(xpp)); 8011 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manipulated")) { 8012 res.setManipulated(parseReference(xpp)); 8013 } else if (!parseBackboneContent(eventType, xpp, res)) 8014 unknownContent(xpp); 8015 eventType = nextNoWhitespace(xpp); 8016 } 8017 next(xpp); 8018 parseElementClose(res); 8019 return res; 8020 } 8021 8022 protected ProcedureRequest parseProcedureRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8023 ProcedureRequest res = new ProcedureRequest(); 8024 parseDomainResourceAttributes(xpp, res); 8025 next(xpp); 8026 int eventType = nextNoWhitespace(xpp); 8027 while (eventType != XmlPullParser.END_TAG) { 8028 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8029 res.getIdentifier().add(parseIdentifier(xpp)); 8030 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 8031 res.setSubject(parseReference(xpp)); 8032 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 8033 res.setCode(parseCodeableConcept(xpp)); 8034 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 8035 res.getBodySite().add(parseCodeableConcept(xpp)); 8036 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "reason")) { 8037 res.setReason(parseType("reason", xpp)); 8038 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "scheduled")) { 8039 res.setScheduled(parseType("scheduled", xpp)); 8040 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 8041 res.setEncounter(parseReference(xpp)); 8042 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 8043 res.setPerformer(parseReference(xpp)); 8044 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 8045 res.setStatusElement(parseEnumeration(xpp, ProcedureRequest.ProcedureRequestStatus.NULL, new ProcedureRequest.ProcedureRequestStatusEnumFactory())); 8046 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notes")) { 8047 res.getNotes().add(parseAnnotation(xpp)); 8048 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "asNeeded")) { 8049 res.setAsNeeded(parseType("asNeeded", xpp)); 8050 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orderedOn")) { 8051 res.setOrderedOnElement(parseDateTime(xpp)); 8052 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orderer")) { 8053 res.setOrderer(parseReference(xpp)); 8054 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 8055 res.setPriorityElement(parseEnumeration(xpp, ProcedureRequest.ProcedureRequestPriority.NULL, new ProcedureRequest.ProcedureRequestPriorityEnumFactory())); 8056 } else if (!parseDomainResourceContent(eventType, xpp, res)) 8057 unknownContent(xpp); 8058 eventType = nextNoWhitespace(xpp); 8059 } 8060 next(xpp); 8061 parseElementClose(res); 8062 return res; 8063 } 8064 8065 protected ProcessRequest parseProcessRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8066 ProcessRequest res = new ProcessRequest(); 8067 parseDomainResourceAttributes(xpp, res); 8068 next(xpp); 8069 int eventType = nextNoWhitespace(xpp); 8070 while (eventType != XmlPullParser.END_TAG) { 8071 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 8072 res.setActionElement(parseEnumeration(xpp, ProcessRequest.ActionList.NULL, new ProcessRequest.ActionListEnumFactory())); 8073 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8074 res.getIdentifier().add(parseIdentifier(xpp)); 8075 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleset")) { 8076 res.setRuleset(parseCoding(xpp)); 8077 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("originalRuleset")) { 8078 res.setOriginalRuleset(parseCoding(xpp)); 8079 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 8080 res.setCreatedElement(parseDateTime(xpp)); 8081 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 8082 res.setTarget(parseReference(xpp)); 8083 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provider")) { 8084 res.setProvider(parseReference(xpp)); 8085 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 8086 res.setOrganization(parseReference(xpp)); 8087 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 8088 res.setRequest(parseReference(xpp)); 8089 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("response")) { 8090 res.setResponse(parseReference(xpp)); 8091 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("nullify")) { 8092 res.setNullifyElement(parseBoolean(xpp)); 8093 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 8094 res.setReferenceElement(parseString(xpp)); 8095 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 8096 res.getItem().add(parseProcessRequestItemsComponent(xpp, res)); 8097 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("include")) { 8098 res.getInclude().add(parseString(xpp)); 8099 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exclude")) { 8100 res.getExclude().add(parseString(xpp)); 8101 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 8102 res.setPeriod(parsePeriod(xpp)); 8103 } else if (!parseDomainResourceContent(eventType, xpp, res)) 8104 unknownContent(xpp); 8105 eventType = nextNoWhitespace(xpp); 8106 } 8107 next(xpp); 8108 parseElementClose(res); 8109 return res; 8110 } 8111 8112 protected ProcessRequest.ItemsComponent parseProcessRequestItemsComponent(XmlPullParser xpp, ProcessRequest owner) throws XmlPullParserException, IOException, FHIRFormatError { 8113 ProcessRequest.ItemsComponent res = new ProcessRequest.ItemsComponent(); 8114 parseBackboneAttributes(xpp, res); 8115 next(xpp); 8116 int eventType = nextNoWhitespace(xpp); 8117 while (eventType != XmlPullParser.END_TAG) { 8118 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequenceLinkId")) { 8119 res.setSequenceLinkIdElement(parseInteger(xpp)); 8120 } else if (!parseBackboneContent(eventType, xpp, res)) 8121 unknownContent(xpp); 8122 eventType = nextNoWhitespace(xpp); 8123 } 8124 next(xpp); 8125 parseElementClose(res); 8126 return res; 8127 } 8128 8129 protected ProcessResponse parseProcessResponse(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8130 ProcessResponse res = new ProcessResponse(); 8131 parseDomainResourceAttributes(xpp, res); 8132 next(xpp); 8133 int eventType = nextNoWhitespace(xpp); 8134 while (eventType != XmlPullParser.END_TAG) { 8135 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8136 res.getIdentifier().add(parseIdentifier(xpp)); 8137 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 8138 res.setRequest(parseReference(xpp)); 8139 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 8140 res.setOutcome(parseCoding(xpp)); 8141 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disposition")) { 8142 res.setDispositionElement(parseString(xpp)); 8143 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleset")) { 8144 res.setRuleset(parseCoding(xpp)); 8145 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("originalRuleset")) { 8146 res.setOriginalRuleset(parseCoding(xpp)); 8147 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 8148 res.setCreatedElement(parseDateTime(xpp)); 8149 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 8150 res.setOrganization(parseReference(xpp)); 8151 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestProvider")) { 8152 res.setRequestProvider(parseReference(xpp)); 8153 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestOrganization")) { 8154 res.setRequestOrganization(parseReference(xpp)); 8155 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("form")) { 8156 res.setForm(parseCoding(xpp)); 8157 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notes")) { 8158 res.getNotes().add(parseProcessResponseProcessResponseNotesComponent(xpp, res)); 8159 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("error")) { 8160 res.getError().add(parseCoding(xpp)); 8161 } else if (!parseDomainResourceContent(eventType, xpp, res)) 8162 unknownContent(xpp); 8163 eventType = nextNoWhitespace(xpp); 8164 } 8165 next(xpp); 8166 parseElementClose(res); 8167 return res; 8168 } 8169 8170 protected ProcessResponse.ProcessResponseNotesComponent parseProcessResponseProcessResponseNotesComponent(XmlPullParser xpp, ProcessResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 8171 ProcessResponse.ProcessResponseNotesComponent res = new ProcessResponse.ProcessResponseNotesComponent(); 8172 parseBackboneAttributes(xpp, res); 8173 next(xpp); 8174 int eventType = nextNoWhitespace(xpp); 8175 while (eventType != XmlPullParser.END_TAG) { 8176 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8177 res.setType(parseCoding(xpp)); 8178 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 8179 res.setTextElement(parseString(xpp)); 8180 } else if (!parseBackboneContent(eventType, xpp, res)) 8181 unknownContent(xpp); 8182 eventType = nextNoWhitespace(xpp); 8183 } 8184 next(xpp); 8185 parseElementClose(res); 8186 return res; 8187 } 8188 8189 protected Provenance parseProvenance(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8190 Provenance res = new Provenance(); 8191 parseDomainResourceAttributes(xpp, res); 8192 next(xpp); 8193 int eventType = nextNoWhitespace(xpp); 8194 while (eventType != XmlPullParser.END_TAG) { 8195 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 8196 res.getTarget().add(parseReference(xpp)); 8197 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 8198 res.setPeriod(parsePeriod(xpp)); 8199 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recorded")) { 8200 res.setRecordedElement(parseInstant(xpp)); 8201 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 8202 res.getReason().add(parseCodeableConcept(xpp)); 8203 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("activity")) { 8204 res.setActivity(parseCodeableConcept(xpp)); 8205 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 8206 res.setLocation(parseReference(xpp)); 8207 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("policy")) { 8208 res.getPolicy().add(parseUri(xpp)); 8209 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { 8210 res.getAgent().add(parseProvenanceProvenanceAgentComponent(xpp, res)); 8211 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entity")) { 8212 res.getEntity().add(parseProvenanceProvenanceEntityComponent(xpp, res)); 8213 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("signature")) { 8214 res.getSignature().add(parseSignature(xpp)); 8215 } else if (!parseDomainResourceContent(eventType, xpp, res)) 8216 unknownContent(xpp); 8217 eventType = nextNoWhitespace(xpp); 8218 } 8219 next(xpp); 8220 parseElementClose(res); 8221 return res; 8222 } 8223 8224 protected Provenance.ProvenanceAgentComponent parseProvenanceProvenanceAgentComponent(XmlPullParser xpp, Provenance owner) throws XmlPullParserException, IOException, FHIRFormatError { 8225 Provenance.ProvenanceAgentComponent res = new Provenance.ProvenanceAgentComponent(); 8226 parseBackboneAttributes(xpp, res); 8227 next(xpp); 8228 int eventType = nextNoWhitespace(xpp); 8229 while (eventType != XmlPullParser.END_TAG) { 8230 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 8231 res.setRole(parseCoding(xpp)); 8232 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 8233 res.setActor(parseReference(xpp)); 8234 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("userId")) { 8235 res.setUserId(parseIdentifier(xpp)); 8236 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedAgent")) { 8237 res.getRelatedAgent().add(parseProvenanceProvenanceAgentRelatedAgentComponent(xpp, owner)); 8238 } else if (!parseBackboneContent(eventType, xpp, res)) 8239 unknownContent(xpp); 8240 eventType = nextNoWhitespace(xpp); 8241 } 8242 next(xpp); 8243 parseElementClose(res); 8244 return res; 8245 } 8246 8247 protected Provenance.ProvenanceAgentRelatedAgentComponent parseProvenanceProvenanceAgentRelatedAgentComponent(XmlPullParser xpp, Provenance owner) throws XmlPullParserException, IOException, FHIRFormatError { 8248 Provenance.ProvenanceAgentRelatedAgentComponent res = new Provenance.ProvenanceAgentRelatedAgentComponent(); 8249 parseBackboneAttributes(xpp, res); 8250 next(xpp); 8251 int eventType = nextNoWhitespace(xpp); 8252 while (eventType != XmlPullParser.END_TAG) { 8253 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8254 res.setType(parseCodeableConcept(xpp)); 8255 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 8256 res.setTargetElement(parseUri(xpp)); 8257 } else if (!parseBackboneContent(eventType, xpp, res)) 8258 unknownContent(xpp); 8259 eventType = nextNoWhitespace(xpp); 8260 } 8261 next(xpp); 8262 parseElementClose(res); 8263 return res; 8264 } 8265 8266 protected Provenance.ProvenanceEntityComponent parseProvenanceProvenanceEntityComponent(XmlPullParser xpp, Provenance owner) throws XmlPullParserException, IOException, FHIRFormatError { 8267 Provenance.ProvenanceEntityComponent res = new Provenance.ProvenanceEntityComponent(); 8268 parseBackboneAttributes(xpp, res); 8269 next(xpp); 8270 int eventType = nextNoWhitespace(xpp); 8271 while (eventType != XmlPullParser.END_TAG) { 8272 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 8273 res.setRoleElement(parseEnumeration(xpp, Provenance.ProvenanceEntityRole.NULL, new Provenance.ProvenanceEntityRoleEnumFactory())); 8274 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8275 res.setType(parseCoding(xpp)); 8276 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 8277 res.setReferenceElement(parseUri(xpp)); 8278 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 8279 res.setDisplayElement(parseString(xpp)); 8280 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { 8281 res.setAgent(parseProvenanceProvenanceAgentComponent(xpp, owner)); 8282 } else if (!parseBackboneContent(eventType, xpp, res)) 8283 unknownContent(xpp); 8284 eventType = nextNoWhitespace(xpp); 8285 } 8286 next(xpp); 8287 parseElementClose(res); 8288 return res; 8289 } 8290 8291 protected Questionnaire parseQuestionnaire(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8292 Questionnaire res = new Questionnaire(); 8293 parseDomainResourceAttributes(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("identifier")) { 8298 res.getIdentifier().add(parseIdentifier(xpp)); 8299 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 8300 res.setVersionElement(parseString(xpp)); 8301 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 8302 res.setStatusElement(parseEnumeration(xpp, Questionnaire.QuestionnaireStatus.NULL, new Questionnaire.QuestionnaireStatusEnumFactory())); 8303 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 8304 res.setDateElement(parseDateTime(xpp)); 8305 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 8306 res.setPublisherElement(parseString(xpp)); 8307 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 8308 res.getTelecom().add(parseContactPoint(xpp)); 8309 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subjectType")) { 8310 res.getSubjectType().add(parseCode(xpp)); 8311 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("group")) { 8312 res.setGroup(parseQuestionnaireGroupComponent(xpp, res)); 8313 } else if (!parseDomainResourceContent(eventType, xpp, res)) 8314 unknownContent(xpp); 8315 eventType = nextNoWhitespace(xpp); 8316 } 8317 next(xpp); 8318 parseElementClose(res); 8319 return res; 8320 } 8321 8322 protected Questionnaire.GroupComponent parseQuestionnaireGroupComponent(XmlPullParser xpp, Questionnaire owner) throws XmlPullParserException, IOException, FHIRFormatError { 8323 Questionnaire.GroupComponent res = new Questionnaire.GroupComponent(); 8324 parseBackboneAttributes(xpp, res); 8325 next(xpp); 8326 int eventType = nextNoWhitespace(xpp); 8327 while (eventType != XmlPullParser.END_TAG) { 8328 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("linkId")) { 8329 res.setLinkIdElement(parseString(xpp)); 8330 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 8331 res.setTitleElement(parseString(xpp)); 8332 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("concept")) { 8333 res.getConcept().add(parseCoding(xpp)); 8334 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 8335 res.setTextElement(parseString(xpp)); 8336 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("required")) { 8337 res.setRequiredElement(parseBoolean(xpp)); 8338 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("repeats")) { 8339 res.setRepeatsElement(parseBoolean(xpp)); 8340 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("group")) { 8341 res.getGroup().add(parseQuestionnaireGroupComponent(xpp, owner)); 8342 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("question")) { 8343 res.getQuestion().add(parseQuestionnaireQuestionComponent(xpp, owner)); 8344 } else if (!parseBackboneContent(eventType, xpp, res)) 8345 unknownContent(xpp); 8346 eventType = nextNoWhitespace(xpp); 8347 } 8348 next(xpp); 8349 parseElementClose(res); 8350 return res; 8351 } 8352 8353 protected Questionnaire.QuestionComponent parseQuestionnaireQuestionComponent(XmlPullParser xpp, Questionnaire owner) throws XmlPullParserException, IOException, FHIRFormatError { 8354 Questionnaire.QuestionComponent res = new Questionnaire.QuestionComponent(); 8355 parseBackboneAttributes(xpp, res); 8356 next(xpp); 8357 int eventType = nextNoWhitespace(xpp); 8358 while (eventType != XmlPullParser.END_TAG) { 8359 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("linkId")) { 8360 res.setLinkIdElement(parseString(xpp)); 8361 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("concept")) { 8362 res.getConcept().add(parseCoding(xpp)); 8363 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 8364 res.setTextElement(parseString(xpp)); 8365 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8366 res.setTypeElement(parseEnumeration(xpp, Questionnaire.AnswerFormat.NULL, new Questionnaire.AnswerFormatEnumFactory())); 8367 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("required")) { 8368 res.setRequiredElement(parseBoolean(xpp)); 8369 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("repeats")) { 8370 res.setRepeatsElement(parseBoolean(xpp)); 8371 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("options")) { 8372 res.setOptions(parseReference(xpp)); 8373 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("option")) { 8374 res.getOption().add(parseCoding(xpp)); 8375 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("group")) { 8376 res.getGroup().add(parseQuestionnaireGroupComponent(xpp, owner)); 8377 } else if (!parseBackboneContent(eventType, xpp, res)) 8378 unknownContent(xpp); 8379 eventType = nextNoWhitespace(xpp); 8380 } 8381 next(xpp); 8382 parseElementClose(res); 8383 return res; 8384 } 8385 8386 protected QuestionnaireResponse parseQuestionnaireResponse(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8387 QuestionnaireResponse res = new QuestionnaireResponse(); 8388 parseDomainResourceAttributes(xpp, res); 8389 next(xpp); 8390 int eventType = nextNoWhitespace(xpp); 8391 while (eventType != XmlPullParser.END_TAG) { 8392 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8393 res.setIdentifier(parseIdentifier(xpp)); 8394 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("questionnaire")) { 8395 res.setQuestionnaire(parseReference(xpp)); 8396 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 8397 res.setStatusElement(parseEnumeration(xpp, QuestionnaireResponse.QuestionnaireResponseStatus.NULL, new QuestionnaireResponse.QuestionnaireResponseStatusEnumFactory())); 8398 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 8399 res.setSubject(parseReference(xpp)); 8400 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 8401 res.setAuthor(parseReference(xpp)); 8402 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authored")) { 8403 res.setAuthoredElement(parseDateTime(xpp)); 8404 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 8405 res.setSource(parseReference(xpp)); 8406 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 8407 res.setEncounter(parseReference(xpp)); 8408 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("group")) { 8409 res.setGroup(parseQuestionnaireResponseGroupComponent(xpp, res)); 8410 } else if (!parseDomainResourceContent(eventType, xpp, res)) 8411 unknownContent(xpp); 8412 eventType = nextNoWhitespace(xpp); 8413 } 8414 next(xpp); 8415 parseElementClose(res); 8416 return res; 8417 } 8418 8419 protected QuestionnaireResponse.GroupComponent parseQuestionnaireResponseGroupComponent(XmlPullParser xpp, QuestionnaireResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 8420 QuestionnaireResponse.GroupComponent res = new QuestionnaireResponse.GroupComponent(); 8421 parseBackboneAttributes(xpp, res); 8422 next(xpp); 8423 int eventType = nextNoWhitespace(xpp); 8424 while (eventType != XmlPullParser.END_TAG) { 8425 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("linkId")) { 8426 res.setLinkIdElement(parseString(xpp)); 8427 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 8428 res.setTitleElement(parseString(xpp)); 8429 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 8430 res.setTextElement(parseString(xpp)); 8431 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 8432 res.setSubject(parseReference(xpp)); 8433 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("group")) { 8434 res.getGroup().add(parseQuestionnaireResponseGroupComponent(xpp, owner)); 8435 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("question")) { 8436 res.getQuestion().add(parseQuestionnaireResponseQuestionComponent(xpp, owner)); 8437 } else if (!parseBackboneContent(eventType, xpp, res)) 8438 unknownContent(xpp); 8439 eventType = nextNoWhitespace(xpp); 8440 } 8441 next(xpp); 8442 parseElementClose(res); 8443 return res; 8444 } 8445 8446 protected QuestionnaireResponse.QuestionComponent parseQuestionnaireResponseQuestionComponent(XmlPullParser xpp, QuestionnaireResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 8447 QuestionnaireResponse.QuestionComponent res = new QuestionnaireResponse.QuestionComponent(); 8448 parseBackboneAttributes(xpp, res); 8449 next(xpp); 8450 int eventType = nextNoWhitespace(xpp); 8451 while (eventType != XmlPullParser.END_TAG) { 8452 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("linkId")) { 8453 res.setLinkIdElement(parseString(xpp)); 8454 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 8455 res.setTextElement(parseString(xpp)); 8456 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("answer")) { 8457 res.getAnswer().add(parseQuestionnaireResponseQuestionAnswerComponent(xpp, owner)); 8458 } else if (!parseBackboneContent(eventType, xpp, res)) 8459 unknownContent(xpp); 8460 eventType = nextNoWhitespace(xpp); 8461 } 8462 next(xpp); 8463 parseElementClose(res); 8464 return res; 8465 } 8466 8467 protected QuestionnaireResponse.QuestionAnswerComponent parseQuestionnaireResponseQuestionAnswerComponent(XmlPullParser xpp, QuestionnaireResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 8468 QuestionnaireResponse.QuestionAnswerComponent res = new QuestionnaireResponse.QuestionAnswerComponent(); 8469 parseBackboneAttributes(xpp, res); 8470 next(xpp); 8471 int eventType = nextNoWhitespace(xpp); 8472 while (eventType != XmlPullParser.END_TAG) { 8473 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 8474 res.setValue(parseType("value", xpp)); 8475 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("group")) { 8476 res.getGroup().add(parseQuestionnaireResponseGroupComponent(xpp, owner)); 8477 } else if (!parseBackboneContent(eventType, xpp, res)) 8478 unknownContent(xpp); 8479 eventType = nextNoWhitespace(xpp); 8480 } 8481 next(xpp); 8482 parseElementClose(res); 8483 return res; 8484 } 8485 8486 protected ReferralRequest parseReferralRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8487 ReferralRequest res = new ReferralRequest(); 8488 parseDomainResourceAttributes(xpp, res); 8489 next(xpp); 8490 int eventType = nextNoWhitespace(xpp); 8491 while (eventType != XmlPullParser.END_TAG) { 8492 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 8493 res.setStatusElement(parseEnumeration(xpp, ReferralRequest.ReferralStatus.NULL, new ReferralRequest.ReferralStatusEnumFactory())); 8494 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8495 res.getIdentifier().add(parseIdentifier(xpp)); 8496 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 8497 res.setDateElement(parseDateTime(xpp)); 8498 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8499 res.setType(parseCodeableConcept(xpp)); 8500 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialty")) { 8501 res.setSpecialty(parseCodeableConcept(xpp)); 8502 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 8503 res.setPriority(parseCodeableConcept(xpp)); 8504 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 8505 res.setPatient(parseReference(xpp)); 8506 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requester")) { 8507 res.setRequester(parseReference(xpp)); 8508 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recipient")) { 8509 res.getRecipient().add(parseReference(xpp)); 8510 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 8511 res.setEncounter(parseReference(xpp)); 8512 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateSent")) { 8513 res.setDateSentElement(parseDateTime(xpp)); 8514 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 8515 res.setReason(parseCodeableConcept(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("serviceRequested")) { 8519 res.getServiceRequested().add(parseCodeableConcept(xpp)); 8520 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInformation")) { 8521 res.getSupportingInformation().add(parseReference(xpp)); 8522 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fulfillmentTime")) { 8523 res.setFulfillmentTime(parsePeriod(xpp)); 8524 } else if (!parseDomainResourceContent(eventType, xpp, res)) 8525 unknownContent(xpp); 8526 eventType = nextNoWhitespace(xpp); 8527 } 8528 next(xpp); 8529 parseElementClose(res); 8530 return res; 8531 } 8532 8533 protected RelatedPerson parseRelatedPerson(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8534 RelatedPerson res = new RelatedPerson(); 8535 parseDomainResourceAttributes(xpp, res); 8536 next(xpp); 8537 int eventType = nextNoWhitespace(xpp); 8538 while (eventType != XmlPullParser.END_TAG) { 8539 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8540 res.getIdentifier().add(parseIdentifier(xpp)); 8541 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 8542 res.setPatient(parseReference(xpp)); 8543 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 8544 res.setRelationship(parseCodeableConcept(xpp)); 8545 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 8546 res.setName(parseHumanName(xpp)); 8547 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 8548 res.getTelecom().add(parseContactPoint(xpp)); 8549 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gender")) { 8550 res.setGenderElement(parseEnumeration(xpp, Enumerations.AdministrativeGender.NULL, new Enumerations.AdministrativeGenderEnumFactory())); 8551 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("birthDate")) { 8552 res.setBirthDateElement(parseDate(xpp)); 8553 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 8554 res.getAddress().add(parseAddress(xpp)); 8555 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("photo")) { 8556 res.getPhoto().add(parseAttachment(xpp)); 8557 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 8558 res.setPeriod(parsePeriod(xpp)); 8559 } else if (!parseDomainResourceContent(eventType, xpp, res)) 8560 unknownContent(xpp); 8561 eventType = nextNoWhitespace(xpp); 8562 } 8563 next(xpp); 8564 parseElementClose(res); 8565 return res; 8566 } 8567 8568 protected RiskAssessment parseRiskAssessment(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8569 RiskAssessment res = new RiskAssessment(); 8570 parseDomainResourceAttributes(xpp, res); 8571 next(xpp); 8572 int eventType = nextNoWhitespace(xpp); 8573 while (eventType != XmlPullParser.END_TAG) { 8574 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 8575 res.setSubject(parseReference(xpp)); 8576 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 8577 res.setDateElement(parseDateTime(xpp)); 8578 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 8579 res.setCondition(parseReference(xpp)); 8580 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 8581 res.setEncounter(parseReference(xpp)); 8582 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 8583 res.setPerformer(parseReference(xpp)); 8584 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8585 res.setIdentifier(parseIdentifier(xpp)); 8586 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 8587 res.setMethod(parseCodeableConcept(xpp)); 8588 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basis")) { 8589 res.getBasis().add(parseReference(xpp)); 8590 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prediction")) { 8591 res.getPrediction().add(parseRiskAssessmentRiskAssessmentPredictionComponent(xpp, res)); 8592 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mitigation")) { 8593 res.setMitigationElement(parseString(xpp)); 8594 } else if (!parseDomainResourceContent(eventType, xpp, res)) 8595 unknownContent(xpp); 8596 eventType = nextNoWhitespace(xpp); 8597 } 8598 next(xpp); 8599 parseElementClose(res); 8600 return res; 8601 } 8602 8603 protected RiskAssessment.RiskAssessmentPredictionComponent parseRiskAssessmentRiskAssessmentPredictionComponent(XmlPullParser xpp, RiskAssessment owner) throws XmlPullParserException, IOException, FHIRFormatError { 8604 RiskAssessment.RiskAssessmentPredictionComponent res = new RiskAssessment.RiskAssessmentPredictionComponent(); 8605 parseBackboneAttributes(xpp, res); 8606 next(xpp); 8607 int eventType = nextNoWhitespace(xpp); 8608 while (eventType != XmlPullParser.END_TAG) { 8609 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 8610 res.setOutcome(parseCodeableConcept(xpp)); 8611 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "probability")) { 8612 res.setProbability(parseType("probability", xpp)); 8613 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relativeRisk")) { 8614 res.setRelativeRiskElement(parseDecimal(xpp)); 8615 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "when")) { 8616 res.setWhen(parseType("when", xpp)); 8617 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rationale")) { 8618 res.setRationaleElement(parseString(xpp)); 8619 } else if (!parseBackboneContent(eventType, xpp, res)) 8620 unknownContent(xpp); 8621 eventType = nextNoWhitespace(xpp); 8622 } 8623 next(xpp); 8624 parseElementClose(res); 8625 return res; 8626 } 8627 8628 protected Schedule parseSchedule(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8629 Schedule res = new Schedule(); 8630 parseDomainResourceAttributes(xpp, res); 8631 next(xpp); 8632 int eventType = nextNoWhitespace(xpp); 8633 while (eventType != XmlPullParser.END_TAG) { 8634 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8635 res.getIdentifier().add(parseIdentifier(xpp)); 8636 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8637 res.getType().add(parseCodeableConcept(xpp)); 8638 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 8639 res.setActor(parseReference(xpp)); 8640 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("planningHorizon")) { 8641 res.setPlanningHorizon(parsePeriod(xpp)); 8642 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 8643 res.setCommentElement(parseString(xpp)); 8644 } else if (!parseDomainResourceContent(eventType, xpp, res)) 8645 unknownContent(xpp); 8646 eventType = nextNoWhitespace(xpp); 8647 } 8648 next(xpp); 8649 parseElementClose(res); 8650 return res; 8651 } 8652 8653 protected SearchParameter parseSearchParameter(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8654 SearchParameter res = new SearchParameter(); 8655 parseDomainResourceAttributes(xpp, res); 8656 next(xpp); 8657 int eventType = nextNoWhitespace(xpp); 8658 while (eventType != XmlPullParser.END_TAG) { 8659 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 8660 res.setUrlElement(parseUri(xpp)); 8661 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 8662 res.setNameElement(parseString(xpp)); 8663 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 8664 res.setStatusElement(parseEnumeration(xpp, Enumerations.ConformanceResourceStatus.NULL, new Enumerations.ConformanceResourceStatusEnumFactory())); 8665 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 8666 res.setExperimentalElement(parseBoolean(xpp)); 8667 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 8668 res.setPublisherElement(parseString(xpp)); 8669 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 8670 res.getContact().add(parseSearchParameterSearchParameterContactComponent(xpp, res)); 8671 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 8672 res.setDateElement(parseDateTime(xpp)); 8673 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirements")) { 8674 res.setRequirementsElement(parseString(xpp)); 8675 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 8676 res.setCodeElement(parseCode(xpp)); 8677 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("base")) { 8678 res.setBaseElement(parseCode(xpp)); 8679 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8680 res.setTypeElement(parseEnumeration(xpp, Enumerations.SearchParamType.NULL, new Enumerations.SearchParamTypeEnumFactory())); 8681 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 8682 res.setDescriptionElement(parseString(xpp)); 8683 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("xpath")) { 8684 res.setXpathElement(parseString(xpp)); 8685 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("xpathUsage")) { 8686 res.setXpathUsageElement(parseEnumeration(xpp, SearchParameter.XPathUsageType.NULL, new SearchParameter.XPathUsageTypeEnumFactory())); 8687 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 8688 res.getTarget().add(parseCode(xpp)); 8689 } else if (!parseDomainResourceContent(eventType, xpp, res)) 8690 unknownContent(xpp); 8691 eventType = nextNoWhitespace(xpp); 8692 } 8693 next(xpp); 8694 parseElementClose(res); 8695 return res; 8696 } 8697 8698 protected SearchParameter.SearchParameterContactComponent parseSearchParameterSearchParameterContactComponent(XmlPullParser xpp, SearchParameter owner) throws XmlPullParserException, IOException, FHIRFormatError { 8699 SearchParameter.SearchParameterContactComponent res = new SearchParameter.SearchParameterContactComponent(); 8700 parseBackboneAttributes(xpp, res); 8701 next(xpp); 8702 int eventType = nextNoWhitespace(xpp); 8703 while (eventType != XmlPullParser.END_TAG) { 8704 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 8705 res.setNameElement(parseString(xpp)); 8706 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 8707 res.getTelecom().add(parseContactPoint(xpp)); 8708 } else if (!parseBackboneContent(eventType, xpp, res)) 8709 unknownContent(xpp); 8710 eventType = nextNoWhitespace(xpp); 8711 } 8712 next(xpp); 8713 parseElementClose(res); 8714 return res; 8715 } 8716 8717 protected Slot parseSlot(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8718 Slot res = new Slot(); 8719 parseDomainResourceAttributes(xpp, res); 8720 next(xpp); 8721 int eventType = nextNoWhitespace(xpp); 8722 while (eventType != XmlPullParser.END_TAG) { 8723 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8724 res.getIdentifier().add(parseIdentifier(xpp)); 8725 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8726 res.setType(parseCodeableConcept(xpp)); 8727 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("schedule")) { 8728 res.setSchedule(parseReference(xpp)); 8729 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("freeBusyType")) { 8730 res.setFreeBusyTypeElement(parseEnumeration(xpp, Slot.SlotStatus.NULL, new Slot.SlotStatusEnumFactory())); 8731 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("start")) { 8732 res.setStartElement(parseInstant(xpp)); 8733 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("end")) { 8734 res.setEndElement(parseInstant(xpp)); 8735 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("overbooked")) { 8736 res.setOverbookedElement(parseBoolean(xpp)); 8737 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 8738 res.setCommentElement(parseString(xpp)); 8739 } else if (!parseDomainResourceContent(eventType, xpp, res)) 8740 unknownContent(xpp); 8741 eventType = nextNoWhitespace(xpp); 8742 } 8743 next(xpp); 8744 parseElementClose(res); 8745 return res; 8746 } 8747 8748 protected Specimen parseSpecimen(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8749 Specimen res = new Specimen(); 8750 parseDomainResourceAttributes(xpp, res); 8751 next(xpp); 8752 int eventType = nextNoWhitespace(xpp); 8753 while (eventType != XmlPullParser.END_TAG) { 8754 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8755 res.getIdentifier().add(parseIdentifier(xpp)); 8756 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 8757 res.setStatusElement(parseEnumeration(xpp, Specimen.SpecimenStatus.NULL, new Specimen.SpecimenStatusEnumFactory())); 8758 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8759 res.setType(parseCodeableConcept(xpp)); 8760 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parent")) { 8761 res.getParent().add(parseReference(xpp)); 8762 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 8763 res.setSubject(parseReference(xpp)); 8764 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("accessionIdentifier")) { 8765 res.setAccessionIdentifier(parseIdentifier(xpp)); 8766 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("receivedTime")) { 8767 res.setReceivedTimeElement(parseDateTime(xpp)); 8768 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("collection")) { 8769 res.setCollection(parseSpecimenSpecimenCollectionComponent(xpp, res)); 8770 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("treatment")) { 8771 res.getTreatment().add(parseSpecimenSpecimenTreatmentComponent(xpp, res)); 8772 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("container")) { 8773 res.getContainer().add(parseSpecimenSpecimenContainerComponent(xpp, res)); 8774 } else if (!parseDomainResourceContent(eventType, xpp, res)) 8775 unknownContent(xpp); 8776 eventType = nextNoWhitespace(xpp); 8777 } 8778 next(xpp); 8779 parseElementClose(res); 8780 return res; 8781 } 8782 8783 protected Specimen.SpecimenCollectionComponent parseSpecimenSpecimenCollectionComponent(XmlPullParser xpp, Specimen owner) throws XmlPullParserException, IOException, FHIRFormatError { 8784 Specimen.SpecimenCollectionComponent res = new Specimen.SpecimenCollectionComponent(); 8785 parseBackboneAttributes(xpp, res); 8786 next(xpp); 8787 int eventType = nextNoWhitespace(xpp); 8788 while (eventType != XmlPullParser.END_TAG) { 8789 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("collector")) { 8790 res.setCollector(parseReference(xpp)); 8791 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 8792 res.getComment().add(parseString(xpp)); 8793 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "collected")) { 8794 res.setCollected(parseType("collected", xpp)); 8795 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 8796 res.setQuantity(parseSimpleQuantity(xpp)); 8797 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 8798 res.setMethod(parseCodeableConcept(xpp)); 8799 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 8800 res.setBodySite(parseCodeableConcept(xpp)); 8801 } else if (!parseBackboneContent(eventType, xpp, res)) 8802 unknownContent(xpp); 8803 eventType = nextNoWhitespace(xpp); 8804 } 8805 next(xpp); 8806 parseElementClose(res); 8807 return res; 8808 } 8809 8810 protected Specimen.SpecimenTreatmentComponent parseSpecimenSpecimenTreatmentComponent(XmlPullParser xpp, Specimen owner) throws XmlPullParserException, IOException, FHIRFormatError { 8811 Specimen.SpecimenTreatmentComponent res = new Specimen.SpecimenTreatmentComponent(); 8812 parseBackboneAttributes(xpp, res); 8813 next(xpp); 8814 int eventType = nextNoWhitespace(xpp); 8815 while (eventType != XmlPullParser.END_TAG) { 8816 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 8817 res.setDescriptionElement(parseString(xpp)); 8818 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("procedure")) { 8819 res.setProcedure(parseCodeableConcept(xpp)); 8820 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("additive")) { 8821 res.getAdditive().add(parseReference(xpp)); 8822 } else if (!parseBackboneContent(eventType, xpp, res)) 8823 unknownContent(xpp); 8824 eventType = nextNoWhitespace(xpp); 8825 } 8826 next(xpp); 8827 parseElementClose(res); 8828 return res; 8829 } 8830 8831 protected Specimen.SpecimenContainerComponent parseSpecimenSpecimenContainerComponent(XmlPullParser xpp, Specimen owner) throws XmlPullParserException, IOException, FHIRFormatError { 8832 Specimen.SpecimenContainerComponent res = new Specimen.SpecimenContainerComponent(); 8833 parseBackboneAttributes(xpp, res); 8834 next(xpp); 8835 int eventType = nextNoWhitespace(xpp); 8836 while (eventType != XmlPullParser.END_TAG) { 8837 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8838 res.getIdentifier().add(parseIdentifier(xpp)); 8839 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 8840 res.setDescriptionElement(parseString(xpp)); 8841 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8842 res.setType(parseCodeableConcept(xpp)); 8843 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("capacity")) { 8844 res.setCapacity(parseSimpleQuantity(xpp)); 8845 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specimenQuantity")) { 8846 res.setSpecimenQuantity(parseSimpleQuantity(xpp)); 8847 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "additive")) { 8848 res.setAdditive(parseType("additive", xpp)); 8849 } else if (!parseBackboneContent(eventType, xpp, res)) 8850 unknownContent(xpp); 8851 eventType = nextNoWhitespace(xpp); 8852 } 8853 next(xpp); 8854 parseElementClose(res); 8855 return res; 8856 } 8857 8858 protected StructureDefinition parseStructureDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8859 StructureDefinition res = new StructureDefinition(); 8860 parseDomainResourceAttributes(xpp, res); 8861 next(xpp); 8862 int eventType = nextNoWhitespace(xpp); 8863 while (eventType != XmlPullParser.END_TAG) { 8864 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 8865 res.setUrlElement(parseUri(xpp)); 8866 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8867 res.getIdentifier().add(parseIdentifier(xpp)); 8868 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 8869 res.setVersionElement(parseString(xpp)); 8870 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 8871 res.setNameElement(parseString(xpp)); 8872 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 8873 res.setDisplayElement(parseString(xpp)); 8874 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 8875 res.setStatusElement(parseEnumeration(xpp, Enumerations.ConformanceResourceStatus.NULL, new Enumerations.ConformanceResourceStatusEnumFactory())); 8876 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 8877 res.setExperimentalElement(parseBoolean(xpp)); 8878 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 8879 res.setPublisherElement(parseString(xpp)); 8880 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 8881 res.getContact().add(parseStructureDefinitionStructureDefinitionContactComponent(xpp, res)); 8882 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 8883 res.setDateElement(parseDateTime(xpp)); 8884 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 8885 res.setDescriptionElement(parseString(xpp)); 8886 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 8887 res.getUseContext().add(parseCodeableConcept(xpp)); 8888 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirements")) { 8889 res.setRequirementsElement(parseString(xpp)); 8890 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 8891 res.setCopyrightElement(parseString(xpp)); 8892 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 8893 res.getCode().add(parseCoding(xpp)); 8894 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fhirVersion")) { 8895 res.setFhirVersionElement(parseId(xpp)); 8896 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mapping")) { 8897 res.getMapping().add(parseStructureDefinitionStructureDefinitionMappingComponent(xpp, res)); 8898 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 8899 res.setKindElement(parseEnumeration(xpp, StructureDefinition.StructureDefinitionKind.NULL, new StructureDefinition.StructureDefinitionKindEnumFactory())); 8900 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("constrainedType")) { 8901 res.setConstrainedTypeElement(parseCode(xpp)); 8902 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("abstract")) { 8903 res.setAbstractElement(parseBoolean(xpp)); 8904 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contextType")) { 8905 res.setContextTypeElement(parseEnumeration(xpp, StructureDefinition.ExtensionContext.NULL, new StructureDefinition.ExtensionContextEnumFactory())); 8906 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 8907 res.getContext().add(parseString(xpp)); 8908 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("base")) { 8909 res.setBaseElement(parseUri(xpp)); 8910 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("snapshot")) { 8911 res.setSnapshot(parseStructureDefinitionStructureDefinitionSnapshotComponent(xpp, res)); 8912 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("differential")) { 8913 res.setDifferential(parseStructureDefinitionStructureDefinitionDifferentialComponent(xpp, res)); 8914 } else if (!parseDomainResourceContent(eventType, xpp, res)) 8915 unknownContent(xpp); 8916 eventType = nextNoWhitespace(xpp); 8917 } 8918 next(xpp); 8919 parseElementClose(res); 8920 return res; 8921 } 8922 8923 protected StructureDefinition.StructureDefinitionContactComponent parseStructureDefinitionStructureDefinitionContactComponent(XmlPullParser xpp, StructureDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 8924 StructureDefinition.StructureDefinitionContactComponent res = new StructureDefinition.StructureDefinitionContactComponent(); 8925 parseBackboneAttributes(xpp, res); 8926 next(xpp); 8927 int eventType = nextNoWhitespace(xpp); 8928 while (eventType != XmlPullParser.END_TAG) { 8929 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 8930 res.setNameElement(parseString(xpp)); 8931 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 8932 res.getTelecom().add(parseContactPoint(xpp)); 8933 } else if (!parseBackboneContent(eventType, xpp, res)) 8934 unknownContent(xpp); 8935 eventType = nextNoWhitespace(xpp); 8936 } 8937 next(xpp); 8938 parseElementClose(res); 8939 return res; 8940 } 8941 8942 protected StructureDefinition.StructureDefinitionMappingComponent parseStructureDefinitionStructureDefinitionMappingComponent(XmlPullParser xpp, StructureDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 8943 StructureDefinition.StructureDefinitionMappingComponent res = new StructureDefinition.StructureDefinitionMappingComponent(); 8944 parseBackboneAttributes(xpp, res); 8945 next(xpp); 8946 int eventType = nextNoWhitespace(xpp); 8947 while (eventType != XmlPullParser.END_TAG) { 8948 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identity")) { 8949 res.setIdentityElement(parseId(xpp)); 8950 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uri")) { 8951 res.setUriElement(parseUri(xpp)); 8952 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 8953 res.setNameElement(parseString(xpp)); 8954 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comments")) { 8955 res.setCommentsElement(parseString(xpp)); 8956 } else if (!parseBackboneContent(eventType, xpp, res)) 8957 unknownContent(xpp); 8958 eventType = nextNoWhitespace(xpp); 8959 } 8960 next(xpp); 8961 parseElementClose(res); 8962 return res; 8963 } 8964 8965 protected StructureDefinition.StructureDefinitionSnapshotComponent parseStructureDefinitionStructureDefinitionSnapshotComponent(XmlPullParser xpp, StructureDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 8966 StructureDefinition.StructureDefinitionSnapshotComponent res = new StructureDefinition.StructureDefinitionSnapshotComponent(); 8967 parseBackboneAttributes(xpp, res); 8968 next(xpp); 8969 int eventType = nextNoWhitespace(xpp); 8970 while (eventType != XmlPullParser.END_TAG) { 8971 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("element")) { 8972 res.getElement().add(parseElementDefinition(xpp)); 8973 } else if (!parseBackboneContent(eventType, xpp, res)) 8974 unknownContent(xpp); 8975 eventType = nextNoWhitespace(xpp); 8976 } 8977 next(xpp); 8978 parseElementClose(res); 8979 return res; 8980 } 8981 8982 protected StructureDefinition.StructureDefinitionDifferentialComponent parseStructureDefinitionStructureDefinitionDifferentialComponent(XmlPullParser xpp, StructureDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 8983 StructureDefinition.StructureDefinitionDifferentialComponent res = new StructureDefinition.StructureDefinitionDifferentialComponent(); 8984 parseBackboneAttributes(xpp, res); 8985 next(xpp); 8986 int eventType = nextNoWhitespace(xpp); 8987 while (eventType != XmlPullParser.END_TAG) { 8988 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("element")) { 8989 res.getElement().add(parseElementDefinition(xpp)); 8990 } else if (!parseBackboneContent(eventType, xpp, res)) 8991 unknownContent(xpp); 8992 eventType = nextNoWhitespace(xpp); 8993 } 8994 next(xpp); 8995 parseElementClose(res); 8996 return res; 8997 } 8998 8999 protected Subscription parseSubscription(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9000 Subscription res = new Subscription(); 9001 parseDomainResourceAttributes(xpp, res); 9002 next(xpp); 9003 int eventType = nextNoWhitespace(xpp); 9004 while (eventType != XmlPullParser.END_TAG) { 9005 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("criteria")) { 9006 res.setCriteriaElement(parseString(xpp)); 9007 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 9008 res.getContact().add(parseContactPoint(xpp)); 9009 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 9010 res.setReasonElement(parseString(xpp)); 9011 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 9012 res.setStatusElement(parseEnumeration(xpp, Subscription.SubscriptionStatus.NULL, new Subscription.SubscriptionStatusEnumFactory())); 9013 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("error")) { 9014 res.setErrorElement(parseString(xpp)); 9015 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("channel")) { 9016 res.setChannel(parseSubscriptionSubscriptionChannelComponent(xpp, res)); 9017 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("end")) { 9018 res.setEndElement(parseInstant(xpp)); 9019 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("tag")) { 9020 res.getTag().add(parseCoding(xpp)); 9021 } else if (!parseDomainResourceContent(eventType, xpp, res)) 9022 unknownContent(xpp); 9023 eventType = nextNoWhitespace(xpp); 9024 } 9025 next(xpp); 9026 parseElementClose(res); 9027 return res; 9028 } 9029 9030 protected Subscription.SubscriptionChannelComponent parseSubscriptionSubscriptionChannelComponent(XmlPullParser xpp, Subscription owner) throws XmlPullParserException, IOException, FHIRFormatError { 9031 Subscription.SubscriptionChannelComponent res = new Subscription.SubscriptionChannelComponent(); 9032 parseBackboneAttributes(xpp, res); 9033 next(xpp); 9034 int eventType = nextNoWhitespace(xpp); 9035 while (eventType != XmlPullParser.END_TAG) { 9036 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 9037 res.setTypeElement(parseEnumeration(xpp, Subscription.SubscriptionChannelType.NULL, new Subscription.SubscriptionChannelTypeEnumFactory())); 9038 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 9039 res.setEndpointElement(parseUri(xpp)); 9040 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payload")) { 9041 res.setPayloadElement(parseString(xpp)); 9042 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("header")) { 9043 res.setHeaderElement(parseString(xpp)); 9044 } else if (!parseBackboneContent(eventType, xpp, res)) 9045 unknownContent(xpp); 9046 eventType = nextNoWhitespace(xpp); 9047 } 9048 next(xpp); 9049 parseElementClose(res); 9050 return res; 9051 } 9052 9053 protected Substance parseSubstance(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9054 Substance res = new Substance(); 9055 parseDomainResourceAttributes(xpp, res); 9056 next(xpp); 9057 int eventType = nextNoWhitespace(xpp); 9058 while (eventType != XmlPullParser.END_TAG) { 9059 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9060 res.getIdentifier().add(parseIdentifier(xpp)); 9061 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 9062 res.getCategory().add(parseCodeableConcept(xpp)); 9063 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 9064 res.setCode(parseCodeableConcept(xpp)); 9065 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 9066 res.setDescriptionElement(parseString(xpp)); 9067 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instance")) { 9068 res.getInstance().add(parseSubstanceSubstanceInstanceComponent(xpp, res)); 9069 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ingredient")) { 9070 res.getIngredient().add(parseSubstanceSubstanceIngredientComponent(xpp, res)); 9071 } else if (!parseDomainResourceContent(eventType, xpp, res)) 9072 unknownContent(xpp); 9073 eventType = nextNoWhitespace(xpp); 9074 } 9075 next(xpp); 9076 parseElementClose(res); 9077 return res; 9078 } 9079 9080 protected Substance.SubstanceInstanceComponent parseSubstanceSubstanceInstanceComponent(XmlPullParser xpp, Substance owner) throws XmlPullParserException, IOException, FHIRFormatError { 9081 Substance.SubstanceInstanceComponent res = new Substance.SubstanceInstanceComponent(); 9082 parseBackboneAttributes(xpp, res); 9083 next(xpp); 9084 int eventType = nextNoWhitespace(xpp); 9085 while (eventType != XmlPullParser.END_TAG) { 9086 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9087 res.setIdentifier(parseIdentifier(xpp)); 9088 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expiry")) { 9089 res.setExpiryElement(parseDateTime(xpp)); 9090 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 9091 res.setQuantity(parseSimpleQuantity(xpp)); 9092 } else if (!parseBackboneContent(eventType, xpp, res)) 9093 unknownContent(xpp); 9094 eventType = nextNoWhitespace(xpp); 9095 } 9096 next(xpp); 9097 parseElementClose(res); 9098 return res; 9099 } 9100 9101 protected Substance.SubstanceIngredientComponent parseSubstanceSubstanceIngredientComponent(XmlPullParser xpp, Substance owner) throws XmlPullParserException, IOException, FHIRFormatError { 9102 Substance.SubstanceIngredientComponent res = new Substance.SubstanceIngredientComponent(); 9103 parseBackboneAttributes(xpp, res); 9104 next(xpp); 9105 int eventType = nextNoWhitespace(xpp); 9106 while (eventType != XmlPullParser.END_TAG) { 9107 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 9108 res.setQuantity(parseRatio(xpp)); 9109 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("substance")) { 9110 res.setSubstance(parseReference(xpp)); 9111 } else if (!parseBackboneContent(eventType, xpp, res)) 9112 unknownContent(xpp); 9113 eventType = nextNoWhitespace(xpp); 9114 } 9115 next(xpp); 9116 parseElementClose(res); 9117 return res; 9118 } 9119 9120 protected SupplyDelivery parseSupplyDelivery(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9121 SupplyDelivery res = new SupplyDelivery(); 9122 parseDomainResourceAttributes(xpp, res); 9123 next(xpp); 9124 int eventType = nextNoWhitespace(xpp); 9125 while (eventType != XmlPullParser.END_TAG) { 9126 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9127 res.setIdentifier(parseIdentifier(xpp)); 9128 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 9129 res.setStatusElement(parseEnumeration(xpp, SupplyDelivery.SupplyDeliveryStatus.NULL, new SupplyDelivery.SupplyDeliveryStatusEnumFactory())); 9130 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 9131 res.setPatient(parseReference(xpp)); 9132 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 9133 res.setType(parseCodeableConcept(xpp)); 9134 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 9135 res.setQuantity(parseSimpleQuantity(xpp)); 9136 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("suppliedItem")) { 9137 res.setSuppliedItem(parseReference(xpp)); 9138 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supplier")) { 9139 res.setSupplier(parseReference(xpp)); 9140 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("whenPrepared")) { 9141 res.setWhenPrepared(parsePeriod(xpp)); 9142 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("time")) { 9143 res.setTimeElement(parseDateTime(xpp)); 9144 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 9145 res.setDestination(parseReference(xpp)); 9146 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("receiver")) { 9147 res.getReceiver().add(parseReference(xpp)); 9148 } else if (!parseDomainResourceContent(eventType, xpp, res)) 9149 unknownContent(xpp); 9150 eventType = nextNoWhitespace(xpp); 9151 } 9152 next(xpp); 9153 parseElementClose(res); 9154 return res; 9155 } 9156 9157 protected SupplyRequest parseSupplyRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9158 SupplyRequest res = new SupplyRequest(); 9159 parseDomainResourceAttributes(xpp, res); 9160 next(xpp); 9161 int eventType = nextNoWhitespace(xpp); 9162 while (eventType != XmlPullParser.END_TAG) { 9163 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 9164 res.setPatient(parseReference(xpp)); 9165 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 9166 res.setSource(parseReference(xpp)); 9167 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 9168 res.setDateElement(parseDateTime(xpp)); 9169 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9170 res.setIdentifier(parseIdentifier(xpp)); 9171 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 9172 res.setStatusElement(parseEnumeration(xpp, SupplyRequest.SupplyRequestStatus.NULL, new SupplyRequest.SupplyRequestStatusEnumFactory())); 9173 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 9174 res.setKind(parseCodeableConcept(xpp)); 9175 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orderedItem")) { 9176 res.setOrderedItem(parseReference(xpp)); 9177 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supplier")) { 9178 res.getSupplier().add(parseReference(xpp)); 9179 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "reason")) { 9180 res.setReason(parseType("reason", xpp)); 9181 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("when")) { 9182 res.setWhen(parseSupplyRequestSupplyRequestWhenComponent(xpp, res)); 9183 } else if (!parseDomainResourceContent(eventType, xpp, res)) 9184 unknownContent(xpp); 9185 eventType = nextNoWhitespace(xpp); 9186 } 9187 next(xpp); 9188 parseElementClose(res); 9189 return res; 9190 } 9191 9192 protected SupplyRequest.SupplyRequestWhenComponent parseSupplyRequestSupplyRequestWhenComponent(XmlPullParser xpp, SupplyRequest owner) throws XmlPullParserException, IOException, FHIRFormatError { 9193 SupplyRequest.SupplyRequestWhenComponent res = new SupplyRequest.SupplyRequestWhenComponent(); 9194 parseBackboneAttributes(xpp, res); 9195 next(xpp); 9196 int eventType = nextNoWhitespace(xpp); 9197 while (eventType != XmlPullParser.END_TAG) { 9198 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 9199 res.setCode(parseCodeableConcept(xpp)); 9200 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("schedule")) { 9201 res.setSchedule(parseTiming(xpp)); 9202 } else if (!parseBackboneContent(eventType, xpp, res)) 9203 unknownContent(xpp); 9204 eventType = nextNoWhitespace(xpp); 9205 } 9206 next(xpp); 9207 parseElementClose(res); 9208 return res; 9209 } 9210 9211 protected TestScript parseTestScript(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9212 TestScript res = new TestScript(); 9213 parseDomainResourceAttributes(xpp, res); 9214 next(xpp); 9215 int eventType = nextNoWhitespace(xpp); 9216 while (eventType != XmlPullParser.END_TAG) { 9217 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 9218 res.setUrlElement(parseUri(xpp)); 9219 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 9220 res.setVersionElement(parseString(xpp)); 9221 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 9222 res.setNameElement(parseString(xpp)); 9223 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 9224 res.setStatusElement(parseEnumeration(xpp, Enumerations.ConformanceResourceStatus.NULL, new Enumerations.ConformanceResourceStatusEnumFactory())); 9225 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9226 res.setIdentifier(parseIdentifier(xpp)); 9227 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 9228 res.setExperimentalElement(parseBoolean(xpp)); 9229 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 9230 res.setPublisherElement(parseString(xpp)); 9231 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 9232 res.getContact().add(parseTestScriptTestScriptContactComponent(xpp, res)); 9233 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 9234 res.setDateElement(parseDateTime(xpp)); 9235 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 9236 res.setDescriptionElement(parseString(xpp)); 9237 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 9238 res.getUseContext().add(parseCodeableConcept(xpp)); 9239 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirements")) { 9240 res.setRequirementsElement(parseString(xpp)); 9241 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 9242 res.setCopyrightElement(parseString(xpp)); 9243 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("metadata")) { 9244 res.setMetadata(parseTestScriptTestScriptMetadataComponent(xpp, res)); 9245 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("multiserver")) { 9246 res.setMultiserverElement(parseBoolean(xpp)); 9247 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fixture")) { 9248 res.getFixture().add(parseTestScriptTestScriptFixtureComponent(xpp, res)); 9249 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 9250 res.getProfile().add(parseReference(xpp)); 9251 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("variable")) { 9252 res.getVariable().add(parseTestScriptTestScriptVariableComponent(xpp, res)); 9253 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("setup")) { 9254 res.setSetup(parseTestScriptTestScriptSetupComponent(xpp, res)); 9255 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("test")) { 9256 res.getTest().add(parseTestScriptTestScriptTestComponent(xpp, res)); 9257 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("teardown")) { 9258 res.setTeardown(parseTestScriptTestScriptTeardownComponent(xpp, res)); 9259 } else if (!parseDomainResourceContent(eventType, xpp, res)) 9260 unknownContent(xpp); 9261 eventType = nextNoWhitespace(xpp); 9262 } 9263 next(xpp); 9264 parseElementClose(res); 9265 return res; 9266 } 9267 9268 protected TestScript.TestScriptContactComponent parseTestScriptTestScriptContactComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 9269 TestScript.TestScriptContactComponent res = new TestScript.TestScriptContactComponent(); 9270 parseBackboneAttributes(xpp, res); 9271 next(xpp); 9272 int eventType = nextNoWhitespace(xpp); 9273 while (eventType != XmlPullParser.END_TAG) { 9274 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 9275 res.setNameElement(parseString(xpp)); 9276 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 9277 res.getTelecom().add(parseContactPoint(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 TestScript.TestScriptMetadataComponent parseTestScriptTestScriptMetadataComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 9288 TestScript.TestScriptMetadataComponent res = new TestScript.TestScriptMetadataComponent(); 9289 parseBackboneAttributes(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("link")) { 9294 res.getLink().add(parseTestScriptTestScriptMetadataLinkComponent(xpp, owner)); 9295 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("capability")) { 9296 res.getCapability().add(parseTestScriptTestScriptMetadataCapabilityComponent(xpp, owner)); 9297 } else if (!parseBackboneContent(eventType, xpp, res)) 9298 unknownContent(xpp); 9299 eventType = nextNoWhitespace(xpp); 9300 } 9301 next(xpp); 9302 parseElementClose(res); 9303 return res; 9304 } 9305 9306 protected TestScript.TestScriptMetadataLinkComponent parseTestScriptTestScriptMetadataLinkComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 9307 TestScript.TestScriptMetadataLinkComponent res = new TestScript.TestScriptMetadataLinkComponent(); 9308 parseBackboneAttributes(xpp, res); 9309 next(xpp); 9310 int eventType = nextNoWhitespace(xpp); 9311 while (eventType != XmlPullParser.END_TAG) { 9312 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 9313 res.setUrlElement(parseUri(xpp)); 9314 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 9315 res.setDescriptionElement(parseString(xpp)); 9316 } else if (!parseBackboneContent(eventType, xpp, res)) 9317 unknownContent(xpp); 9318 eventType = nextNoWhitespace(xpp); 9319 } 9320 next(xpp); 9321 parseElementClose(res); 9322 return res; 9323 } 9324 9325 protected TestScript.TestScriptMetadataCapabilityComponent parseTestScriptTestScriptMetadataCapabilityComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 9326 TestScript.TestScriptMetadataCapabilityComponent res = new TestScript.TestScriptMetadataCapabilityComponent(); 9327 parseBackboneAttributes(xpp, res); 9328 next(xpp); 9329 int eventType = nextNoWhitespace(xpp); 9330 while (eventType != XmlPullParser.END_TAG) { 9331 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("required")) { 9332 res.setRequiredElement(parseBoolean(xpp)); 9333 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("validated")) { 9334 res.setValidatedElement(parseBoolean(xpp)); 9335 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 9336 res.setDescriptionElement(parseString(xpp)); 9337 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 9338 res.setDestinationElement(parseInteger(xpp)); 9339 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 9340 res.getLink().add(parseUri(xpp)); 9341 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("conformance")) { 9342 res.setConformance(parseReference(xpp)); 9343 } else if (!parseBackboneContent(eventType, xpp, res)) 9344 unknownContent(xpp); 9345 eventType = nextNoWhitespace(xpp); 9346 } 9347 next(xpp); 9348 parseElementClose(res); 9349 return res; 9350 } 9351 9352 protected TestScript.TestScriptFixtureComponent parseTestScriptTestScriptFixtureComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 9353 TestScript.TestScriptFixtureComponent res = new TestScript.TestScriptFixtureComponent(); 9354 parseBackboneAttributes(xpp, res); 9355 next(xpp); 9356 int eventType = nextNoWhitespace(xpp); 9357 while (eventType != XmlPullParser.END_TAG) { 9358 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("autocreate")) { 9359 res.setAutocreateElement(parseBoolean(xpp)); 9360 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("autodelete")) { 9361 res.setAutodeleteElement(parseBoolean(xpp)); 9362 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 9363 res.setResource(parseReference(xpp)); 9364 } else if (!parseBackboneContent(eventType, xpp, res)) 9365 unknownContent(xpp); 9366 eventType = nextNoWhitespace(xpp); 9367 } 9368 next(xpp); 9369 parseElementClose(res); 9370 return res; 9371 } 9372 9373 protected TestScript.TestScriptVariableComponent parseTestScriptTestScriptVariableComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 9374 TestScript.TestScriptVariableComponent res = new TestScript.TestScriptVariableComponent(); 9375 parseBackboneAttributes(xpp, res); 9376 next(xpp); 9377 int eventType = nextNoWhitespace(xpp); 9378 while (eventType != XmlPullParser.END_TAG) { 9379 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 9380 res.setNameElement(parseString(xpp)); 9381 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("headerField")) { 9382 res.setHeaderFieldElement(parseString(xpp)); 9383 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 9384 res.setPathElement(parseString(xpp)); 9385 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sourceId")) { 9386 res.setSourceIdElement(parseId(xpp)); 9387 } else if (!parseBackboneContent(eventType, xpp, res)) 9388 unknownContent(xpp); 9389 eventType = nextNoWhitespace(xpp); 9390 } 9391 next(xpp); 9392 parseElementClose(res); 9393 return res; 9394 } 9395 9396 protected TestScript.TestScriptSetupComponent parseTestScriptTestScriptSetupComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 9397 TestScript.TestScriptSetupComponent res = new TestScript.TestScriptSetupComponent(); 9398 parseBackboneAttributes(xpp, res); 9399 next(xpp); 9400 int eventType = nextNoWhitespace(xpp); 9401 while (eventType != XmlPullParser.END_TAG) { 9402 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("metadata")) { 9403 res.setMetadata(parseTestScriptTestScriptMetadataComponent(xpp, owner)); 9404 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 9405 res.getAction().add(parseTestScriptTestScriptSetupActionComponent(xpp, owner)); 9406 } else if (!parseBackboneContent(eventType, xpp, res)) 9407 unknownContent(xpp); 9408 eventType = nextNoWhitespace(xpp); 9409 } 9410 next(xpp); 9411 parseElementClose(res); 9412 return res; 9413 } 9414 9415 protected TestScript.TestScriptSetupActionComponent parseTestScriptTestScriptSetupActionComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 9416 TestScript.TestScriptSetupActionComponent res = new TestScript.TestScriptSetupActionComponent(); 9417 parseBackboneAttributes(xpp, res); 9418 next(xpp); 9419 int eventType = nextNoWhitespace(xpp); 9420 while (eventType != XmlPullParser.END_TAG) { 9421 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operation")) { 9422 res.setOperation(parseTestScriptTestScriptSetupActionOperationComponent(xpp, owner)); 9423 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assert")) { 9424 res.setAssert(parseTestScriptTestScriptSetupActionAssertComponent(xpp, owner)); 9425 } else if (!parseBackboneContent(eventType, xpp, res)) 9426 unknownContent(xpp); 9427 eventType = nextNoWhitespace(xpp); 9428 } 9429 next(xpp); 9430 parseElementClose(res); 9431 return res; 9432 } 9433 9434 protected TestScript.TestScriptSetupActionOperationComponent parseTestScriptTestScriptSetupActionOperationComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 9435 TestScript.TestScriptSetupActionOperationComponent res = new TestScript.TestScriptSetupActionOperationComponent(); 9436 parseBackboneAttributes(xpp, res); 9437 next(xpp); 9438 int eventType = nextNoWhitespace(xpp); 9439 while (eventType != XmlPullParser.END_TAG) { 9440 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 9441 res.setType(parseCoding(xpp)); 9442 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 9443 res.setResourceElement(parseCode(xpp)); 9444 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("label")) { 9445 res.setLabelElement(parseString(xpp)); 9446 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 9447 res.setDescriptionElement(parseString(xpp)); 9448 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("accept")) { 9449 res.setAcceptElement(parseEnumeration(xpp, TestScript.ContentType.NULL, new TestScript.ContentTypeEnumFactory())); 9450 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentType")) { 9451 res.setContentTypeElement(parseEnumeration(xpp, TestScript.ContentType.NULL, new TestScript.ContentTypeEnumFactory())); 9452 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 9453 res.setDestinationElement(parseInteger(xpp)); 9454 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encodeRequestUrl")) { 9455 res.setEncodeRequestUrlElement(parseBoolean(xpp)); 9456 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("params")) { 9457 res.setParamsElement(parseString(xpp)); 9458 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestHeader")) { 9459 res.getRequestHeader().add(parseTestScriptTestScriptSetupActionOperationRequestHeaderComponent(xpp, owner)); 9460 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responseId")) { 9461 res.setResponseIdElement(parseId(xpp)); 9462 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sourceId")) { 9463 res.setSourceIdElement(parseId(xpp)); 9464 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("targetId")) { 9465 res.setTargetIdElement(parseId(xpp)); 9466 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 9467 res.setUrlElement(parseString(xpp)); 9468 } else if (!parseBackboneContent(eventType, xpp, res)) 9469 unknownContent(xpp); 9470 eventType = nextNoWhitespace(xpp); 9471 } 9472 next(xpp); 9473 parseElementClose(res); 9474 return res; 9475 } 9476 9477 protected TestScript.TestScriptSetupActionOperationRequestHeaderComponent parseTestScriptTestScriptSetupActionOperationRequestHeaderComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 9478 TestScript.TestScriptSetupActionOperationRequestHeaderComponent res = new TestScript.TestScriptSetupActionOperationRequestHeaderComponent(); 9479 parseBackboneAttributes(xpp, res); 9480 next(xpp); 9481 int eventType = nextNoWhitespace(xpp); 9482 while (eventType != XmlPullParser.END_TAG) { 9483 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("field")) { 9484 res.setFieldElement(parseString(xpp)); 9485 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 9486 res.setValueElement(parseString(xpp)); 9487 } else if (!parseBackboneContent(eventType, xpp, res)) 9488 unknownContent(xpp); 9489 eventType = nextNoWhitespace(xpp); 9490 } 9491 next(xpp); 9492 parseElementClose(res); 9493 return res; 9494 } 9495 9496 protected TestScript.TestScriptSetupActionAssertComponent parseTestScriptTestScriptSetupActionAssertComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 9497 TestScript.TestScriptSetupActionAssertComponent res = new TestScript.TestScriptSetupActionAssertComponent(); 9498 parseBackboneAttributes(xpp, res); 9499 next(xpp); 9500 int eventType = nextNoWhitespace(xpp); 9501 while (eventType != XmlPullParser.END_TAG) { 9502 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("label")) { 9503 res.setLabelElement(parseString(xpp)); 9504 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 9505 res.setDescriptionElement(parseString(xpp)); 9506 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("direction")) { 9507 res.setDirectionElement(parseEnumeration(xpp, TestScript.AssertionDirectionType.NULL, new TestScript.AssertionDirectionTypeEnumFactory())); 9508 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("compareToSourceId")) { 9509 res.setCompareToSourceIdElement(parseString(xpp)); 9510 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("compareToSourcePath")) { 9511 res.setCompareToSourcePathElement(parseString(xpp)); 9512 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentType")) { 9513 res.setContentTypeElement(parseEnumeration(xpp, TestScript.ContentType.NULL, new TestScript.ContentTypeEnumFactory())); 9514 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("headerField")) { 9515 res.setHeaderFieldElement(parseString(xpp)); 9516 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("minimumId")) { 9517 res.setMinimumIdElement(parseString(xpp)); 9518 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("navigationLinks")) { 9519 res.setNavigationLinksElement(parseBoolean(xpp)); 9520 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operator")) { 9521 res.setOperatorElement(parseEnumeration(xpp, TestScript.AssertionOperatorType.NULL, new TestScript.AssertionOperatorTypeEnumFactory())); 9522 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 9523 res.setPathElement(parseString(xpp)); 9524 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 9525 res.setResourceElement(parseCode(xpp)); 9526 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("response")) { 9527 res.setResponseElement(parseEnumeration(xpp, TestScript.AssertionResponseTypes.NULL, new TestScript.AssertionResponseTypesEnumFactory())); 9528 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responseCode")) { 9529 res.setResponseCodeElement(parseString(xpp)); 9530 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sourceId")) { 9531 res.setSourceIdElement(parseId(xpp)); 9532 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("validateProfileId")) { 9533 res.setValidateProfileIdElement(parseId(xpp)); 9534 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 9535 res.setValueElement(parseString(xpp)); 9536 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("warningOnly")) { 9537 res.setWarningOnlyElement(parseBoolean(xpp)); 9538 } else if (!parseBackboneContent(eventType, xpp, res)) 9539 unknownContent(xpp); 9540 eventType = nextNoWhitespace(xpp); 9541 } 9542 next(xpp); 9543 parseElementClose(res); 9544 return res; 9545 } 9546 9547 protected TestScript.TestScriptTestComponent parseTestScriptTestScriptTestComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 9548 TestScript.TestScriptTestComponent res = new TestScript.TestScriptTestComponent(); 9549 parseBackboneAttributes(xpp, res); 9550 next(xpp); 9551 int eventType = nextNoWhitespace(xpp); 9552 while (eventType != XmlPullParser.END_TAG) { 9553 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 9554 res.setNameElement(parseString(xpp)); 9555 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 9556 res.setDescriptionElement(parseString(xpp)); 9557 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("metadata")) { 9558 res.setMetadata(parseTestScriptTestScriptMetadataComponent(xpp, owner)); 9559 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 9560 res.getAction().add(parseTestScriptTestScriptTestActionComponent(xpp, owner)); 9561 } else if (!parseBackboneContent(eventType, xpp, res)) 9562 unknownContent(xpp); 9563 eventType = nextNoWhitespace(xpp); 9564 } 9565 next(xpp); 9566 parseElementClose(res); 9567 return res; 9568 } 9569 9570 protected TestScript.TestScriptTestActionComponent parseTestScriptTestScriptTestActionComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 9571 TestScript.TestScriptTestActionComponent res = new TestScript.TestScriptTestActionComponent(); 9572 parseBackboneAttributes(xpp, res); 9573 next(xpp); 9574 int eventType = nextNoWhitespace(xpp); 9575 while (eventType != XmlPullParser.END_TAG) { 9576 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operation")) { 9577 res.setOperation(parseTestScriptTestScriptSetupActionOperationComponent(xpp, owner)); 9578 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assert")) { 9579 res.setAssert(parseTestScriptTestScriptSetupActionAssertComponent(xpp, owner)); 9580 } else if (!parseBackboneContent(eventType, xpp, res)) 9581 unknownContent(xpp); 9582 eventType = nextNoWhitespace(xpp); 9583 } 9584 next(xpp); 9585 parseElementClose(res); 9586 return res; 9587 } 9588 9589 protected TestScript.TestScriptTeardownComponent parseTestScriptTestScriptTeardownComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 9590 TestScript.TestScriptTeardownComponent res = new TestScript.TestScriptTeardownComponent(); 9591 parseBackboneAttributes(xpp, res); 9592 next(xpp); 9593 int eventType = nextNoWhitespace(xpp); 9594 while (eventType != XmlPullParser.END_TAG) { 9595 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 9596 res.getAction().add(parseTestScriptTestScriptTeardownActionComponent(xpp, owner)); 9597 } else if (!parseBackboneContent(eventType, xpp, res)) 9598 unknownContent(xpp); 9599 eventType = nextNoWhitespace(xpp); 9600 } 9601 next(xpp); 9602 parseElementClose(res); 9603 return res; 9604 } 9605 9606 protected TestScript.TestScriptTeardownActionComponent parseTestScriptTestScriptTeardownActionComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 9607 TestScript.TestScriptTeardownActionComponent res = new TestScript.TestScriptTeardownActionComponent(); 9608 parseBackboneAttributes(xpp, res); 9609 next(xpp); 9610 int eventType = nextNoWhitespace(xpp); 9611 while (eventType != XmlPullParser.END_TAG) { 9612 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operation")) { 9613 res.setOperation(parseTestScriptTestScriptSetupActionOperationComponent(xpp, owner)); 9614 } else if (!parseBackboneContent(eventType, xpp, res)) 9615 unknownContent(xpp); 9616 eventType = nextNoWhitespace(xpp); 9617 } 9618 next(xpp); 9619 parseElementClose(res); 9620 return res; 9621 } 9622 9623 protected ValueSet parseValueSet(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9624 ValueSet res = new ValueSet(); 9625 parseDomainResourceAttributes(xpp, res); 9626 next(xpp); 9627 int eventType = nextNoWhitespace(xpp); 9628 while (eventType != XmlPullParser.END_TAG) { 9629 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 9630 res.setUrlElement(parseUri(xpp)); 9631 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9632 res.setIdentifier(parseIdentifier(xpp)); 9633 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 9634 res.setVersionElement(parseString(xpp)); 9635 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 9636 res.setNameElement(parseString(xpp)); 9637 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 9638 res.setStatusElement(parseEnumeration(xpp, Enumerations.ConformanceResourceStatus.NULL, new Enumerations.ConformanceResourceStatusEnumFactory())); 9639 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 9640 res.setExperimentalElement(parseBoolean(xpp)); 9641 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 9642 res.setPublisherElement(parseString(xpp)); 9643 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 9644 res.getContact().add(parseValueSetValueSetContactComponent(xpp, res)); 9645 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 9646 res.setDateElement(parseDateTime(xpp)); 9647 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lockedDate")) { 9648 res.setLockedDateElement(parseDate(xpp)); 9649 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 9650 res.setDescriptionElement(parseString(xpp)); 9651 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 9652 res.getUseContext().add(parseCodeableConcept(xpp)); 9653 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("immutable")) { 9654 res.setImmutableElement(parseBoolean(xpp)); 9655 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirements")) { 9656 res.setRequirementsElement(parseString(xpp)); 9657 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 9658 res.setCopyrightElement(parseString(xpp)); 9659 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("extensible")) { 9660 res.setExtensibleElement(parseBoolean(xpp)); 9661 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("codeSystem")) { 9662 res.setCodeSystem(parseValueSetValueSetCodeSystemComponent(xpp, res)); 9663 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("compose")) { 9664 res.setCompose(parseValueSetValueSetComposeComponent(xpp, res)); 9665 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expansion")) { 9666 res.setExpansion(parseValueSetValueSetExpansionComponent(xpp, res)); 9667 } else if (!parseDomainResourceContent(eventType, xpp, res)) 9668 unknownContent(xpp); 9669 eventType = nextNoWhitespace(xpp); 9670 } 9671 next(xpp); 9672 parseElementClose(res); 9673 return res; 9674 } 9675 9676 protected ValueSet.ValueSetContactComponent parseValueSetValueSetContactComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 9677 ValueSet.ValueSetContactComponent res = new ValueSet.ValueSetContactComponent(); 9678 parseBackboneAttributes(xpp, res); 9679 next(xpp); 9680 int eventType = nextNoWhitespace(xpp); 9681 while (eventType != XmlPullParser.END_TAG) { 9682 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 9683 res.setNameElement(parseString(xpp)); 9684 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 9685 res.getTelecom().add(parseContactPoint(xpp)); 9686 } else if (!parseBackboneContent(eventType, xpp, res)) 9687 unknownContent(xpp); 9688 eventType = nextNoWhitespace(xpp); 9689 } 9690 next(xpp); 9691 parseElementClose(res); 9692 return res; 9693 } 9694 9695 protected ValueSet.ValueSetCodeSystemComponent parseValueSetValueSetCodeSystemComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 9696 ValueSet.ValueSetCodeSystemComponent res = new ValueSet.ValueSetCodeSystemComponent(); 9697 parseBackboneAttributes(xpp, res); 9698 next(xpp); 9699 int eventType = nextNoWhitespace(xpp); 9700 while (eventType != XmlPullParser.END_TAG) { 9701 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 9702 res.setSystemElement(parseUri(xpp)); 9703 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 9704 res.setVersionElement(parseString(xpp)); 9705 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("caseSensitive")) { 9706 res.setCaseSensitiveElement(parseBoolean(xpp)); 9707 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("concept")) { 9708 res.getConcept().add(parseValueSetConceptDefinitionComponent(xpp, owner)); 9709 } else if (!parseBackboneContent(eventType, xpp, res)) 9710 unknownContent(xpp); 9711 eventType = nextNoWhitespace(xpp); 9712 } 9713 next(xpp); 9714 parseElementClose(res); 9715 return res; 9716 } 9717 9718 protected ValueSet.ConceptDefinitionComponent parseValueSetConceptDefinitionComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 9719 ValueSet.ConceptDefinitionComponent res = new ValueSet.ConceptDefinitionComponent(); 9720 parseBackboneAttributes(xpp, res); 9721 next(xpp); 9722 int eventType = nextNoWhitespace(xpp); 9723 while (eventType != XmlPullParser.END_TAG) { 9724 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 9725 res.setCodeElement(parseCode(xpp)); 9726 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("abstract")) { 9727 res.setAbstractElement(parseBoolean(xpp)); 9728 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 9729 res.setDisplayElement(parseString(xpp)); 9730 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 9731 res.setDefinitionElement(parseString(xpp)); 9732 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("designation")) { 9733 res.getDesignation().add(parseValueSetConceptDefinitionDesignationComponent(xpp, owner)); 9734 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("concept")) { 9735 res.getConcept().add(parseValueSetConceptDefinitionComponent(xpp, owner)); 9736 } else if (!parseBackboneContent(eventType, xpp, res)) 9737 unknownContent(xpp); 9738 eventType = nextNoWhitespace(xpp); 9739 } 9740 next(xpp); 9741 parseElementClose(res); 9742 return res; 9743 } 9744 9745 protected ValueSet.ConceptDefinitionDesignationComponent parseValueSetConceptDefinitionDesignationComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 9746 ValueSet.ConceptDefinitionDesignationComponent res = new ValueSet.ConceptDefinitionDesignationComponent(); 9747 parseBackboneAttributes(xpp, res); 9748 next(xpp); 9749 int eventType = nextNoWhitespace(xpp); 9750 while (eventType != XmlPullParser.END_TAG) { 9751 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 9752 res.setLanguageElement(parseCode(xpp)); 9753 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 9754 res.setUse(parseCoding(xpp)); 9755 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 9756 res.setValueElement(parseString(xpp)); 9757 } else if (!parseBackboneContent(eventType, xpp, res)) 9758 unknownContent(xpp); 9759 eventType = nextNoWhitespace(xpp); 9760 } 9761 next(xpp); 9762 parseElementClose(res); 9763 return res; 9764 } 9765 9766 protected ValueSet.ValueSetComposeComponent parseValueSetValueSetComposeComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 9767 ValueSet.ValueSetComposeComponent res = new ValueSet.ValueSetComposeComponent(); 9768 parseBackboneAttributes(xpp, res); 9769 next(xpp); 9770 int eventType = nextNoWhitespace(xpp); 9771 while (eventType != XmlPullParser.END_TAG) { 9772 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("import")) { 9773 res.getImport().add(parseUri(xpp)); 9774 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("include")) { 9775 res.getInclude().add(parseValueSetConceptSetComponent(xpp, owner)); 9776 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exclude")) { 9777 res.getExclude().add(parseValueSetConceptSetComponent(xpp, owner)); 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 ValueSet.ConceptSetComponent parseValueSetConceptSetComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 9788 ValueSet.ConceptSetComponent res = new ValueSet.ConceptSetComponent(); 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("system")) { 9794 res.setSystemElement(parseUri(xpp)); 9795 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 9796 res.setVersionElement(parseString(xpp)); 9797 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("concept")) { 9798 res.getConcept().add(parseValueSetConceptReferenceComponent(xpp, owner)); 9799 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("filter")) { 9800 res.getFilter().add(parseValueSetConceptSetFilterComponent(xpp, owner)); 9801 } else if (!parseBackboneContent(eventType, xpp, res)) 9802 unknownContent(xpp); 9803 eventType = nextNoWhitespace(xpp); 9804 } 9805 next(xpp); 9806 parseElementClose(res); 9807 return res; 9808 } 9809 9810 protected ValueSet.ConceptReferenceComponent parseValueSetConceptReferenceComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 9811 ValueSet.ConceptReferenceComponent res = new ValueSet.ConceptReferenceComponent(); 9812 parseBackboneAttributes(xpp, res); 9813 next(xpp); 9814 int eventType = nextNoWhitespace(xpp); 9815 while (eventType != XmlPullParser.END_TAG) { 9816 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 9817 res.setCodeElement(parseCode(xpp)); 9818 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 9819 res.setDisplayElement(parseString(xpp)); 9820 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("designation")) { 9821 res.getDesignation().add(parseValueSetConceptDefinitionDesignationComponent(xpp, owner)); 9822 } else if (!parseBackboneContent(eventType, xpp, res)) 9823 unknownContent(xpp); 9824 eventType = nextNoWhitespace(xpp); 9825 } 9826 next(xpp); 9827 parseElementClose(res); 9828 return res; 9829 } 9830 9831 protected ValueSet.ConceptSetFilterComponent parseValueSetConceptSetFilterComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 9832 ValueSet.ConceptSetFilterComponent res = new ValueSet.ConceptSetFilterComponent(); 9833 parseBackboneAttributes(xpp, res); 9834 next(xpp); 9835 int eventType = nextNoWhitespace(xpp); 9836 while (eventType != XmlPullParser.END_TAG) { 9837 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("property")) { 9838 res.setPropertyElement(parseCode(xpp)); 9839 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("op")) { 9840 res.setOpElement(parseEnumeration(xpp, ValueSet.FilterOperator.NULL, new ValueSet.FilterOperatorEnumFactory())); 9841 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 9842 res.setValueElement(parseCode(xpp)); 9843 } else if (!parseBackboneContent(eventType, xpp, res)) 9844 unknownContent(xpp); 9845 eventType = nextNoWhitespace(xpp); 9846 } 9847 next(xpp); 9848 parseElementClose(res); 9849 return res; 9850 } 9851 9852 protected ValueSet.ValueSetExpansionComponent parseValueSetValueSetExpansionComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 9853 ValueSet.ValueSetExpansionComponent res = new ValueSet.ValueSetExpansionComponent(); 9854 parseBackboneAttributes(xpp, res); 9855 next(xpp); 9856 int eventType = nextNoWhitespace(xpp); 9857 while (eventType != XmlPullParser.END_TAG) { 9858 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9859 res.setIdentifierElement(parseUri(xpp)); 9860 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("timestamp")) { 9861 res.setTimestampElement(parseDateTime(xpp)); 9862 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("total")) { 9863 res.setTotalElement(parseInteger(xpp)); 9864 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("offset")) { 9865 res.setOffsetElement(parseInteger(xpp)); 9866 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameter")) { 9867 res.getParameter().add(parseValueSetValueSetExpansionParameterComponent(xpp, owner)); 9868 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contains")) { 9869 res.getContains().add(parseValueSetValueSetExpansionContainsComponent(xpp, owner)); 9870 } else if (!parseBackboneContent(eventType, xpp, res)) 9871 unknownContent(xpp); 9872 eventType = nextNoWhitespace(xpp); 9873 } 9874 next(xpp); 9875 parseElementClose(res); 9876 return res; 9877 } 9878 9879 protected ValueSet.ValueSetExpansionParameterComponent parseValueSetValueSetExpansionParameterComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 9880 ValueSet.ValueSetExpansionParameterComponent res = new ValueSet.ValueSetExpansionParameterComponent(); 9881 parseBackboneAttributes(xpp, res); 9882 next(xpp); 9883 int eventType = nextNoWhitespace(xpp); 9884 while (eventType != XmlPullParser.END_TAG) { 9885 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 9886 res.setNameElement(parseString(xpp)); 9887 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 9888 res.setValue(parseType("value", xpp)); 9889 } else if (!parseBackboneContent(eventType, xpp, res)) 9890 unknownContent(xpp); 9891 eventType = nextNoWhitespace(xpp); 9892 } 9893 next(xpp); 9894 parseElementClose(res); 9895 return res; 9896 } 9897 9898 protected ValueSet.ValueSetExpansionContainsComponent parseValueSetValueSetExpansionContainsComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 9899 ValueSet.ValueSetExpansionContainsComponent res = new ValueSet.ValueSetExpansionContainsComponent(); 9900 parseBackboneAttributes(xpp, res); 9901 next(xpp); 9902 int eventType = nextNoWhitespace(xpp); 9903 while (eventType != XmlPullParser.END_TAG) { 9904 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 9905 res.setSystemElement(parseUri(xpp)); 9906 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("abstract")) { 9907 res.setAbstractElement(parseBoolean(xpp)); 9908 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 9909 res.setVersionElement(parseString(xpp)); 9910 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 9911 res.setCodeElement(parseCode(xpp)); 9912 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 9913 res.setDisplayElement(parseString(xpp)); 9914 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contains")) { 9915 res.getContains().add(parseValueSetValueSetExpansionContainsComponent(xpp, owner)); 9916 } else if (!parseBackboneContent(eventType, xpp, res)) 9917 unknownContent(xpp); 9918 eventType = nextNoWhitespace(xpp); 9919 } 9920 next(xpp); 9921 parseElementClose(res); 9922 return res; 9923 } 9924 9925 protected VisionPrescription parseVisionPrescription(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9926 VisionPrescription res = new VisionPrescription(); 9927 parseDomainResourceAttributes(xpp, res); 9928 next(xpp); 9929 int eventType = nextNoWhitespace(xpp); 9930 while (eventType != XmlPullParser.END_TAG) { 9931 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9932 res.getIdentifier().add(parseIdentifier(xpp)); 9933 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateWritten")) { 9934 res.setDateWrittenElement(parseDateTime(xpp)); 9935 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 9936 res.setPatient(parseReference(xpp)); 9937 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prescriber")) { 9938 res.setPrescriber(parseReference(xpp)); 9939 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 9940 res.setEncounter(parseReference(xpp)); 9941 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "reason")) { 9942 res.setReason(parseType("reason", xpp)); 9943 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dispense")) { 9944 res.getDispense().add(parseVisionPrescriptionVisionPrescriptionDispenseComponent(xpp, res)); 9945 } else if (!parseDomainResourceContent(eventType, xpp, res)) 9946 unknownContent(xpp); 9947 eventType = nextNoWhitespace(xpp); 9948 } 9949 next(xpp); 9950 parseElementClose(res); 9951 return res; 9952 } 9953 9954 protected VisionPrescription.VisionPrescriptionDispenseComponent parseVisionPrescriptionVisionPrescriptionDispenseComponent(XmlPullParser xpp, VisionPrescription owner) throws XmlPullParserException, IOException, FHIRFormatError { 9955 VisionPrescription.VisionPrescriptionDispenseComponent res = new VisionPrescription.VisionPrescriptionDispenseComponent(); 9956 parseBackboneAttributes(xpp, res); 9957 next(xpp); 9958 int eventType = nextNoWhitespace(xpp); 9959 while (eventType != XmlPullParser.END_TAG) { 9960 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("product")) { 9961 res.setProduct(parseCoding(xpp)); 9962 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eye")) { 9963 res.setEyeElement(parseEnumeration(xpp, VisionPrescription.VisionEyes.NULL, new VisionPrescription.VisionEyesEnumFactory())); 9964 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sphere")) { 9965 res.setSphereElement(parseDecimal(xpp)); 9966 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("cylinder")) { 9967 res.setCylinderElement(parseDecimal(xpp)); 9968 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("axis")) { 9969 res.setAxisElement(parseInteger(xpp)); 9970 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prism")) { 9971 res.setPrismElement(parseDecimal(xpp)); 9972 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("base")) { 9973 res.setBaseElement(parseEnumeration(xpp, VisionPrescription.VisionBase.NULL, new VisionPrescription.VisionBaseEnumFactory())); 9974 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("add")) { 9975 res.setAddElement(parseDecimal(xpp)); 9976 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("power")) { 9977 res.setPowerElement(parseDecimal(xpp)); 9978 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("backCurve")) { 9979 res.setBackCurveElement(parseDecimal(xpp)); 9980 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diameter")) { 9981 res.setDiameterElement(parseDecimal(xpp)); 9982 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("duration")) { 9983 res.setDuration(parseSimpleQuantity(xpp)); 9984 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("color")) { 9985 res.setColorElement(parseString(xpp)); 9986 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("brand")) { 9987 res.setBrandElement(parseString(xpp)); 9988 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notes")) { 9989 res.setNotesElement(parseString(xpp)); 9990 } else if (!parseBackboneContent(eventType, xpp, res)) 9991 unknownContent(xpp); 9992 eventType = nextNoWhitespace(xpp); 9993 } 9994 next(xpp); 9995 parseElementClose(res); 9996 return res; 9997 } 9998 9999 @Override 10000 protected Resource parseResource(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10001 if (xpp.getName().equals("Parameters")) 10002 return parseParameters(xpp); 10003 else if (xpp.getName().equals("Account")) 10004 return parseAccount(xpp); 10005 else if (xpp.getName().equals("AllergyIntolerance")) 10006 return parseAllergyIntolerance(xpp); 10007 else if (xpp.getName().equals("Appointment")) 10008 return parseAppointment(xpp); 10009 else if (xpp.getName().equals("AppointmentResponse")) 10010 return parseAppointmentResponse(xpp); 10011 else if (xpp.getName().equals("AuditEvent")) 10012 return parseAuditEvent(xpp); 10013 else if (xpp.getName().equals("Basic")) 10014 return parseBasic(xpp); 10015 else if (xpp.getName().equals("Binary")) 10016 return parseBinary(xpp); 10017 else if (xpp.getName().equals("BodySite")) 10018 return parseBodySite(xpp); 10019 else if (xpp.getName().equals("Bundle")) 10020 return parseBundle(xpp); 10021 else if (xpp.getName().equals("CarePlan")) 10022 return parseCarePlan(xpp); 10023 else if (xpp.getName().equals("Claim")) 10024 return parseClaim(xpp); 10025 else if (xpp.getName().equals("ClaimResponse")) 10026 return parseClaimResponse(xpp); 10027 else if (xpp.getName().equals("ClinicalImpression")) 10028 return parseClinicalImpression(xpp); 10029 else if (xpp.getName().equals("Communication")) 10030 return parseCommunication(xpp); 10031 else if (xpp.getName().equals("CommunicationRequest")) 10032 return parseCommunicationRequest(xpp); 10033 else if (xpp.getName().equals("Composition")) 10034 return parseComposition(xpp); 10035 else if (xpp.getName().equals("ConceptMap")) 10036 return parseConceptMap(xpp); 10037 else if (xpp.getName().equals("Condition")) 10038 return parseCondition(xpp); 10039 else if (xpp.getName().equals("Conformance")) 10040 return parseConformance(xpp); 10041 else if (xpp.getName().equals("Contract")) 10042 return parseContract(xpp); 10043 else if (xpp.getName().equals("Coverage")) 10044 return parseCoverage(xpp); 10045 else if (xpp.getName().equals("DataElement")) 10046 return parseDataElement(xpp); 10047 else if (xpp.getName().equals("DetectedIssue")) 10048 return parseDetectedIssue(xpp); 10049 else if (xpp.getName().equals("Device")) 10050 return parseDevice(xpp); 10051 else if (xpp.getName().equals("DeviceComponent")) 10052 return parseDeviceComponent(xpp); 10053 else if (xpp.getName().equals("DeviceMetric")) 10054 return parseDeviceMetric(xpp); 10055 else if (xpp.getName().equals("DeviceUseRequest")) 10056 return parseDeviceUseRequest(xpp); 10057 else if (xpp.getName().equals("DeviceUseStatement")) 10058 return parseDeviceUseStatement(xpp); 10059 else if (xpp.getName().equals("DiagnosticOrder")) 10060 return parseDiagnosticOrder(xpp); 10061 else if (xpp.getName().equals("DiagnosticReport")) 10062 return parseDiagnosticReport(xpp); 10063 else if (xpp.getName().equals("DocumentManifest")) 10064 return parseDocumentManifest(xpp); 10065 else if (xpp.getName().equals("DocumentReference")) 10066 return parseDocumentReference(xpp); 10067 else if (xpp.getName().equals("EligibilityRequest")) 10068 return parseEligibilityRequest(xpp); 10069 else if (xpp.getName().equals("EligibilityResponse")) 10070 return parseEligibilityResponse(xpp); 10071 else if (xpp.getName().equals("Encounter")) 10072 return parseEncounter(xpp); 10073 else if (xpp.getName().equals("EnrollmentRequest")) 10074 return parseEnrollmentRequest(xpp); 10075 else if (xpp.getName().equals("EnrollmentResponse")) 10076 return parseEnrollmentResponse(xpp); 10077 else if (xpp.getName().equals("EpisodeOfCare")) 10078 return parseEpisodeOfCare(xpp); 10079 else if (xpp.getName().equals("ExplanationOfBenefit")) 10080 return parseExplanationOfBenefit(xpp); 10081 else if (xpp.getName().equals("FamilyMemberHistory")) 10082 return parseFamilyMemberHistory(xpp); 10083 else if (xpp.getName().equals("Flag")) 10084 return parseFlag(xpp); 10085 else if (xpp.getName().equals("Goal")) 10086 return parseGoal(xpp); 10087 else if (xpp.getName().equals("Group")) 10088 return parseGroup(xpp); 10089 else if (xpp.getName().equals("HealthcareService")) 10090 return parseHealthcareService(xpp); 10091 else if (xpp.getName().equals("ImagingObjectSelection")) 10092 return parseImagingObjectSelection(xpp); 10093 else if (xpp.getName().equals("ImagingStudy")) 10094 return parseImagingStudy(xpp); 10095 else if (xpp.getName().equals("Immunization")) 10096 return parseImmunization(xpp); 10097 else if (xpp.getName().equals("ImmunizationRecommendation")) 10098 return parseImmunizationRecommendation(xpp); 10099 else if (xpp.getName().equals("ImplementationGuide")) 10100 return parseImplementationGuide(xpp); 10101 else if (xpp.getName().equals("List")) 10102 return parseList_(xpp); 10103 else if (xpp.getName().equals("Location")) 10104 return parseLocation(xpp); 10105 else if (xpp.getName().equals("Media")) 10106 return parseMedia(xpp); 10107 else if (xpp.getName().equals("Medication")) 10108 return parseMedication(xpp); 10109 else if (xpp.getName().equals("MedicationAdministration")) 10110 return parseMedicationAdministration(xpp); 10111 else if (xpp.getName().equals("MedicationDispense")) 10112 return parseMedicationDispense(xpp); 10113 else if (xpp.getName().equals("MedicationOrder")) 10114 return parseMedicationOrder(xpp); 10115 else if (xpp.getName().equals("MedicationStatement")) 10116 return parseMedicationStatement(xpp); 10117 else if (xpp.getName().equals("MessageHeader")) 10118 return parseMessageHeader(xpp); 10119 else if (xpp.getName().equals("NamingSystem")) 10120 return parseNamingSystem(xpp); 10121 else if (xpp.getName().equals("NutritionOrder")) 10122 return parseNutritionOrder(xpp); 10123 else if (xpp.getName().equals("Observation")) 10124 return parseObservation(xpp); 10125 else if (xpp.getName().equals("OperationDefinition")) 10126 return parseOperationDefinition(xpp); 10127 else if (xpp.getName().equals("OperationOutcome")) 10128 return parseOperationOutcome(xpp); 10129 else if (xpp.getName().equals("Order")) 10130 return parseOrder(xpp); 10131 else if (xpp.getName().equals("OrderResponse")) 10132 return parseOrderResponse(xpp); 10133 else if (xpp.getName().equals("Organization")) 10134 return parseOrganization(xpp); 10135 else if (xpp.getName().equals("Patient")) 10136 return parsePatient(xpp); 10137 else if (xpp.getName().equals("PaymentNotice")) 10138 return parsePaymentNotice(xpp); 10139 else if (xpp.getName().equals("PaymentReconciliation")) 10140 return parsePaymentReconciliation(xpp); 10141 else if (xpp.getName().equals("Person")) 10142 return parsePerson(xpp); 10143 else if (xpp.getName().equals("Practitioner")) 10144 return parsePractitioner(xpp); 10145 else if (xpp.getName().equals("Procedure")) 10146 return parseProcedure(xpp); 10147 else if (xpp.getName().equals("ProcedureRequest")) 10148 return parseProcedureRequest(xpp); 10149 else if (xpp.getName().equals("ProcessRequest")) 10150 return parseProcessRequest(xpp); 10151 else if (xpp.getName().equals("ProcessResponse")) 10152 return parseProcessResponse(xpp); 10153 else if (xpp.getName().equals("Provenance")) 10154 return parseProvenance(xpp); 10155 else if (xpp.getName().equals("Questionnaire")) 10156 return parseQuestionnaire(xpp); 10157 else if (xpp.getName().equals("QuestionnaireResponse")) 10158 return parseQuestionnaireResponse(xpp); 10159 else if (xpp.getName().equals("ReferralRequest")) 10160 return parseReferralRequest(xpp); 10161 else if (xpp.getName().equals("RelatedPerson")) 10162 return parseRelatedPerson(xpp); 10163 else if (xpp.getName().equals("RiskAssessment")) 10164 return parseRiskAssessment(xpp); 10165 else if (xpp.getName().equals("Schedule")) 10166 return parseSchedule(xpp); 10167 else if (xpp.getName().equals("SearchParameter")) 10168 return parseSearchParameter(xpp); 10169 else if (xpp.getName().equals("Slot")) 10170 return parseSlot(xpp); 10171 else if (xpp.getName().equals("Specimen")) 10172 return parseSpecimen(xpp); 10173 else if (xpp.getName().equals("StructureDefinition")) 10174 return parseStructureDefinition(xpp); 10175 else if (xpp.getName().equals("Subscription")) 10176 return parseSubscription(xpp); 10177 else if (xpp.getName().equals("Substance")) 10178 return parseSubstance(xpp); 10179 else if (xpp.getName().equals("SupplyDelivery")) 10180 return parseSupplyDelivery(xpp); 10181 else if (xpp.getName().equals("SupplyRequest")) 10182 return parseSupplyRequest(xpp); 10183 else if (xpp.getName().equals("TestScript")) 10184 return parseTestScript(xpp); 10185 else if (xpp.getName().equals("ValueSet")) 10186 return parseValueSet(xpp); 10187 else if (xpp.getName().equals("VisionPrescription")) 10188 return parseVisionPrescription(xpp); 10189 else if (xpp.getName().equals("Binary")) 10190 return parseBinary(xpp); 10191 throw new FHIRFormatError("Unknown resource type "+xpp.getName()+""); 10192 } 10193 10194 protected Type parseType(String prefix, XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10195 if (xpp.getName().equals(prefix+"date")) 10196 return parseDate(xpp); 10197 else if (xpp.getName().equals(prefix+"dateTime")) 10198 return parseDateTime(xpp); 10199 else if (xpp.getName().equals(prefix+"code")) 10200 return parseCode(xpp); 10201 else if (xpp.getName().equals(prefix+"string")) 10202 return parseString(xpp); 10203 else if (xpp.getName().equals(prefix+"integer")) 10204 return parseInteger(xpp); 10205 else if (xpp.getName().equals(prefix+"oid")) 10206 return parseOid(xpp); 10207 else if (xpp.getName().equals(prefix+"uri")) 10208 return parseUri(xpp); 10209 else if (xpp.getName().equals(prefix+"uuid")) 10210 return parseUuid(xpp); 10211 else if (xpp.getName().equals(prefix+"instant")) 10212 return parseInstant(xpp); 10213 else if (xpp.getName().equals(prefix+"boolean")) 10214 return parseBoolean(xpp); 10215 else if (xpp.getName().equals(prefix+"base64Binary")) 10216 return parseBase64Binary(xpp); 10217 else if (xpp.getName().equals(prefix+"unsignedInt")) 10218 return parseUnsignedInt(xpp); 10219 else if (xpp.getName().equals(prefix+"markdown")) 10220 return parseMarkdown(xpp); 10221 else if (xpp.getName().equals(prefix+"time")) 10222 return parseTime(xpp); 10223 else if (xpp.getName().equals(prefix+"id")) 10224 return parseId(xpp); 10225 else if (xpp.getName().equals(prefix+"positiveInt")) 10226 return parsePositiveInt(xpp); 10227 else if (xpp.getName().equals(prefix+"decimal")) 10228 return parseDecimal(xpp); 10229 else if (xpp.getName().equals(prefix+"Extension")) 10230 return parseExtension(xpp); 10231 else if (xpp.getName().equals(prefix+"Narrative")) 10232 return parseNarrative(xpp); 10233 else if (xpp.getName().equals(prefix+"Identifier")) 10234 return parseIdentifier(xpp); 10235 else if (xpp.getName().equals(prefix+"Coding")) 10236 return parseCoding(xpp); 10237 else if (xpp.getName().equals(prefix+"Reference")) 10238 return parseReference(xpp); 10239 else if (xpp.getName().equals(prefix+"Signature")) 10240 return parseSignature(xpp); 10241 else if (xpp.getName().equals(prefix+"SampledData")) 10242 return parseSampledData(xpp); 10243 else if (xpp.getName().equals(prefix+"Quantity")) 10244 return parseQuantity(xpp); 10245 else if (xpp.getName().equals(prefix+"Period")) 10246 return parsePeriod(xpp); 10247 else if (xpp.getName().equals(prefix+"Attachment")) 10248 return parseAttachment(xpp); 10249 else if (xpp.getName().equals(prefix+"Ratio")) 10250 return parseRatio(xpp); 10251 else if (xpp.getName().equals(prefix+"Range")) 10252 return parseRange(xpp); 10253 else if (xpp.getName().equals(prefix+"Annotation")) 10254 return parseAnnotation(xpp); 10255 else if (xpp.getName().equals(prefix+"CodeableConcept")) 10256 return parseCodeableConcept(xpp); 10257 else if (xpp.getName().equals(prefix+"Money")) 10258 return parseMoney(xpp); 10259 else if (xpp.getName().equals(prefix+"SimpleQuantity")) 10260 return parseSimpleQuantity(xpp); 10261 else if (xpp.getName().equals(prefix+"Duration")) 10262 return parseDuration(xpp); 10263 else if (xpp.getName().equals(prefix+"Count")) 10264 return parseCount(xpp); 10265 else if (xpp.getName().equals(prefix+"Distance")) 10266 return parseDistance(xpp); 10267 else if (xpp.getName().equals(prefix+"Age")) 10268 return parseAge(xpp); 10269 else if (xpp.getName().equals(prefix+"HumanName")) 10270 return parseHumanName(xpp); 10271 else if (xpp.getName().equals(prefix+"ContactPoint")) 10272 return parseContactPoint(xpp); 10273 else if (xpp.getName().equals(prefix+"Meta")) 10274 return parseMeta(xpp); 10275 else if (xpp.getName().equals(prefix+"Address")) 10276 return parseAddress(xpp); 10277 else if (xpp.getName().equals(prefix+"Timing")) 10278 return parseTiming(xpp); 10279 else if (xpp.getName().equals(prefix+"ElementDefinition")) 10280 return parseElementDefinition(xpp); 10281 else if (xpp.getName().equals(prefix+"Date")) 10282 return parseDate(xpp); 10283 else if (xpp.getName().equals(prefix+"DateTime")) 10284 return parseDateTime(xpp); 10285 else if (xpp.getName().equals(prefix+"Code")) 10286 return parseCode(xpp); 10287 else if (xpp.getName().equals(prefix+"String")) 10288 return parseString(xpp); 10289 else if (xpp.getName().equals(prefix+"Integer")) 10290 return parseInteger(xpp); 10291 else if (xpp.getName().equals(prefix+"Oid")) 10292 return parseOid(xpp); 10293 else if (xpp.getName().equals(prefix+"Uri")) 10294 return parseUri(xpp); 10295 else if (xpp.getName().equals(prefix+"Uuid")) 10296 return parseUuid(xpp); 10297 else if (xpp.getName().equals(prefix+"Instant")) 10298 return parseInstant(xpp); 10299 else if (xpp.getName().equals(prefix+"Boolean")) 10300 return parseBoolean(xpp); 10301 else if (xpp.getName().equals(prefix+"Base64Binary")) 10302 return parseBase64Binary(xpp); 10303 else if (xpp.getName().equals(prefix+"UnsignedInt")) 10304 return parseUnsignedInt(xpp); 10305 else if (xpp.getName().equals(prefix+"Markdown")) 10306 return parseMarkdown(xpp); 10307 else if (xpp.getName().equals(prefix+"Time")) 10308 return parseTime(xpp); 10309 else if (xpp.getName().equals(prefix+"Id")) 10310 return parseId(xpp); 10311 else if (xpp.getName().equals(prefix+"PositiveInt")) 10312 return parsePositiveInt(xpp); 10313 else if (xpp.getName().equals(prefix+"Decimal")) 10314 return parseDecimal(xpp); 10315 throw new FHIRFormatError("Unknown type "+xpp.getName()); 10316 } 10317 10318 protected Type parseType(XmlPullParser xpp, String type) throws XmlPullParserException, IOException, FHIRFormatError { 10319 if (type.equals("date")) 10320 return parseDate(xpp); 10321 else if (type.equals("dateTime")) 10322 return parseDateTime(xpp); 10323 else if (type.equals("code")) 10324 return parseCode(xpp); 10325 else if (type.equals("string")) 10326 return parseString(xpp); 10327 else if (type.equals("integer")) 10328 return parseInteger(xpp); 10329 else if (type.equals("oid")) 10330 return parseOid(xpp); 10331 else if (type.equals("uri")) 10332 return parseUri(xpp); 10333 else if (type.equals("uuid")) 10334 return parseUuid(xpp); 10335 else if (type.equals("instant")) 10336 return parseInstant(xpp); 10337 else if (type.equals("boolean")) 10338 return parseBoolean(xpp); 10339 else if (type.equals("base64Binary")) 10340 return parseBase64Binary(xpp); 10341 else if (type.equals("unsignedInt")) 10342 return parseUnsignedInt(xpp); 10343 else if (type.equals("markdown")) 10344 return parseMarkdown(xpp); 10345 else if (type.equals("time")) 10346 return parseTime(xpp); 10347 else if (type.equals("id")) 10348 return parseId(xpp); 10349 else if (type.equals("positiveInt")) 10350 return parsePositiveInt(xpp); 10351 else if (type.equals("decimal")) 10352 return parseDecimal(xpp); 10353 else if (type.equals("Extension")) 10354 return parseExtension(xpp); 10355 else if (type.equals("Narrative")) 10356 return parseNarrative(xpp); 10357 else if (type.equals("Identifier")) 10358 return parseIdentifier(xpp); 10359 else if (type.equals("Coding")) 10360 return parseCoding(xpp); 10361 else if (type.equals("Reference")) 10362 return parseReference(xpp); 10363 else if (type.equals("Signature")) 10364 return parseSignature(xpp); 10365 else if (type.equals("SampledData")) 10366 return parseSampledData(xpp); 10367 else if (type.equals("Quantity")) 10368 return parseQuantity(xpp); 10369 else if (type.equals("Period")) 10370 return parsePeriod(xpp); 10371 else if (type.equals("Attachment")) 10372 return parseAttachment(xpp); 10373 else if (type.equals("Ratio")) 10374 return parseRatio(xpp); 10375 else if (type.equals("Range")) 10376 return parseRange(xpp); 10377 else if (type.equals("Annotation")) 10378 return parseAnnotation(xpp); 10379 else if (type.equals("CodeableConcept")) 10380 return parseCodeableConcept(xpp); 10381 else if (type.equals("Money")) 10382 return parseMoney(xpp); 10383 else if (type.equals("SimpleQuantity")) 10384 return parseSimpleQuantity(xpp); 10385 else if (type.equals("Duration")) 10386 return parseDuration(xpp); 10387 else if (type.equals("Count")) 10388 return parseCount(xpp); 10389 else if (type.equals("Distance")) 10390 return parseDistance(xpp); 10391 else if (type.equals("Age")) 10392 return parseAge(xpp); 10393 else if (type.equals("HumanName")) 10394 return parseHumanName(xpp); 10395 else if (type.equals("ContactPoint")) 10396 return parseContactPoint(xpp); 10397 else if (type.equals("Meta")) 10398 return parseMeta(xpp); 10399 else if (type.equals("Address")) 10400 return parseAddress(xpp); 10401 else if (type.equals("Timing")) 10402 return parseTiming(xpp); 10403 else if (type.equals("ElementDefinition")) 10404 return parseElementDefinition(xpp); 10405 throw new FHIRFormatError("Unknown type "+type); 10406 } 10407 10408 public Base parseFragment(XmlPullParser xpp, String type) throws XmlPullParserException, IOException, FHIRFormatError { 10409 if (type.equals("Extension")) 10410 return parseExtension(xpp); 10411 else if (type.equals("Narrative")) 10412 return parseNarrative(xpp); 10413 else if (type.equals("Identifier")) 10414 return parseIdentifier(xpp); 10415 else if (type.equals("Coding")) 10416 return parseCoding(xpp); 10417 else if (type.equals("Reference")) 10418 return parseReference(xpp); 10419 else if (type.equals("Signature")) 10420 return parseSignature(xpp); 10421 else if (type.equals("SampledData")) 10422 return parseSampledData(xpp); 10423 else if (type.equals("Quantity")) 10424 return parseQuantity(xpp); 10425 else if (type.equals("Period")) 10426 return parsePeriod(xpp); 10427 else if (type.equals("Attachment")) 10428 return parseAttachment(xpp); 10429 else if (type.equals("Ratio")) 10430 return parseRatio(xpp); 10431 else if (type.equals("Range")) 10432 return parseRange(xpp); 10433 else if (type.equals("Annotation")) 10434 return parseAnnotation(xpp); 10435 else if (type.equals("CodeableConcept")) 10436 return parseCodeableConcept(xpp); 10437 else if (type.equals("Money")) 10438 return parseMoney(xpp); 10439 else if (type.equals("SimpleQuantity")) 10440 return parseSimpleQuantity(xpp); 10441 else if (type.equals("Duration")) 10442 return parseDuration(xpp); 10443 else if (type.equals("Count")) 10444 return parseCount(xpp); 10445 else if (type.equals("Distance")) 10446 return parseDistance(xpp); 10447 else if (type.equals("Age")) 10448 return parseAge(xpp); 10449 else if (type.equals("HumanName")) 10450 return parseHumanName(xpp); 10451 else if (type.equals("ContactPoint")) 10452 return parseContactPoint(xpp); 10453 else if (type.equals("Meta")) 10454 return parseMeta(xpp); 10455 else if (type.equals("Address")) 10456 return parseAddress(xpp); 10457 else if (type.equals("Timing")) 10458 return parseTiming(xpp); 10459 else if (type.equals("ElementDefinition")) 10460 return parseElementDefinition(xpp); 10461 else if (type.equals("Parameters")) 10462 return parseParameters(xpp); 10463 else if (type.equals("Account")) 10464 return parseAccount(xpp); 10465 else if (type.equals("AllergyIntolerance")) 10466 return parseAllergyIntolerance(xpp); 10467 else if (type.equals("Appointment")) 10468 return parseAppointment(xpp); 10469 else if (type.equals("AppointmentResponse")) 10470 return parseAppointmentResponse(xpp); 10471 else if (type.equals("AuditEvent")) 10472 return parseAuditEvent(xpp); 10473 else if (type.equals("Basic")) 10474 return parseBasic(xpp); 10475 else if (type.equals("Binary")) 10476 return parseBinary(xpp); 10477 else if (type.equals("BodySite")) 10478 return parseBodySite(xpp); 10479 else if (type.equals("Bundle")) 10480 return parseBundle(xpp); 10481 else if (type.equals("CarePlan")) 10482 return parseCarePlan(xpp); 10483 else if (type.equals("Claim")) 10484 return parseClaim(xpp); 10485 else if (type.equals("ClaimResponse")) 10486 return parseClaimResponse(xpp); 10487 else if (type.equals("ClinicalImpression")) 10488 return parseClinicalImpression(xpp); 10489 else if (type.equals("Communication")) 10490 return parseCommunication(xpp); 10491 else if (type.equals("CommunicationRequest")) 10492 return parseCommunicationRequest(xpp); 10493 else if (type.equals("Composition")) 10494 return parseComposition(xpp); 10495 else if (type.equals("ConceptMap")) 10496 return parseConceptMap(xpp); 10497 else if (type.equals("Condition")) 10498 return parseCondition(xpp); 10499 else if (type.equals("Conformance")) 10500 return parseConformance(xpp); 10501 else if (type.equals("Contract")) 10502 return parseContract(xpp); 10503 else if (type.equals("Coverage")) 10504 return parseCoverage(xpp); 10505 else if (type.equals("DataElement")) 10506 return parseDataElement(xpp); 10507 else if (type.equals("DetectedIssue")) 10508 return parseDetectedIssue(xpp); 10509 else if (type.equals("Device")) 10510 return parseDevice(xpp); 10511 else if (type.equals("DeviceComponent")) 10512 return parseDeviceComponent(xpp); 10513 else if (type.equals("DeviceMetric")) 10514 return parseDeviceMetric(xpp); 10515 else if (type.equals("DeviceUseRequest")) 10516 return parseDeviceUseRequest(xpp); 10517 else if (type.equals("DeviceUseStatement")) 10518 return parseDeviceUseStatement(xpp); 10519 else if (type.equals("DiagnosticOrder")) 10520 return parseDiagnosticOrder(xpp); 10521 else if (type.equals("DiagnosticReport")) 10522 return parseDiagnosticReport(xpp); 10523 else if (type.equals("DocumentManifest")) 10524 return parseDocumentManifest(xpp); 10525 else if (type.equals("DocumentReference")) 10526 return parseDocumentReference(xpp); 10527 else if (type.equals("EligibilityRequest")) 10528 return parseEligibilityRequest(xpp); 10529 else if (type.equals("EligibilityResponse")) 10530 return parseEligibilityResponse(xpp); 10531 else if (type.equals("Encounter")) 10532 return parseEncounter(xpp); 10533 else if (type.equals("EnrollmentRequest")) 10534 return parseEnrollmentRequest(xpp); 10535 else if (type.equals("EnrollmentResponse")) 10536 return parseEnrollmentResponse(xpp); 10537 else if (type.equals("EpisodeOfCare")) 10538 return parseEpisodeOfCare(xpp); 10539 else if (type.equals("ExplanationOfBenefit")) 10540 return parseExplanationOfBenefit(xpp); 10541 else if (type.equals("FamilyMemberHistory")) 10542 return parseFamilyMemberHistory(xpp); 10543 else if (type.equals("Flag")) 10544 return parseFlag(xpp); 10545 else if (type.equals("Goal")) 10546 return parseGoal(xpp); 10547 else if (type.equals("Group")) 10548 return parseGroup(xpp); 10549 else if (type.equals("HealthcareService")) 10550 return parseHealthcareService(xpp); 10551 else if (type.equals("ImagingObjectSelection")) 10552 return parseImagingObjectSelection(xpp); 10553 else if (type.equals("ImagingStudy")) 10554 return parseImagingStudy(xpp); 10555 else if (type.equals("Immunization")) 10556 return parseImmunization(xpp); 10557 else if (type.equals("ImmunizationRecommendation")) 10558 return parseImmunizationRecommendation(xpp); 10559 else if (type.equals("ImplementationGuide")) 10560 return parseImplementationGuide(xpp); 10561 else if (type.equals("List")) 10562 return parseList_(xpp); 10563 else if (type.equals("Location")) 10564 return parseLocation(xpp); 10565 else if (type.equals("Media")) 10566 return parseMedia(xpp); 10567 else if (type.equals("Medication")) 10568 return parseMedication(xpp); 10569 else if (type.equals("MedicationAdministration")) 10570 return parseMedicationAdministration(xpp); 10571 else if (type.equals("MedicationDispense")) 10572 return parseMedicationDispense(xpp); 10573 else if (type.equals("MedicationOrder")) 10574 return parseMedicationOrder(xpp); 10575 else if (type.equals("MedicationStatement")) 10576 return parseMedicationStatement(xpp); 10577 else if (type.equals("MessageHeader")) 10578 return parseMessageHeader(xpp); 10579 else if (type.equals("NamingSystem")) 10580 return parseNamingSystem(xpp); 10581 else if (type.equals("NutritionOrder")) 10582 return parseNutritionOrder(xpp); 10583 else if (type.equals("Observation")) 10584 return parseObservation(xpp); 10585 else if (type.equals("OperationDefinition")) 10586 return parseOperationDefinition(xpp); 10587 else if (type.equals("OperationOutcome")) 10588 return parseOperationOutcome(xpp); 10589 else if (type.equals("Order")) 10590 return parseOrder(xpp); 10591 else if (type.equals("OrderResponse")) 10592 return parseOrderResponse(xpp); 10593 else if (type.equals("Organization")) 10594 return parseOrganization(xpp); 10595 else if (type.equals("Patient")) 10596 return parsePatient(xpp); 10597 else if (type.equals("PaymentNotice")) 10598 return parsePaymentNotice(xpp); 10599 else if (type.equals("PaymentReconciliation")) 10600 return parsePaymentReconciliation(xpp); 10601 else if (type.equals("Person")) 10602 return parsePerson(xpp); 10603 else if (type.equals("Practitioner")) 10604 return parsePractitioner(xpp); 10605 else if (type.equals("Procedure")) 10606 return parseProcedure(xpp); 10607 else if (type.equals("ProcedureRequest")) 10608 return parseProcedureRequest(xpp); 10609 else if (type.equals("ProcessRequest")) 10610 return parseProcessRequest(xpp); 10611 else if (type.equals("ProcessResponse")) 10612 return parseProcessResponse(xpp); 10613 else if (type.equals("Provenance")) 10614 return parseProvenance(xpp); 10615 else if (type.equals("Questionnaire")) 10616 return parseQuestionnaire(xpp); 10617 else if (type.equals("QuestionnaireResponse")) 10618 return parseQuestionnaireResponse(xpp); 10619 else if (type.equals("ReferralRequest")) 10620 return parseReferralRequest(xpp); 10621 else if (type.equals("RelatedPerson")) 10622 return parseRelatedPerson(xpp); 10623 else if (type.equals("RiskAssessment")) 10624 return parseRiskAssessment(xpp); 10625 else if (type.equals("Schedule")) 10626 return parseSchedule(xpp); 10627 else if (type.equals("SearchParameter")) 10628 return parseSearchParameter(xpp); 10629 else if (type.equals("Slot")) 10630 return parseSlot(xpp); 10631 else if (type.equals("Specimen")) 10632 return parseSpecimen(xpp); 10633 else if (type.equals("StructureDefinition")) 10634 return parseStructureDefinition(xpp); 10635 else if (type.equals("Subscription")) 10636 return parseSubscription(xpp); 10637 else if (type.equals("Substance")) 10638 return parseSubstance(xpp); 10639 else if (type.equals("SupplyDelivery")) 10640 return parseSupplyDelivery(xpp); 10641 else if (type.equals("SupplyRequest")) 10642 return parseSupplyRequest(xpp); 10643 else if (type.equals("TestScript")) 10644 return parseTestScript(xpp); 10645 else if (type.equals("ValueSet")) 10646 return parseValueSet(xpp); 10647 else if (type.equals("VisionPrescription")) 10648 return parseVisionPrescription(xpp); 10649 else if (type.equals("date")) 10650 return parseDate(xpp); 10651 else if (type.equals("dateTime")) 10652 return parseDateTime(xpp); 10653 else if (type.equals("code")) 10654 return parseCode(xpp); 10655 else if (type.equals("string")) 10656 return parseString(xpp); 10657 else if (type.equals("integer")) 10658 return parseInteger(xpp); 10659 else if (type.equals("oid")) 10660 return parseOid(xpp); 10661 else if (type.equals("uri")) 10662 return parseUri(xpp); 10663 else if (type.equals("uuid")) 10664 return parseUuid(xpp); 10665 else if (type.equals("instant")) 10666 return parseInstant(xpp); 10667 else if (type.equals("boolean")) 10668 return parseBoolean(xpp); 10669 else if (type.equals("base64Binary")) 10670 return parseBase64Binary(xpp); 10671 else if (type.equals("unsignedInt")) 10672 return parseUnsignedInt(xpp); 10673 else if (type.equals("markdown")) 10674 return parseMarkdown(xpp); 10675 else if (type.equals("time")) 10676 return parseTime(xpp); 10677 else if (type.equals("id")) 10678 return parseId(xpp); 10679 else if (type.equals("positiveInt")) 10680 return parsePositiveInt(xpp); 10681 else if (type.equals("decimal")) 10682 return parseDecimal(xpp); 10683 throw new FHIRFormatError("Unknown type "+type); 10684 } 10685 10686 private boolean nameIsTypeName(XmlPullParser xpp, String prefix) { 10687 if (xpp.getName().equals(prefix+"Identifier")) 10688 return true; 10689 if (xpp.getName().equals(prefix+"Coding")) 10690 return true; 10691 if (xpp.getName().equals(prefix+"Reference")) 10692 return true; 10693 if (xpp.getName().equals(prefix+"Signature")) 10694 return true; 10695 if (xpp.getName().equals(prefix+"SampledData")) 10696 return true; 10697 if (xpp.getName().equals(prefix+"Quantity")) 10698 return true; 10699 if (xpp.getName().equals(prefix+"Period")) 10700 return true; 10701 if (xpp.getName().equals(prefix+"Attachment")) 10702 return true; 10703 if (xpp.getName().equals(prefix+"Ratio")) 10704 return true; 10705 if (xpp.getName().equals(prefix+"Range")) 10706 return true; 10707 if (xpp.getName().equals(prefix+"Annotation")) 10708 return true; 10709 if (xpp.getName().equals(prefix+"CodeableConcept")) 10710 return true; 10711 if (xpp.getName().equals(prefix+"Money")) 10712 return true; 10713 if (xpp.getName().equals(prefix+"SimpleQuantity")) 10714 return true; 10715 if (xpp.getName().equals(prefix+"Duration")) 10716 return true; 10717 if (xpp.getName().equals(prefix+"Count")) 10718 return true; 10719 if (xpp.getName().equals(prefix+"Distance")) 10720 return true; 10721 if (xpp.getName().equals(prefix+"Age")) 10722 return true; 10723 if (xpp.getName().equals(prefix+"HumanName")) 10724 return true; 10725 if (xpp.getName().equals(prefix+"ContactPoint")) 10726 return true; 10727 if (xpp.getName().equals(prefix+"Meta")) 10728 return true; 10729 if (xpp.getName().equals(prefix+"Address")) 10730 return true; 10731 if (xpp.getName().equals(prefix+"Timing")) 10732 return true; 10733 if (xpp.getName().equals(prefix+"ElementDefinition")) 10734 return true; 10735 if (xpp.getName().equals(prefix+"Parameters")) 10736 return true; 10737 if (xpp.getName().equals(prefix+"Account")) 10738 return true; 10739 if (xpp.getName().equals(prefix+"AllergyIntolerance")) 10740 return true; 10741 if (xpp.getName().equals(prefix+"Appointment")) 10742 return true; 10743 if (xpp.getName().equals(prefix+"AppointmentResponse")) 10744 return true; 10745 if (xpp.getName().equals(prefix+"AuditEvent")) 10746 return true; 10747 if (xpp.getName().equals(prefix+"Basic")) 10748 return true; 10749 if (xpp.getName().equals(prefix+"Binary")) 10750 return true; 10751 if (xpp.getName().equals(prefix+"BodySite")) 10752 return true; 10753 if (xpp.getName().equals(prefix+"Bundle")) 10754 return true; 10755 if (xpp.getName().equals(prefix+"CarePlan")) 10756 return true; 10757 if (xpp.getName().equals(prefix+"Claim")) 10758 return true; 10759 if (xpp.getName().equals(prefix+"ClaimResponse")) 10760 return true; 10761 if (xpp.getName().equals(prefix+"ClinicalImpression")) 10762 return true; 10763 if (xpp.getName().equals(prefix+"Communication")) 10764 return true; 10765 if (xpp.getName().equals(prefix+"CommunicationRequest")) 10766 return true; 10767 if (xpp.getName().equals(prefix+"Composition")) 10768 return true; 10769 if (xpp.getName().equals(prefix+"ConceptMap")) 10770 return true; 10771 if (xpp.getName().equals(prefix+"Condition")) 10772 return true; 10773 if (xpp.getName().equals(prefix+"Conformance")) 10774 return true; 10775 if (xpp.getName().equals(prefix+"Contract")) 10776 return true; 10777 if (xpp.getName().equals(prefix+"Coverage")) 10778 return true; 10779 if (xpp.getName().equals(prefix+"DataElement")) 10780 return true; 10781 if (xpp.getName().equals(prefix+"DetectedIssue")) 10782 return true; 10783 if (xpp.getName().equals(prefix+"Device")) 10784 return true; 10785 if (xpp.getName().equals(prefix+"DeviceComponent")) 10786 return true; 10787 if (xpp.getName().equals(prefix+"DeviceMetric")) 10788 return true; 10789 if (xpp.getName().equals(prefix+"DeviceUseRequest")) 10790 return true; 10791 if (xpp.getName().equals(prefix+"DeviceUseStatement")) 10792 return true; 10793 if (xpp.getName().equals(prefix+"DiagnosticOrder")) 10794 return true; 10795 if (xpp.getName().equals(prefix+"DiagnosticReport")) 10796 return true; 10797 if (xpp.getName().equals(prefix+"DocumentManifest")) 10798 return true; 10799 if (xpp.getName().equals(prefix+"DocumentReference")) 10800 return true; 10801 if (xpp.getName().equals(prefix+"EligibilityRequest")) 10802 return true; 10803 if (xpp.getName().equals(prefix+"EligibilityResponse")) 10804 return true; 10805 if (xpp.getName().equals(prefix+"Encounter")) 10806 return true; 10807 if (xpp.getName().equals(prefix+"EnrollmentRequest")) 10808 return true; 10809 if (xpp.getName().equals(prefix+"EnrollmentResponse")) 10810 return true; 10811 if (xpp.getName().equals(prefix+"EpisodeOfCare")) 10812 return true; 10813 if (xpp.getName().equals(prefix+"ExplanationOfBenefit")) 10814 return true; 10815 if (xpp.getName().equals(prefix+"FamilyMemberHistory")) 10816 return true; 10817 if (xpp.getName().equals(prefix+"Flag")) 10818 return true; 10819 if (xpp.getName().equals(prefix+"Goal")) 10820 return true; 10821 if (xpp.getName().equals(prefix+"Group")) 10822 return true; 10823 if (xpp.getName().equals(prefix+"HealthcareService")) 10824 return true; 10825 if (xpp.getName().equals(prefix+"ImagingObjectSelection")) 10826 return true; 10827 if (xpp.getName().equals(prefix+"ImagingStudy")) 10828 return true; 10829 if (xpp.getName().equals(prefix+"Immunization")) 10830 return true; 10831 if (xpp.getName().equals(prefix+"ImmunizationRecommendation")) 10832 return true; 10833 if (xpp.getName().equals(prefix+"ImplementationGuide")) 10834 return true; 10835 if (xpp.getName().equals(prefix+"List")) 10836 return true; 10837 if (xpp.getName().equals(prefix+"Location")) 10838 return true; 10839 if (xpp.getName().equals(prefix+"Media")) 10840 return true; 10841 if (xpp.getName().equals(prefix+"Medication")) 10842 return true; 10843 if (xpp.getName().equals(prefix+"MedicationAdministration")) 10844 return true; 10845 if (xpp.getName().equals(prefix+"MedicationDispense")) 10846 return true; 10847 if (xpp.getName().equals(prefix+"MedicationOrder")) 10848 return true; 10849 if (xpp.getName().equals(prefix+"MedicationStatement")) 10850 return true; 10851 if (xpp.getName().equals(prefix+"MessageHeader")) 10852 return true; 10853 if (xpp.getName().equals(prefix+"NamingSystem")) 10854 return true; 10855 if (xpp.getName().equals(prefix+"NutritionOrder")) 10856 return true; 10857 if (xpp.getName().equals(prefix+"Observation")) 10858 return true; 10859 if (xpp.getName().equals(prefix+"OperationDefinition")) 10860 return true; 10861 if (xpp.getName().equals(prefix+"OperationOutcome")) 10862 return true; 10863 if (xpp.getName().equals(prefix+"Order")) 10864 return true; 10865 if (xpp.getName().equals(prefix+"OrderResponse")) 10866 return true; 10867 if (xpp.getName().equals(prefix+"Organization")) 10868 return true; 10869 if (xpp.getName().equals(prefix+"Patient")) 10870 return true; 10871 if (xpp.getName().equals(prefix+"PaymentNotice")) 10872 return true; 10873 if (xpp.getName().equals(prefix+"PaymentReconciliation")) 10874 return true; 10875 if (xpp.getName().equals(prefix+"Person")) 10876 return true; 10877 if (xpp.getName().equals(prefix+"Practitioner")) 10878 return true; 10879 if (xpp.getName().equals(prefix+"Procedure")) 10880 return true; 10881 if (xpp.getName().equals(prefix+"ProcedureRequest")) 10882 return true; 10883 if (xpp.getName().equals(prefix+"ProcessRequest")) 10884 return true; 10885 if (xpp.getName().equals(prefix+"ProcessResponse")) 10886 return true; 10887 if (xpp.getName().equals(prefix+"Provenance")) 10888 return true; 10889 if (xpp.getName().equals(prefix+"Questionnaire")) 10890 return true; 10891 if (xpp.getName().equals(prefix+"QuestionnaireResponse")) 10892 return true; 10893 if (xpp.getName().equals(prefix+"ReferralRequest")) 10894 return true; 10895 if (xpp.getName().equals(prefix+"RelatedPerson")) 10896 return true; 10897 if (xpp.getName().equals(prefix+"RiskAssessment")) 10898 return true; 10899 if (xpp.getName().equals(prefix+"Schedule")) 10900 return true; 10901 if (xpp.getName().equals(prefix+"SearchParameter")) 10902 return true; 10903 if (xpp.getName().equals(prefix+"Slot")) 10904 return true; 10905 if (xpp.getName().equals(prefix+"Specimen")) 10906 return true; 10907 if (xpp.getName().equals(prefix+"StructureDefinition")) 10908 return true; 10909 if (xpp.getName().equals(prefix+"Subscription")) 10910 return true; 10911 if (xpp.getName().equals(prefix+"Substance")) 10912 return true; 10913 if (xpp.getName().equals(prefix+"SupplyDelivery")) 10914 return true; 10915 if (xpp.getName().equals(prefix+"SupplyRequest")) 10916 return true; 10917 if (xpp.getName().equals(prefix+"TestScript")) 10918 return true; 10919 if (xpp.getName().equals(prefix+"ValueSet")) 10920 return true; 10921 if (xpp.getName().equals(prefix+"VisionPrescription")) 10922 return true; 10923 if (xpp.getName().equals(prefix+"Date")) 10924 return true; 10925 if (xpp.getName().equals(prefix+"DateTime")) 10926 return true; 10927 if (xpp.getName().equals(prefix+"Code")) 10928 return true; 10929 if (xpp.getName().equals(prefix+"String")) 10930 return true; 10931 if (xpp.getName().equals(prefix+"Integer")) 10932 return true; 10933 if (xpp.getName().equals(prefix+"Oid")) 10934 return true; 10935 if (xpp.getName().equals(prefix+"Uri")) 10936 return true; 10937 if (xpp.getName().equals(prefix+"Uuid")) 10938 return true; 10939 if (xpp.getName().equals(prefix+"Instant")) 10940 return true; 10941 if (xpp.getName().equals(prefix+"Boolean")) 10942 return true; 10943 if (xpp.getName().equals(prefix+"Base64Binary")) 10944 return true; 10945 if (xpp.getName().equals(prefix+"UnsignedInt")) 10946 return true; 10947 if (xpp.getName().equals(prefix+"Markdown")) 10948 return true; 10949 if (xpp.getName().equals(prefix+"Time")) 10950 return true; 10951 if (xpp.getName().equals(prefix+"Id")) 10952 return true; 10953 if (xpp.getName().equals(prefix+"PositiveInt")) 10954 return true; 10955 if (xpp.getName().equals(prefix+"Decimal")) 10956 return true; 10957 return false; 10958 } 10959 protected void composeElementElements(Element element) throws IOException { 10960 for (Extension e : element.getExtension()) { 10961 composeExtension("extension", e); 10962 } 10963 } 10964 10965 protected void composeBackboneElements(BackboneElement element) throws IOException { 10966 composeElementElements(element); 10967 for (Extension e : element.getModifierExtension()) { 10968 composeExtension("modifierExtension", e); 10969 } 10970 } 10971 10972 protected <E extends Enum<E>> void composeEnumeration(String name, Enumeration<E> value, EnumFactory e) throws IOException { 10973 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || value.getValue() != null)) { 10974 composeElementAttributes(value); 10975 if (value.getValue() != null) 10976 xml.attribute("value", e.toCode(value.getValue())); 10977 10978 xml.enter(FHIR_NS, name); 10979 composeElementElements(value); 10980 composeElementClose(value); 10981 xml.exit(FHIR_NS, name); 10982 } 10983 } 10984 10985 protected void composeDate(String name, DateType value) throws IOException { 10986 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || value.getValue() != null)) {// date 10987 composeElementAttributes(value); 10988 if (value.asStringValue() != null) 10989 xml.attribute("value", value.asStringValue()); 10990 10991 xml.enter(FHIR_NS, name); 10992 composeElementElements(value); 10993 composeElementClose(value); 10994 xml.exit(FHIR_NS, name); 10995 } 10996 } 10997 10998 protected void composeDateTime(String name, DateTimeType value) throws IOException { 10999 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || value.getValue() != null)) {// dateTime 11000 composeElementAttributes(value); 11001 if (value.asStringValue() != null) 11002 xml.attribute("value", value.asStringValue()); 11003 11004 xml.enter(FHIR_NS, name); 11005 composeElementElements(value); 11006 composeElementClose(value); 11007 xml.exit(FHIR_NS, name); 11008 } 11009 } 11010 11011 protected void composeCode(String name, CodeType value) throws IOException { 11012 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// code 11013 composeElementAttributes(value); 11014 if (value.asStringValue() != null) 11015 xml.attribute("value", value.asStringValue()); 11016 11017 xml.enter(FHIR_NS, name); 11018 composeElementElements(value); 11019 composeElementClose(value); 11020 xml.exit(FHIR_NS, name); 11021 } 11022 } 11023 11024 protected void composeString(String name, StringType value) throws IOException { 11025 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// string 11026 composeElementAttributes(value); 11027 if (value.asStringValue() != null) 11028 xml.attribute("value", value.asStringValue()); 11029 11030 xml.enter(FHIR_NS, name); 11031 composeElementElements(value); 11032 composeElementClose(value); 11033 xml.exit(FHIR_NS, name); 11034 } 11035 } 11036 11037 protected void composeInteger(String name, IntegerType value) throws IOException { 11038 if (value != null) { // integer 11039 composeElementAttributes(value); 11040 if (value.asStringValue() != null) 11041 xml.attribute("value", value.asStringValue()); 11042 11043 xml.enter(FHIR_NS, name); 11044 composeElementElements(value); 11045 composeElementClose(value); 11046 xml.exit(FHIR_NS, name); 11047 } 11048 } 11049 11050 protected void composeOid(String name, OidType value) throws IOException { 11051 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// oid 11052 composeElementAttributes(value); 11053 if (value.asStringValue() != null) 11054 xml.attribute("value", value.asStringValue()); 11055 11056 xml.enter(FHIR_NS, name); 11057 composeElementElements(value); 11058 composeElementClose(value); 11059 xml.exit(FHIR_NS, name); 11060 } 11061 } 11062 11063 protected void composeUri(String name, UriType value) throws IOException { 11064 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || value.getValue() != null)) {// uri 11065 composeElementAttributes(value); 11066 if (value.asStringValue() != null) 11067 xml.attribute("value", value.asStringValue()); 11068 11069 xml.enter(FHIR_NS, name); 11070 composeElementElements(value); 11071 composeElementClose(value); 11072 xml.exit(FHIR_NS, name); 11073 } 11074 } 11075 11076 protected void composeUuid(String name, UuidType value) throws IOException { 11077 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// uuid 11078 composeElementAttributes(value); 11079 if (value.asStringValue() != null) 11080 xml.attribute("value", value.asStringValue()); 11081 11082 xml.enter(FHIR_NS, name); 11083 composeElementElements(value); 11084 composeElementClose(value); 11085 xml.exit(FHIR_NS, name); 11086 } 11087 } 11088 11089 protected void composeInstant(String name, InstantType value) throws IOException { 11090 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || value.getValue() != null)) {// instant 11091 composeElementAttributes(value); 11092 if (value.asStringValue() != null) 11093 xml.attribute("value", value.asStringValue()); 11094 11095 xml.enter(FHIR_NS, name); 11096 composeElementElements(value); 11097 composeElementClose(value); 11098 xml.exit(FHIR_NS, name); 11099 } 11100 } 11101 11102 protected void composeBoolean(String name, BooleanType value) throws IOException { 11103 if (value != null) { // boolean 11104 composeElementAttributes(value); 11105 if (value.asStringValue() != null) 11106 xml.attribute("value", value.asStringValue()); 11107 11108 xml.enter(FHIR_NS, name); 11109 composeElementElements(value); 11110 composeElementClose(value); 11111 xml.exit(FHIR_NS, name); 11112 } 11113 } 11114 11115 protected void composeBase64Binary(String name, Base64BinaryType value) throws IOException { 11116 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || value.getValue() != null)) {// base64Binary 11117 composeElementAttributes(value); 11118 if (value.asStringValue() != null) 11119 xml.attribute("value", value.asStringValue()); 11120 11121 xml.enter(FHIR_NS, name); 11122 composeElementElements(value); 11123 composeElementClose(value); 11124 xml.exit(FHIR_NS, name); 11125 } 11126 } 11127 11128 protected void composeUnsignedInt(String name, UnsignedIntType value) throws IOException { 11129 if (value != null) { // unsignedInt 11130 composeElementAttributes(value); 11131 if (value.asStringValue() != null) 11132 xml.attribute("value", value.asStringValue()); 11133 11134 xml.enter(FHIR_NS, name); 11135 composeElementElements(value); 11136 composeElementClose(value); 11137 xml.exit(FHIR_NS, name); 11138 } 11139 } 11140 11141 protected void composeMarkdown(String name, MarkdownType value) throws IOException { 11142 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// markdown 11143 composeElementAttributes(value); 11144 if (value.asStringValue() != null) 11145 xml.attribute("value", value.asStringValue()); 11146 11147 xml.enter(FHIR_NS, name); 11148 composeElementElements(value); 11149 composeElementClose(value); 11150 xml.exit(FHIR_NS, name); 11151 } 11152 } 11153 11154 protected void composeTime(String name, TimeType value) throws IOException { 11155 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// time 11156 composeElementAttributes(value); 11157 if (value.asStringValue() != null) 11158 xml.attribute("value", value.asStringValue()); 11159 11160 xml.enter(FHIR_NS, name); 11161 composeElementElements(value); 11162 composeElementClose(value); 11163 xml.exit(FHIR_NS, name); 11164 } 11165 } 11166 11167 protected void composeId(String name, IdType value) throws IOException { 11168 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// id 11169 composeElementAttributes(value); 11170 if (value.asStringValue() != null) 11171 xml.attribute("value", value.asStringValue()); 11172 11173 xml.enter(FHIR_NS, name); 11174 composeElementElements(value); 11175 composeElementClose(value); 11176 xml.exit(FHIR_NS, name); 11177 } 11178 } 11179 11180 protected void composePositiveInt(String name, PositiveIntType value) throws IOException { 11181 if (value != null) { // positiveInt 11182 composeElementAttributes(value); 11183 if (value.asStringValue() != null) 11184 xml.attribute("value", value.asStringValue()); 11185 11186 xml.enter(FHIR_NS, name); 11187 composeElementElements(value); 11188 composeElementClose(value); 11189 xml.exit(FHIR_NS, name); 11190 } 11191 } 11192 11193 protected void composeDecimal(String name, DecimalType value) throws IOException { 11194 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || value.getValue() != null)) {// decimal 11195 composeElementAttributes(value); 11196 if (value.asStringValue() != null) 11197 xml.attribute("value", value.asStringValue()); 11198 11199 xml.enter(FHIR_NS, name); 11200 composeElementElements(value); 11201 composeElementClose(value); 11202 xml.exit(FHIR_NS, name); 11203 } 11204 } 11205 11206 protected void composeExtension(String name, Extension element) throws IOException { 11207 if (element != null) { 11208 composeElementAttributes(element); 11209 if (element.hasUrlElement()) 11210 xml.attribute("url", element.getUrlElement().getValue()); 11211 xml.enter(FHIR_NS, name); 11212 composeElementElements(element); 11213 if (element.hasValue()) { 11214 composeType("value", element.getValue()); 11215 } composeElementClose(element); 11216 xml.exit(FHIR_NS, name); 11217 } 11218 } 11219 11220 protected void composeNarrative(String name, Narrative element) throws IOException { 11221 if (element != null) { 11222 composeElementAttributes(element); 11223 xml.enter(FHIR_NS, name); 11224 composeElementElements(element); 11225 if (element.hasStatusElement()) 11226 composeEnumeration("status", element.getStatusElement(), new Narrative.NarrativeStatusEnumFactory()); 11227 if (element.hasDiv()) { 11228 composeXhtml("div", element.getDiv()); 11229 } 11230 composeElementClose(element); 11231 xml.exit(FHIR_NS, name); 11232 } 11233 } 11234 11235 protected void composeIdentifier(String name, Identifier element) throws IOException { 11236 if (element != null) { 11237 composeTypeAttributes(element); 11238 xml.enter(FHIR_NS, name); 11239 composeElementElements(element); 11240 if (element.hasUseElement()) 11241 composeEnumeration("use", element.getUseElement(), new Identifier.IdentifierUseEnumFactory()); 11242 if (element.hasType()) { 11243 composeCodeableConcept("type", element.getType()); 11244 } 11245 if (element.hasSystemElement()) { 11246 composeUri("system", element.getSystemElement()); 11247 } 11248 if (element.hasValueElement()) { 11249 composeString("value", element.getValueElement()); 11250 } 11251 if (element.hasPeriod()) { 11252 composePeriod("period", element.getPeriod()); 11253 } 11254 if (element.hasAssigner()) { 11255 composeReference("assigner", element.getAssigner()); 11256 } 11257 composeElementClose(element); 11258 xml.exit(FHIR_NS, name); 11259 } 11260 } 11261 11262 protected void composeCoding(String name, Coding element) throws IOException { 11263 if (element != null) { 11264 composeTypeAttributes(element); 11265 xml.enter(FHIR_NS, name); 11266 composeElementElements(element); 11267 if (element.hasSystemElement()) { 11268 composeUri("system", element.getSystemElement()); 11269 } 11270 if (element.hasVersionElement()) { 11271 composeString("version", element.getVersionElement()); 11272 } 11273 if (element.hasCodeElement()) { 11274 composeCode("code", element.getCodeElement()); 11275 } 11276 if (element.hasDisplayElement()) { 11277 composeString("display", element.getDisplayElement()); 11278 } 11279 if (element.hasUserSelectedElement()) { 11280 composeBoolean("userSelected", element.getUserSelectedElement()); 11281 } 11282 composeElementClose(element); 11283 xml.exit(FHIR_NS, name); 11284 } 11285 } 11286 11287 protected void composeReference(String name, Reference element) throws IOException { 11288 if (element != null) { 11289 composeTypeAttributes(element); 11290 xml.enter(FHIR_NS, name); 11291 composeElementElements(element); 11292 if (element.hasReferenceElement()) { 11293 composeString("reference", element.getReferenceElement()); 11294 } 11295 if (element.hasDisplayElement()) { 11296 composeString("display", element.getDisplayElement()); 11297 } 11298 composeElementClose(element); 11299 xml.exit(FHIR_NS, name); 11300 } 11301 } 11302 11303 protected void composeSignature(String name, Signature element) throws IOException { 11304 if (element != null) { 11305 composeTypeAttributes(element); 11306 xml.enter(FHIR_NS, name); 11307 composeElementElements(element); 11308 if (element.hasType()) { 11309 for (Coding e : element.getType()) 11310 composeCoding("type", e); 11311 } 11312 if (element.hasWhenElement()) { 11313 composeInstant("when", element.getWhenElement()); 11314 } 11315 if (element.hasWho()) { 11316 composeType("who", element.getWho()); 11317 } if (element.hasContentTypeElement()) { 11318 composeCode("contentType", element.getContentTypeElement()); 11319 } 11320 if (element.hasBlobElement()) { 11321 composeBase64Binary("blob", element.getBlobElement()); 11322 } 11323 composeElementClose(element); 11324 xml.exit(FHIR_NS, name); 11325 } 11326 } 11327 11328 protected void composeSampledData(String name, SampledData element) throws IOException { 11329 if (element != null) { 11330 composeTypeAttributes(element); 11331 xml.enter(FHIR_NS, name); 11332 composeElementElements(element); 11333 if (element.hasOrigin()) { 11334 composeSimpleQuantity("origin", element.getOrigin()); 11335 } 11336 if (element.hasPeriodElement()) { 11337 composeDecimal("period", element.getPeriodElement()); 11338 } 11339 if (element.hasFactorElement()) { 11340 composeDecimal("factor", element.getFactorElement()); 11341 } 11342 if (element.hasLowerLimitElement()) { 11343 composeDecimal("lowerLimit", element.getLowerLimitElement()); 11344 } 11345 if (element.hasUpperLimitElement()) { 11346 composeDecimal("upperLimit", element.getUpperLimitElement()); 11347 } 11348 if (element.hasDimensionsElement()) { 11349 composePositiveInt("dimensions", element.getDimensionsElement()); 11350 } 11351 if (element.hasDataElement()) { 11352 composeString("data", element.getDataElement()); 11353 } 11354 composeElementClose(element); 11355 xml.exit(FHIR_NS, name); 11356 } 11357 } 11358 11359 protected void composeQuantity(String name, Quantity element) throws IOException { 11360 if (element != null) { 11361 composeTypeAttributes(element); 11362 xml.enter(FHIR_NS, name); 11363 composeElementElements(element); 11364 if (element.hasValueElement()) { 11365 composeDecimal("value", element.getValueElement()); 11366 } 11367 if (element.hasComparatorElement()) 11368 composeEnumeration("comparator", element.getComparatorElement(), new Quantity.QuantityComparatorEnumFactory()); 11369 if (element.hasUnitElement()) { 11370 composeString("unit", element.getUnitElement()); 11371 } 11372 if (element.hasSystemElement()) { 11373 composeUri("system", element.getSystemElement()); 11374 } 11375 if (element.hasCodeElement()) { 11376 composeCode("code", element.getCodeElement()); 11377 } 11378 composeElementClose(element); 11379 xml.exit(FHIR_NS, name); 11380 } 11381 } 11382 11383 protected void composePeriod(String name, Period element) throws IOException { 11384 if (element != null) { 11385 composeTypeAttributes(element); 11386 xml.enter(FHIR_NS, name); 11387 composeElementElements(element); 11388 if (element.hasStartElement()) { 11389 composeDateTime("start", element.getStartElement()); 11390 } 11391 if (element.hasEndElement()) { 11392 composeDateTime("end", element.getEndElement()); 11393 } 11394 composeElementClose(element); 11395 xml.exit(FHIR_NS, name); 11396 } 11397 } 11398 11399 protected void composeAttachment(String name, Attachment element) throws IOException { 11400 if (element != null) { 11401 composeTypeAttributes(element); 11402 xml.enter(FHIR_NS, name); 11403 composeElementElements(element); 11404 if (element.hasContentTypeElement()) { 11405 composeCode("contentType", element.getContentTypeElement()); 11406 } 11407 if (element.hasLanguageElement()) { 11408 composeCode("language", element.getLanguageElement()); 11409 } 11410 if (element.hasDataElement()) { 11411 composeBase64Binary("data", element.getDataElement()); 11412 } 11413 if (element.hasUrlElement()) { 11414 composeUri("url", element.getUrlElement()); 11415 } 11416 if (element.hasSizeElement()) { 11417 composeUnsignedInt("size", element.getSizeElement()); 11418 } 11419 if (element.hasHashElement()) { 11420 composeBase64Binary("hash", element.getHashElement()); 11421 } 11422 if (element.hasTitleElement()) { 11423 composeString("title", element.getTitleElement()); 11424 } 11425 if (element.hasCreationElement()) { 11426 composeDateTime("creation", element.getCreationElement()); 11427 } 11428 composeElementClose(element); 11429 xml.exit(FHIR_NS, name); 11430 } 11431 } 11432 11433 protected void composeRatio(String name, Ratio element) throws IOException { 11434 if (element != null) { 11435 composeTypeAttributes(element); 11436 xml.enter(FHIR_NS, name); 11437 composeElementElements(element); 11438 if (element.hasNumerator()) { 11439 composeQuantity("numerator", element.getNumerator()); 11440 } 11441 if (element.hasDenominator()) { 11442 composeQuantity("denominator", element.getDenominator()); 11443 } 11444 composeElementClose(element); 11445 xml.exit(FHIR_NS, name); 11446 } 11447 } 11448 11449 protected void composeRange(String name, Range element) throws IOException { 11450 if (element != null) { 11451 composeTypeAttributes(element); 11452 xml.enter(FHIR_NS, name); 11453 composeElementElements(element); 11454 if (element.hasLow()) { 11455 composeSimpleQuantity("low", element.getLow()); 11456 } 11457 if (element.hasHigh()) { 11458 composeSimpleQuantity("high", element.getHigh()); 11459 } 11460 composeElementClose(element); 11461 xml.exit(FHIR_NS, name); 11462 } 11463 } 11464 11465 protected void composeAnnotation(String name, Annotation element) throws IOException { 11466 if (element != null) { 11467 composeTypeAttributes(element); 11468 xml.enter(FHIR_NS, name); 11469 composeElementElements(element); 11470 if (element.hasAuthor()) { 11471 composeType("author", element.getAuthor()); 11472 } if (element.hasTimeElement()) { 11473 composeDateTime("time", element.getTimeElement()); 11474 } 11475 if (element.hasTextElement()) { 11476 composeString("text", element.getTextElement()); 11477 } 11478 composeElementClose(element); 11479 xml.exit(FHIR_NS, name); 11480 } 11481 } 11482 11483 protected void composeCodeableConcept(String name, CodeableConcept element) throws IOException { 11484 if (element != null) { 11485 composeTypeAttributes(element); 11486 xml.enter(FHIR_NS, name); 11487 composeElementElements(element); 11488 if (element.hasCoding()) { 11489 for (Coding e : element.getCoding()) 11490 composeCoding("coding", e); 11491 } 11492 if (element.hasTextElement()) { 11493 composeString("text", element.getTextElement()); 11494 } 11495 composeElementClose(element); 11496 xml.exit(FHIR_NS, name); 11497 } 11498 } 11499 11500 protected void composeMoney(String name, Money element) throws IOException { 11501 if (element != null) { 11502 composeTypeAttributes(element); 11503 xml.enter(FHIR_NS, name); 11504 composeElementElements(element); 11505 if (element.hasValueElement()) { 11506 composeDecimal("value", element.getValueElement()); 11507 } 11508 if (element.hasComparatorElement()) 11509 composeEnumeration("comparator", element.getComparatorElement(), new Money.QuantityComparatorEnumFactory()); 11510 if (element.hasUnitElement()) { 11511 composeString("unit", element.getUnitElement()); 11512 } 11513 if (element.hasSystemElement()) { 11514 composeUri("system", element.getSystemElement()); 11515 } 11516 if (element.hasCodeElement()) { 11517 composeCode("code", element.getCodeElement()); 11518 } 11519 composeElementClose(element); 11520 xml.exit(FHIR_NS, name); 11521 } 11522 } 11523 11524 protected void composeSimpleQuantity(String name, SimpleQuantity element) throws IOException { 11525 if (element != null) { 11526 composeTypeAttributes(element); 11527 xml.enter(FHIR_NS, name); 11528 composeElementElements(element); 11529 if (element.hasValueElement()) { 11530 composeDecimal("value", element.getValueElement()); 11531 } 11532 if (element.hasComparatorElement()) 11533 composeEnumeration("comparator", element.getComparatorElement(), new SimpleQuantity.QuantityComparatorEnumFactory()); 11534 if (element.hasUnitElement()) { 11535 composeString("unit", element.getUnitElement()); 11536 } 11537 if (element.hasSystemElement()) { 11538 composeUri("system", element.getSystemElement()); 11539 } 11540 if (element.hasCodeElement()) { 11541 composeCode("code", element.getCodeElement()); 11542 } 11543 composeElementClose(element); 11544 xml.exit(FHIR_NS, name); 11545 } 11546 } 11547 11548 protected void composeDuration(String name, Duration element) throws IOException { 11549 if (element != null) { 11550 composeTypeAttributes(element); 11551 xml.enter(FHIR_NS, name); 11552 composeElementElements(element); 11553 if (element.hasValueElement()) { 11554 composeDecimal("value", element.getValueElement()); 11555 } 11556 if (element.hasComparatorElement()) 11557 composeEnumeration("comparator", element.getComparatorElement(), new Duration.QuantityComparatorEnumFactory()); 11558 if (element.hasUnitElement()) { 11559 composeString("unit", element.getUnitElement()); 11560 } 11561 if (element.hasSystemElement()) { 11562 composeUri("system", element.getSystemElement()); 11563 } 11564 if (element.hasCodeElement()) { 11565 composeCode("code", element.getCodeElement()); 11566 } 11567 composeElementClose(element); 11568 xml.exit(FHIR_NS, name); 11569 } 11570 } 11571 11572 protected void composeCount(String name, Count element) throws IOException { 11573 if (element != null) { 11574 composeTypeAttributes(element); 11575 xml.enter(FHIR_NS, name); 11576 composeElementElements(element); 11577 if (element.hasValueElement()) { 11578 composeDecimal("value", element.getValueElement()); 11579 } 11580 if (element.hasComparatorElement()) 11581 composeEnumeration("comparator", element.getComparatorElement(), new Count.QuantityComparatorEnumFactory()); 11582 if (element.hasUnitElement()) { 11583 composeString("unit", element.getUnitElement()); 11584 } 11585 if (element.hasSystemElement()) { 11586 composeUri("system", element.getSystemElement()); 11587 } 11588 if (element.hasCodeElement()) { 11589 composeCode("code", element.getCodeElement()); 11590 } 11591 composeElementClose(element); 11592 xml.exit(FHIR_NS, name); 11593 } 11594 } 11595 11596 protected void composeDistance(String name, Distance element) throws IOException { 11597 if (element != null) { 11598 composeTypeAttributes(element); 11599 xml.enter(FHIR_NS, name); 11600 composeElementElements(element); 11601 if (element.hasValueElement()) { 11602 composeDecimal("value", element.getValueElement()); 11603 } 11604 if (element.hasComparatorElement()) 11605 composeEnumeration("comparator", element.getComparatorElement(), new Distance.QuantityComparatorEnumFactory()); 11606 if (element.hasUnitElement()) { 11607 composeString("unit", element.getUnitElement()); 11608 } 11609 if (element.hasSystemElement()) { 11610 composeUri("system", element.getSystemElement()); 11611 } 11612 if (element.hasCodeElement()) { 11613 composeCode("code", element.getCodeElement()); 11614 } 11615 composeElementClose(element); 11616 xml.exit(FHIR_NS, name); 11617 } 11618 } 11619 11620 protected void composeAge(String name, Age element) throws IOException { 11621 if (element != null) { 11622 composeTypeAttributes(element); 11623 xml.enter(FHIR_NS, name); 11624 composeElementElements(element); 11625 if (element.hasValueElement()) { 11626 composeDecimal("value", element.getValueElement()); 11627 } 11628 if (element.hasComparatorElement()) 11629 composeEnumeration("comparator", element.getComparatorElement(), new Age.QuantityComparatorEnumFactory()); 11630 if (element.hasUnitElement()) { 11631 composeString("unit", element.getUnitElement()); 11632 } 11633 if (element.hasSystemElement()) { 11634 composeUri("system", element.getSystemElement()); 11635 } 11636 if (element.hasCodeElement()) { 11637 composeCode("code", element.getCodeElement()); 11638 } 11639 composeElementClose(element); 11640 xml.exit(FHIR_NS, name); 11641 } 11642 } 11643 11644 protected void composeHumanName(String name, HumanName element) throws IOException { 11645 if (element != null) { 11646 composeElementAttributes(element); 11647 xml.enter(FHIR_NS, name); 11648 composeElementElements(element); 11649 if (element.hasUseElement()) 11650 composeEnumeration("use", element.getUseElement(), new HumanName.NameUseEnumFactory()); 11651 if (element.hasTextElement()) { 11652 composeString("text", element.getTextElement()); 11653 } 11654 if (element.hasFamily()) { 11655 for (StringType e : element.getFamily()) 11656 composeString("family", e); 11657 } 11658 if (element.hasGiven()) { 11659 for (StringType e : element.getGiven()) 11660 composeString("given", e); 11661 } 11662 if (element.hasPrefix()) { 11663 for (StringType e : element.getPrefix()) 11664 composeString("prefix", e); 11665 } 11666 if (element.hasSuffix()) { 11667 for (StringType e : element.getSuffix()) 11668 composeString("suffix", e); 11669 } 11670 if (element.hasPeriod()) { 11671 composePeriod("period", element.getPeriod()); 11672 } 11673 composeElementClose(element); 11674 xml.exit(FHIR_NS, name); 11675 } 11676 } 11677 11678 protected void composeContactPoint(String name, ContactPoint element) throws IOException { 11679 if (element != null) { 11680 composeElementAttributes(element); 11681 xml.enter(FHIR_NS, name); 11682 composeElementElements(element); 11683 if (element.hasSystemElement()) 11684 composeEnumeration("system", element.getSystemElement(), new ContactPoint.ContactPointSystemEnumFactory()); 11685 if (element.hasValueElement()) { 11686 composeString("value", element.getValueElement()); 11687 } 11688 if (element.hasUseElement()) 11689 composeEnumeration("use", element.getUseElement(), new ContactPoint.ContactPointUseEnumFactory()); 11690 if (element.hasRankElement()) { 11691 composePositiveInt("rank", element.getRankElement()); 11692 } 11693 if (element.hasPeriod()) { 11694 composePeriod("period", element.getPeriod()); 11695 } 11696 composeElementClose(element); 11697 xml.exit(FHIR_NS, name); 11698 } 11699 } 11700 11701 protected void composeMeta(String name, Meta element) throws IOException { 11702 if (element != null) { 11703 composeElementAttributes(element); 11704 xml.enter(FHIR_NS, name); 11705 composeElementElements(element); 11706 if (element.hasVersionIdElement()) { 11707 composeId("versionId", element.getVersionIdElement()); 11708 } 11709 if (element.hasLastUpdatedElement()) { 11710 composeInstant("lastUpdated", element.getLastUpdatedElement()); 11711 } 11712 if (element.hasProfile()) { 11713 for (UriType e : element.getProfile()) 11714 composeUri("profile", e); 11715 } 11716 if (element.hasSecurity()) { 11717 for (Coding e : element.getSecurity()) 11718 composeCoding("security", e); 11719 } 11720 if (element.hasTag()) { 11721 for (Coding e : element.getTag()) 11722 composeCoding("tag", e); 11723 } 11724 composeElementClose(element); 11725 xml.exit(FHIR_NS, name); 11726 } 11727 } 11728 11729 protected void composeAddress(String name, Address element) throws IOException { 11730 if (element != null) { 11731 composeElementAttributes(element); 11732 xml.enter(FHIR_NS, name); 11733 composeElementElements(element); 11734 if (element.hasUseElement()) 11735 composeEnumeration("use", element.getUseElement(), new Address.AddressUseEnumFactory()); 11736 if (element.hasTypeElement()) 11737 composeEnumeration("type", element.getTypeElement(), new Address.AddressTypeEnumFactory()); 11738 if (element.hasTextElement()) { 11739 composeString("text", element.getTextElement()); 11740 } 11741 if (element.hasLine()) { 11742 for (StringType e : element.getLine()) 11743 composeString("line", e); 11744 } 11745 if (element.hasCityElement()) { 11746 composeString("city", element.getCityElement()); 11747 } 11748 if (element.hasDistrictElement()) { 11749 composeString("district", element.getDistrictElement()); 11750 } 11751 if (element.hasStateElement()) { 11752 composeString("state", element.getStateElement()); 11753 } 11754 if (element.hasPostalCodeElement()) { 11755 composeString("postalCode", element.getPostalCodeElement()); 11756 } 11757 if (element.hasCountryElement()) { 11758 composeString("country", element.getCountryElement()); 11759 } 11760 if (element.hasPeriod()) { 11761 composePeriod("period", element.getPeriod()); 11762 } 11763 composeElementClose(element); 11764 xml.exit(FHIR_NS, name); 11765 } 11766 } 11767 11768 protected void composeTiming(String name, Timing element) throws IOException { 11769 if (element != null) { 11770 composeElementAttributes(element); 11771 xml.enter(FHIR_NS, name); 11772 composeElementElements(element); 11773 if (element.hasEvent()) { 11774 for (DateTimeType e : element.getEvent()) 11775 composeDateTime("event", e); 11776 } 11777 if (element.hasRepeat()) { 11778 composeTimingTimingRepeatComponent("repeat", element.getRepeat()); 11779 } 11780 if (element.hasCode()) { 11781 composeCodeableConcept("code", element.getCode()); 11782 } 11783 composeElementClose(element); 11784 xml.exit(FHIR_NS, name); 11785 } 11786 } 11787 11788 protected void composeTimingTimingRepeatComponent(String name, Timing.TimingRepeatComponent element) throws IOException { 11789 if (element != null) { 11790 composeElementAttributes(element); 11791 xml.enter(FHIR_NS, name); 11792 composeElementElements(element); 11793 if (element.hasBounds()) { 11794 composeType("bounds", element.getBounds()); 11795 } if (element.hasCountElement()) { 11796 composeInteger("count", element.getCountElement()); 11797 } 11798 if (element.hasDurationElement()) { 11799 composeDecimal("duration", element.getDurationElement()); 11800 } 11801 if (element.hasDurationMaxElement()) { 11802 composeDecimal("durationMax", element.getDurationMaxElement()); 11803 } 11804 if (element.hasDurationUnitsElement()) 11805 composeEnumeration("durationUnits", element.getDurationUnitsElement(), new Timing.UnitsOfTimeEnumFactory()); 11806 if (element.hasFrequencyElement()) { 11807 composeInteger("frequency", element.getFrequencyElement()); 11808 } 11809 if (element.hasFrequencyMaxElement()) { 11810 composeInteger("frequencyMax", element.getFrequencyMaxElement()); 11811 } 11812 if (element.hasPeriodElement()) { 11813 composeDecimal("period", element.getPeriodElement()); 11814 } 11815 if (element.hasPeriodMaxElement()) { 11816 composeDecimal("periodMax", element.getPeriodMaxElement()); 11817 } 11818 if (element.hasPeriodUnitsElement()) 11819 composeEnumeration("periodUnits", element.getPeriodUnitsElement(), new Timing.UnitsOfTimeEnumFactory()); 11820 if (element.hasWhenElement()) 11821 composeEnumeration("when", element.getWhenElement(), new Timing.EventTimingEnumFactory()); 11822 composeElementClose(element); 11823 xml.exit(FHIR_NS, name); 11824 } 11825 } 11826 11827 protected void composeElementDefinition(String name, ElementDefinition element) throws IOException { 11828 if (element != null) { 11829 composeElementAttributes(element); 11830 xml.enter(FHIR_NS, name); 11831 composeElementElements(element); 11832 if (element.hasPathElement()) { 11833 composeString("path", element.getPathElement()); 11834 } 11835 if (element.hasRepresentation()) 11836 for (Enumeration<ElementDefinition.PropertyRepresentation> e : element.getRepresentation()) 11837 composeEnumeration("representation", e, new ElementDefinition.PropertyRepresentationEnumFactory()); 11838 if (element.hasNameElement()) { 11839 composeString("name", element.getNameElement()); 11840 } 11841 if (element.hasLabelElement()) { 11842 composeString("label", element.getLabelElement()); 11843 } 11844 if (element.hasCode()) { 11845 for (Coding e : element.getCode()) 11846 composeCoding("code", e); 11847 } 11848 if (element.hasSlicing()) { 11849 composeElementDefinitionElementDefinitionSlicingComponent("slicing", element.getSlicing()); 11850 } 11851 if (element.hasShortElement()) { 11852 composeString("short", element.getShortElement()); 11853 } 11854 if (element.hasDefinitionElement()) { 11855 composeMarkdown("definition", element.getDefinitionElement()); 11856 } 11857 if (element.hasCommentsElement()) { 11858 composeMarkdown("comments", element.getCommentsElement()); 11859 } 11860 if (element.hasRequirementsElement()) { 11861 composeMarkdown("requirements", element.getRequirementsElement()); 11862 } 11863 if (element.hasAlias()) { 11864 for (StringType e : element.getAlias()) 11865 composeString("alias", e); 11866 } 11867 if (element.hasMinElement()) { 11868 composeInteger("min", element.getMinElement()); 11869 } 11870 if (element.hasMaxElement()) { 11871 composeString("max", element.getMaxElement()); 11872 } 11873 if (element.hasBase()) { 11874 composeElementDefinitionElementDefinitionBaseComponent("base", element.getBase()); 11875 } 11876 if (element.hasType()) { 11877 for (ElementDefinition.TypeRefComponent e : element.getType()) 11878 composeElementDefinitionTypeRefComponent("type", e); 11879 } 11880 if (element.hasNameReferenceElement()) { 11881 composeString("nameReference", element.getNameReferenceElement()); 11882 } 11883 if (element.hasDefaultValue()) { 11884 composeType("defaultValue", element.getDefaultValue()); 11885 } if (element.hasMeaningWhenMissingElement()) { 11886 composeMarkdown("meaningWhenMissing", element.getMeaningWhenMissingElement()); 11887 } 11888 if (element.hasFixed()) { 11889 composeType("fixed", element.getFixed()); 11890 } if (element.hasPattern()) { 11891 composeType("pattern", element.getPattern()); 11892 } if (element.hasExample()) { 11893 composeType("example", element.getExample()); 11894 } if (element.hasMinValue()) { 11895 composeType("minValue", element.getMinValue()); 11896 } if (element.hasMaxValue()) { 11897 composeType("maxValue", element.getMaxValue()); 11898 } if (element.hasMaxLengthElement()) { 11899 composeInteger("maxLength", element.getMaxLengthElement()); 11900 } 11901 if (element.hasCondition()) { 11902 for (IdType e : element.getCondition()) 11903 composeId("condition", e); 11904 } 11905 if (element.hasConstraint()) { 11906 for (ElementDefinition.ElementDefinitionConstraintComponent e : element.getConstraint()) 11907 composeElementDefinitionElementDefinitionConstraintComponent("constraint", e); 11908 } 11909 if (element.hasMustSupportElement()) { 11910 composeBoolean("mustSupport", element.getMustSupportElement()); 11911 } 11912 if (element.hasIsModifierElement()) { 11913 composeBoolean("isModifier", element.getIsModifierElement()); 11914 } 11915 if (element.hasIsSummaryElement()) { 11916 composeBoolean("isSummary", element.getIsSummaryElement()); 11917 } 11918 if (element.hasBinding()) { 11919 composeElementDefinitionElementDefinitionBindingComponent("binding", element.getBinding()); 11920 } 11921 if (element.hasMapping()) { 11922 for (ElementDefinition.ElementDefinitionMappingComponent e : element.getMapping()) 11923 composeElementDefinitionElementDefinitionMappingComponent("mapping", e); 11924 } 11925 composeElementClose(element); 11926 xml.exit(FHIR_NS, name); 11927 } 11928 } 11929 11930 protected void composeElementDefinitionElementDefinitionSlicingComponent(String name, ElementDefinition.ElementDefinitionSlicingComponent element) throws IOException { 11931 if (element != null) { 11932 composeElementAttributes(element); 11933 xml.enter(FHIR_NS, name); 11934 composeElementElements(element); 11935 if (element.hasDiscriminator()) { 11936 for (StringType e : element.getDiscriminator()) 11937 composeString("discriminator", e); 11938 } 11939 if (element.hasDescriptionElement()) { 11940 composeString("description", element.getDescriptionElement()); 11941 } 11942 if (element.hasOrderedElement()) { 11943 composeBoolean("ordered", element.getOrderedElement()); 11944 } 11945 if (element.hasRulesElement()) 11946 composeEnumeration("rules", element.getRulesElement(), new ElementDefinition.SlicingRulesEnumFactory()); 11947 composeElementClose(element); 11948 xml.exit(FHIR_NS, name); 11949 } 11950 } 11951 11952 protected void composeElementDefinitionElementDefinitionBaseComponent(String name, ElementDefinition.ElementDefinitionBaseComponent element) throws IOException { 11953 if (element != null) { 11954 composeElementAttributes(element); 11955 xml.enter(FHIR_NS, name); 11956 composeElementElements(element); 11957 if (element.hasPathElement()) { 11958 composeString("path", element.getPathElement()); 11959 } 11960 if (element.hasMinElement()) { 11961 composeInteger("min", element.getMinElement()); 11962 } 11963 if (element.hasMaxElement()) { 11964 composeString("max", element.getMaxElement()); 11965 } 11966 composeElementClose(element); 11967 xml.exit(FHIR_NS, name); 11968 } 11969 } 11970 11971 protected void composeElementDefinitionTypeRefComponent(String name, ElementDefinition.TypeRefComponent element) throws IOException { 11972 if (element != null) { 11973 composeElementAttributes(element); 11974 xml.enter(FHIR_NS, name); 11975 composeElementElements(element); 11976 if (element.hasCodeElement()) { 11977 composeCode("code", element.getCodeElement()); 11978 } 11979 if (element.hasProfile()) { 11980 for (UriType e : element.getProfile()) 11981 composeUri("profile", e); 11982 } 11983 if (element.hasAggregation()) 11984 for (Enumeration<ElementDefinition.AggregationMode> e : element.getAggregation()) 11985 composeEnumeration("aggregation", e, new ElementDefinition.AggregationModeEnumFactory()); 11986 composeElementClose(element); 11987 xml.exit(FHIR_NS, name); 11988 } 11989 } 11990 11991 protected void composeElementDefinitionElementDefinitionConstraintComponent(String name, ElementDefinition.ElementDefinitionConstraintComponent element) throws IOException { 11992 if (element != null) { 11993 composeElementAttributes(element); 11994 xml.enter(FHIR_NS, name); 11995 composeElementElements(element); 11996 if (element.hasKeyElement()) { 11997 composeId("key", element.getKeyElement()); 11998 } 11999 if (element.hasRequirementsElement()) { 12000 composeString("requirements", element.getRequirementsElement()); 12001 } 12002 if (element.hasSeverityElement()) 12003 composeEnumeration("severity", element.getSeverityElement(), new ElementDefinition.ConstraintSeverityEnumFactory()); 12004 if (element.hasHumanElement()) { 12005 composeString("human", element.getHumanElement()); 12006 } 12007 if (element.hasXpathElement()) { 12008 composeString("xpath", element.getXpathElement()); 12009 } 12010 composeElementClose(element); 12011 xml.exit(FHIR_NS, name); 12012 } 12013 } 12014 12015 protected void composeElementDefinitionElementDefinitionBindingComponent(String name, ElementDefinition.ElementDefinitionBindingComponent element) throws IOException { 12016 if (element != null) { 12017 composeElementAttributes(element); 12018 xml.enter(FHIR_NS, name); 12019 composeElementElements(element); 12020 if (element.hasStrengthElement()) 12021 composeEnumeration("strength", element.getStrengthElement(), new Enumerations.BindingStrengthEnumFactory()); 12022 if (element.hasDescriptionElement()) { 12023 composeString("description", element.getDescriptionElement()); 12024 } 12025 if (element.hasValueSet()) { 12026 composeType("valueSet", element.getValueSet()); 12027 } composeElementClose(element); 12028 xml.exit(FHIR_NS, name); 12029 } 12030 } 12031 12032 protected void composeElementDefinitionElementDefinitionMappingComponent(String name, ElementDefinition.ElementDefinitionMappingComponent element) throws IOException { 12033 if (element != null) { 12034 composeElementAttributes(element); 12035 xml.enter(FHIR_NS, name); 12036 composeElementElements(element); 12037 if (element.hasIdentityElement()) { 12038 composeId("identity", element.getIdentityElement()); 12039 } 12040 if (element.hasLanguageElement()) { 12041 composeCode("language", element.getLanguageElement()); 12042 } 12043 if (element.hasMapElement()) { 12044 composeString("map", element.getMapElement()); 12045 } 12046 composeElementClose(element); 12047 xml.exit(FHIR_NS, name); 12048 } 12049 } 12050 12051 protected void composeDomainResourceAttributes(DomainResource element) throws IOException { 12052 composeResourceAttributes(element); 12053 } 12054 12055 protected void composeDomainResourceElements(DomainResource element) throws IOException { 12056 composeResourceElements(element); 12057 if (element.hasText()) { 12058 composeNarrative("text", element.getText()); 12059 } 12060 if (element.hasContained()) { 12061 for (Resource e : element.getContained()) 12062 { 12063 xml.enter(FHIR_NS, "contained"); 12064 composeResource(e); 12065 xml.exit(FHIR_NS, "contained"); 12066 } 12067 } 12068 if (element.hasExtension()) 12069 for (Extension e : element.getExtension()) 12070 composeExtension("extension", e); 12071 if (element.hasModifierExtension()) { 12072 for (Extension e : element.getModifierExtension()) 12073 composeExtension("modifierExtension", e); 12074 } 12075 } 12076 12077 protected void composeParameters(String name, Parameters element) throws IOException { 12078 if (element != null) { 12079 composeResourceAttributes(element); 12080 xml.enter(FHIR_NS, name); 12081 composeResourceElements(element); 12082 if (element.hasParameter()) { 12083 for (Parameters.ParametersParameterComponent e : element.getParameter()) 12084 composeParametersParametersParameterComponent("parameter", e); 12085 } 12086 composeElementClose(element); 12087 xml.exit(FHIR_NS, name); 12088 } 12089 } 12090 12091 protected void composeParametersParametersParameterComponent(String name, Parameters.ParametersParameterComponent element) throws IOException { 12092 if (element != null) { 12093 composeElementAttributes(element); 12094 xml.enter(FHIR_NS, name); 12095 composeBackboneElements(element); 12096 if (element.hasNameElement()) { 12097 composeString("name", element.getNameElement()); 12098 } 12099 if (element.hasValue()) { 12100 composeType("value", element.getValue()); 12101 } if (element.hasResource()) { 12102 xml.enter(FHIR_NS, "resource"); 12103 composeResource(element.getResource()); 12104 xml.exit(FHIR_NS, "resource"); 12105 } 12106 if (element.hasPart()) { 12107 for (Parameters.ParametersParameterComponent e : element.getPart()) 12108 composeParametersParametersParameterComponent("part", e); 12109 } 12110 composeElementClose(element); 12111 xml.exit(FHIR_NS, name); 12112 } 12113 } 12114 12115 protected void composeResourceAttributes(Resource element) throws IOException { 12116 if (style != OutputStyle.CANONICAL) 12117 for (String comment : element.getFormatCommentsPre()) 12118 xml.comment(comment, getOutputStyle() == OutputStyle.PRETTY); 12119 } 12120 12121 protected void composeResourceElements(Resource element) throws IOException { 12122 if (element.hasIdElement()) { 12123 composeId("id", element.getIdElement()); 12124 } 12125 if (element.hasMeta()) { 12126 composeMeta("meta", element.getMeta()); 12127 } 12128 if (element.hasImplicitRulesElement()) { 12129 composeUri("implicitRules", element.getImplicitRulesElement()); 12130 } 12131 if (element.hasLanguageElement()) { 12132 composeCode("language", element.getLanguageElement()); 12133 } 12134 } 12135 12136 protected void composeAccount(String name, Account element) throws IOException { 12137 if (element != null) { 12138 composeDomainResourceAttributes(element); 12139 xml.enter(FHIR_NS, name); 12140 composeDomainResourceElements(element); 12141 if (element.hasIdentifier()) { 12142 for (Identifier e : element.getIdentifier()) 12143 composeIdentifier("identifier", e); 12144 } 12145 if (element.hasNameElement()) { 12146 composeString("name", element.getNameElement()); 12147 } 12148 if (element.hasType()) { 12149 composeCodeableConcept("type", element.getType()); 12150 } 12151 if (element.hasStatusElement()) 12152 composeEnumeration("status", element.getStatusElement(), new Account.AccountStatusEnumFactory()); 12153 if (element.hasActivePeriod()) { 12154 composePeriod("activePeriod", element.getActivePeriod()); 12155 } 12156 if (element.hasCurrency()) { 12157 composeCoding("currency", element.getCurrency()); 12158 } 12159 if (element.hasBalance()) { 12160 composeMoney("balance", element.getBalance()); 12161 } 12162 if (element.hasCoveragePeriod()) { 12163 composePeriod("coveragePeriod", element.getCoveragePeriod()); 12164 } 12165 if (element.hasSubject()) { 12166 composeReference("subject", element.getSubject()); 12167 } 12168 if (element.hasOwner()) { 12169 composeReference("owner", element.getOwner()); 12170 } 12171 if (element.hasDescriptionElement()) { 12172 composeString("description", element.getDescriptionElement()); 12173 } 12174 composeElementClose(element); 12175 xml.exit(FHIR_NS, name); 12176 } 12177 } 12178 12179 protected void composeAllergyIntolerance(String name, AllergyIntolerance element) throws IOException { 12180 if (element != null) { 12181 composeDomainResourceAttributes(element); 12182 xml.enter(FHIR_NS, name); 12183 composeDomainResourceElements(element); 12184 if (element.hasIdentifier()) { 12185 for (Identifier e : element.getIdentifier()) 12186 composeIdentifier("identifier", e); 12187 } 12188 if (element.hasOnsetElement()) { 12189 composeDateTime("onset", element.getOnsetElement()); 12190 } 12191 if (element.hasRecordedDateElement()) { 12192 composeDateTime("recordedDate", element.getRecordedDateElement()); 12193 } 12194 if (element.hasRecorder()) { 12195 composeReference("recorder", element.getRecorder()); 12196 } 12197 if (element.hasPatient()) { 12198 composeReference("patient", element.getPatient()); 12199 } 12200 if (element.hasReporter()) { 12201 composeReference("reporter", element.getReporter()); 12202 } 12203 if (element.hasSubstance()) { 12204 composeCodeableConcept("substance", element.getSubstance()); 12205 } 12206 if (element.hasStatusElement()) 12207 composeEnumeration("status", element.getStatusElement(), new AllergyIntolerance.AllergyIntoleranceStatusEnumFactory()); 12208 if (element.hasCriticalityElement()) 12209 composeEnumeration("criticality", element.getCriticalityElement(), new AllergyIntolerance.AllergyIntoleranceCriticalityEnumFactory()); 12210 if (element.hasTypeElement()) 12211 composeEnumeration("type", element.getTypeElement(), new AllergyIntolerance.AllergyIntoleranceTypeEnumFactory()); 12212 if (element.hasCategoryElement()) 12213 composeEnumeration("category", element.getCategoryElement(), new AllergyIntolerance.AllergyIntoleranceCategoryEnumFactory()); 12214 if (element.hasLastOccurenceElement()) { 12215 composeDateTime("lastOccurence", element.getLastOccurenceElement()); 12216 } 12217 if (element.hasNote()) { 12218 composeAnnotation("note", element.getNote()); 12219 } 12220 if (element.hasReaction()) { 12221 for (AllergyIntolerance.AllergyIntoleranceReactionComponent e : element.getReaction()) 12222 composeAllergyIntoleranceAllergyIntoleranceReactionComponent("reaction", e); 12223 } 12224 composeElementClose(element); 12225 xml.exit(FHIR_NS, name); 12226 } 12227 } 12228 12229 protected void composeAllergyIntoleranceAllergyIntoleranceReactionComponent(String name, AllergyIntolerance.AllergyIntoleranceReactionComponent element) throws IOException { 12230 if (element != null) { 12231 composeElementAttributes(element); 12232 xml.enter(FHIR_NS, name); 12233 composeBackboneElements(element); 12234 if (element.hasSubstance()) { 12235 composeCodeableConcept("substance", element.getSubstance()); 12236 } 12237 if (element.hasCertaintyElement()) 12238 composeEnumeration("certainty", element.getCertaintyElement(), new AllergyIntolerance.AllergyIntoleranceCertaintyEnumFactory()); 12239 if (element.hasManifestation()) { 12240 for (CodeableConcept e : element.getManifestation()) 12241 composeCodeableConcept("manifestation", e); 12242 } 12243 if (element.hasDescriptionElement()) { 12244 composeString("description", element.getDescriptionElement()); 12245 } 12246 if (element.hasOnsetElement()) { 12247 composeDateTime("onset", element.getOnsetElement()); 12248 } 12249 if (element.hasSeverityElement()) 12250 composeEnumeration("severity", element.getSeverityElement(), new AllergyIntolerance.AllergyIntoleranceSeverityEnumFactory()); 12251 if (element.hasExposureRoute()) { 12252 composeCodeableConcept("exposureRoute", element.getExposureRoute()); 12253 } 12254 if (element.hasNote()) { 12255 composeAnnotation("note", element.getNote()); 12256 } 12257 composeElementClose(element); 12258 xml.exit(FHIR_NS, name); 12259 } 12260 } 12261 12262 protected void composeAppointment(String name, Appointment element) throws IOException { 12263 if (element != null) { 12264 composeDomainResourceAttributes(element); 12265 xml.enter(FHIR_NS, name); 12266 composeDomainResourceElements(element); 12267 if (element.hasIdentifier()) { 12268 for (Identifier e : element.getIdentifier()) 12269 composeIdentifier("identifier", e); 12270 } 12271 if (element.hasStatusElement()) 12272 composeEnumeration("status", element.getStatusElement(), new Appointment.AppointmentStatusEnumFactory()); 12273 if (element.hasType()) { 12274 composeCodeableConcept("type", element.getType()); 12275 } 12276 if (element.hasReason()) { 12277 composeCodeableConcept("reason", element.getReason()); 12278 } 12279 if (element.hasPriorityElement()) { 12280 composeUnsignedInt("priority", element.getPriorityElement()); 12281 } 12282 if (element.hasDescriptionElement()) { 12283 composeString("description", element.getDescriptionElement()); 12284 } 12285 if (element.hasStartElement()) { 12286 composeInstant("start", element.getStartElement()); 12287 } 12288 if (element.hasEndElement()) { 12289 composeInstant("end", element.getEndElement()); 12290 } 12291 if (element.hasMinutesDurationElement()) { 12292 composePositiveInt("minutesDuration", element.getMinutesDurationElement()); 12293 } 12294 if (element.hasSlot()) { 12295 for (Reference e : element.getSlot()) 12296 composeReference("slot", e); 12297 } 12298 if (element.hasCommentElement()) { 12299 composeString("comment", element.getCommentElement()); 12300 } 12301 if (element.hasParticipant()) { 12302 for (Appointment.AppointmentParticipantComponent e : element.getParticipant()) 12303 composeAppointmentAppointmentParticipantComponent("participant", e); 12304 } 12305 composeElementClose(element); 12306 xml.exit(FHIR_NS, name); 12307 } 12308 } 12309 12310 protected void composeAppointmentAppointmentParticipantComponent(String name, Appointment.AppointmentParticipantComponent element) throws IOException { 12311 if (element != null) { 12312 composeElementAttributes(element); 12313 xml.enter(FHIR_NS, name); 12314 composeBackboneElements(element); 12315 if (element.hasType()) { 12316 for (CodeableConcept e : element.getType()) 12317 composeCodeableConcept("type", e); 12318 } 12319 if (element.hasActor()) { 12320 composeReference("actor", element.getActor()); 12321 } 12322 if (element.hasRequiredElement()) 12323 composeEnumeration("required", element.getRequiredElement(), new Appointment.ParticipantRequiredEnumFactory()); 12324 if (element.hasStatusElement()) 12325 composeEnumeration("status", element.getStatusElement(), new Appointment.ParticipationStatusEnumFactory()); 12326 composeElementClose(element); 12327 xml.exit(FHIR_NS, name); 12328 } 12329 } 12330 12331 protected void composeAppointmentResponse(String name, AppointmentResponse element) throws IOException { 12332 if (element != null) { 12333 composeDomainResourceAttributes(element); 12334 xml.enter(FHIR_NS, name); 12335 composeDomainResourceElements(element); 12336 if (element.hasIdentifier()) { 12337 for (Identifier e : element.getIdentifier()) 12338 composeIdentifier("identifier", e); 12339 } 12340 if (element.hasAppointment()) { 12341 composeReference("appointment", element.getAppointment()); 12342 } 12343 if (element.hasStartElement()) { 12344 composeInstant("start", element.getStartElement()); 12345 } 12346 if (element.hasEndElement()) { 12347 composeInstant("end", element.getEndElement()); 12348 } 12349 if (element.hasParticipantType()) { 12350 for (CodeableConcept e : element.getParticipantType()) 12351 composeCodeableConcept("participantType", e); 12352 } 12353 if (element.hasActor()) { 12354 composeReference("actor", element.getActor()); 12355 } 12356 if (element.hasParticipantStatusElement()) 12357 composeEnumeration("participantStatus", element.getParticipantStatusElement(), new AppointmentResponse.ParticipantStatusEnumFactory()); 12358 if (element.hasCommentElement()) { 12359 composeString("comment", element.getCommentElement()); 12360 } 12361 composeElementClose(element); 12362 xml.exit(FHIR_NS, name); 12363 } 12364 } 12365 12366 protected void composeAuditEvent(String name, AuditEvent element) throws IOException { 12367 if (element != null) { 12368 composeDomainResourceAttributes(element); 12369 xml.enter(FHIR_NS, name); 12370 composeDomainResourceElements(element); 12371 if (element.hasEvent()) { 12372 composeAuditEventAuditEventEventComponent("event", element.getEvent()); 12373 } 12374 if (element.hasParticipant()) { 12375 for (AuditEvent.AuditEventParticipantComponent e : element.getParticipant()) 12376 composeAuditEventAuditEventParticipantComponent("participant", e); 12377 } 12378 if (element.hasSource()) { 12379 composeAuditEventAuditEventSourceComponent("source", element.getSource()); 12380 } 12381 if (element.hasObject()) { 12382 for (AuditEvent.AuditEventObjectComponent e : element.getObject()) 12383 composeAuditEventAuditEventObjectComponent("object", e); 12384 } 12385 composeElementClose(element); 12386 xml.exit(FHIR_NS, name); 12387 } 12388 } 12389 12390 protected void composeAuditEventAuditEventEventComponent(String name, AuditEvent.AuditEventEventComponent element) throws IOException { 12391 if (element != null) { 12392 composeElementAttributes(element); 12393 xml.enter(FHIR_NS, name); 12394 composeBackboneElements(element); 12395 if (element.hasType()) { 12396 composeCoding("type", element.getType()); 12397 } 12398 if (element.hasSubtype()) { 12399 for (Coding e : element.getSubtype()) 12400 composeCoding("subtype", e); 12401 } 12402 if (element.hasActionElement()) 12403 composeEnumeration("action", element.getActionElement(), new AuditEvent.AuditEventActionEnumFactory()); 12404 if (element.hasDateTimeElement()) { 12405 composeInstant("dateTime", element.getDateTimeElement()); 12406 } 12407 if (element.hasOutcomeElement()) 12408 composeEnumeration("outcome", element.getOutcomeElement(), new AuditEvent.AuditEventOutcomeEnumFactory()); 12409 if (element.hasOutcomeDescElement()) { 12410 composeString("outcomeDesc", element.getOutcomeDescElement()); 12411 } 12412 if (element.hasPurposeOfEvent()) { 12413 for (Coding e : element.getPurposeOfEvent()) 12414 composeCoding("purposeOfEvent", e); 12415 } 12416 composeElementClose(element); 12417 xml.exit(FHIR_NS, name); 12418 } 12419 } 12420 12421 protected void composeAuditEventAuditEventParticipantComponent(String name, AuditEvent.AuditEventParticipantComponent element) throws IOException { 12422 if (element != null) { 12423 composeElementAttributes(element); 12424 xml.enter(FHIR_NS, name); 12425 composeBackboneElements(element); 12426 if (element.hasRole()) { 12427 for (CodeableConcept e : element.getRole()) 12428 composeCodeableConcept("role", e); 12429 } 12430 if (element.hasReference()) { 12431 composeReference("reference", element.getReference()); 12432 } 12433 if (element.hasUserId()) { 12434 composeIdentifier("userId", element.getUserId()); 12435 } 12436 if (element.hasAltIdElement()) { 12437 composeString("altId", element.getAltIdElement()); 12438 } 12439 if (element.hasNameElement()) { 12440 composeString("name", element.getNameElement()); 12441 } 12442 if (element.hasRequestorElement()) { 12443 composeBoolean("requestor", element.getRequestorElement()); 12444 } 12445 if (element.hasLocation()) { 12446 composeReference("location", element.getLocation()); 12447 } 12448 if (element.hasPolicy()) { 12449 for (UriType e : element.getPolicy()) 12450 composeUri("policy", e); 12451 } 12452 if (element.hasMedia()) { 12453 composeCoding("media", element.getMedia()); 12454 } 12455 if (element.hasNetwork()) { 12456 composeAuditEventAuditEventParticipantNetworkComponent("network", element.getNetwork()); 12457 } 12458 if (element.hasPurposeOfUse()) { 12459 for (Coding e : element.getPurposeOfUse()) 12460 composeCoding("purposeOfUse", e); 12461 } 12462 composeElementClose(element); 12463 xml.exit(FHIR_NS, name); 12464 } 12465 } 12466 12467 protected void composeAuditEventAuditEventParticipantNetworkComponent(String name, AuditEvent.AuditEventParticipantNetworkComponent element) throws IOException { 12468 if (element != null) { 12469 composeElementAttributes(element); 12470 xml.enter(FHIR_NS, name); 12471 composeBackboneElements(element); 12472 if (element.hasAddressElement()) { 12473 composeString("address", element.getAddressElement()); 12474 } 12475 if (element.hasTypeElement()) 12476 composeEnumeration("type", element.getTypeElement(), new AuditEvent.AuditEventParticipantNetworkTypeEnumFactory()); 12477 composeElementClose(element); 12478 xml.exit(FHIR_NS, name); 12479 } 12480 } 12481 12482 protected void composeAuditEventAuditEventSourceComponent(String name, AuditEvent.AuditEventSourceComponent element) throws IOException { 12483 if (element != null) { 12484 composeElementAttributes(element); 12485 xml.enter(FHIR_NS, name); 12486 composeBackboneElements(element); 12487 if (element.hasSiteElement()) { 12488 composeString("site", element.getSiteElement()); 12489 } 12490 if (element.hasIdentifier()) { 12491 composeIdentifier("identifier", element.getIdentifier()); 12492 } 12493 if (element.hasType()) { 12494 for (Coding e : element.getType()) 12495 composeCoding("type", e); 12496 } 12497 composeElementClose(element); 12498 xml.exit(FHIR_NS, name); 12499 } 12500 } 12501 12502 protected void composeAuditEventAuditEventObjectComponent(String name, AuditEvent.AuditEventObjectComponent element) throws IOException { 12503 if (element != null) { 12504 composeElementAttributes(element); 12505 xml.enter(FHIR_NS, name); 12506 composeBackboneElements(element); 12507 if (element.hasIdentifier()) { 12508 composeIdentifier("identifier", element.getIdentifier()); 12509 } 12510 if (element.hasReference()) { 12511 composeReference("reference", element.getReference()); 12512 } 12513 if (element.hasType()) { 12514 composeCoding("type", element.getType()); 12515 } 12516 if (element.hasRole()) { 12517 composeCoding("role", element.getRole()); 12518 } 12519 if (element.hasLifecycle()) { 12520 composeCoding("lifecycle", element.getLifecycle()); 12521 } 12522 if (element.hasSecurityLabel()) { 12523 for (Coding e : element.getSecurityLabel()) 12524 composeCoding("securityLabel", e); 12525 } 12526 if (element.hasNameElement()) { 12527 composeString("name", element.getNameElement()); 12528 } 12529 if (element.hasDescriptionElement()) { 12530 composeString("description", element.getDescriptionElement()); 12531 } 12532 if (element.hasQueryElement()) { 12533 composeBase64Binary("query", element.getQueryElement()); 12534 } 12535 if (element.hasDetail()) { 12536 for (AuditEvent.AuditEventObjectDetailComponent e : element.getDetail()) 12537 composeAuditEventAuditEventObjectDetailComponent("detail", e); 12538 } 12539 composeElementClose(element); 12540 xml.exit(FHIR_NS, name); 12541 } 12542 } 12543 12544 protected void composeAuditEventAuditEventObjectDetailComponent(String name, AuditEvent.AuditEventObjectDetailComponent element) throws IOException { 12545 if (element != null) { 12546 composeElementAttributes(element); 12547 xml.enter(FHIR_NS, name); 12548 composeBackboneElements(element); 12549 if (element.hasTypeElement()) { 12550 composeString("type", element.getTypeElement()); 12551 } 12552 if (element.hasValueElement()) { 12553 composeBase64Binary("value", element.getValueElement()); 12554 } 12555 composeElementClose(element); 12556 xml.exit(FHIR_NS, name); 12557 } 12558 } 12559 12560 protected void composeBasic(String name, Basic element) throws IOException { 12561 if (element != null) { 12562 composeDomainResourceAttributes(element); 12563 xml.enter(FHIR_NS, name); 12564 composeDomainResourceElements(element); 12565 if (element.hasIdentifier()) { 12566 for (Identifier e : element.getIdentifier()) 12567 composeIdentifier("identifier", e); 12568 } 12569 if (element.hasCode()) { 12570 composeCodeableConcept("code", element.getCode()); 12571 } 12572 if (element.hasSubject()) { 12573 composeReference("subject", element.getSubject()); 12574 } 12575 if (element.hasAuthor()) { 12576 composeReference("author", element.getAuthor()); 12577 } 12578 if (element.hasCreatedElement()) { 12579 composeDate("created", element.getCreatedElement()); 12580 } 12581 composeElementClose(element); 12582 xml.exit(FHIR_NS, name); 12583 } 12584 } 12585 12586 protected void composeBinary(String name, Binary element) throws IOException { 12587 if (element != null) { 12588 composeResourceAttributes(element); 12589 xml.enter(FHIR_NS, name); 12590 composeResourceElements(element); 12591 if (element.hasContentTypeElement()) { 12592 composeCode("contentType", element.getContentTypeElement()); 12593 } 12594 if (element.hasContentElement()) { 12595 composeBase64Binary("content", element.getContentElement()); 12596 } 12597 composeElementClose(element); 12598 xml.exit(FHIR_NS, name); 12599 } 12600 } 12601 12602 protected void composeBodySite(String name, BodySite element) throws IOException { 12603 if (element != null) { 12604 composeDomainResourceAttributes(element); 12605 xml.enter(FHIR_NS, name); 12606 composeDomainResourceElements(element); 12607 if (element.hasPatient()) { 12608 composeReference("patient", element.getPatient()); 12609 } 12610 if (element.hasIdentifier()) { 12611 for (Identifier e : element.getIdentifier()) 12612 composeIdentifier("identifier", e); 12613 } 12614 if (element.hasCode()) { 12615 composeCodeableConcept("code", element.getCode()); 12616 } 12617 if (element.hasModifier()) { 12618 for (CodeableConcept e : element.getModifier()) 12619 composeCodeableConcept("modifier", e); 12620 } 12621 if (element.hasDescriptionElement()) { 12622 composeString("description", element.getDescriptionElement()); 12623 } 12624 if (element.hasImage()) { 12625 for (Attachment e : element.getImage()) 12626 composeAttachment("image", e); 12627 } 12628 composeElementClose(element); 12629 xml.exit(FHIR_NS, name); 12630 } 12631 } 12632 12633 protected void composeBundle(String name, Bundle element) throws IOException { 12634 if (element != null) { 12635 composeResourceAttributes(element); 12636 xml.enter(FHIR_NS, name); 12637 composeResourceElements(element); 12638 if (element.hasTypeElement()) 12639 composeEnumeration("type", element.getTypeElement(), new Bundle.BundleTypeEnumFactory()); 12640 if (element.hasTotalElement()) { 12641 composeUnsignedInt("total", element.getTotalElement()); 12642 } 12643 if (element.hasLink()) { 12644 for (Bundle.BundleLinkComponent e : element.getLink()) 12645 composeBundleBundleLinkComponent("link", e); 12646 } 12647 if (element.hasEntry()) { 12648 for (Bundle.BundleEntryComponent e : element.getEntry()) 12649 composeBundleBundleEntryComponent("entry", e); 12650 } 12651 if (element.hasSignature()) { 12652 composeSignature("signature", element.getSignature()); 12653 } 12654 composeElementClose(element); 12655 xml.exit(FHIR_NS, name); 12656 } 12657 } 12658 12659 protected void composeBundleBundleLinkComponent(String name, Bundle.BundleLinkComponent element) throws IOException { 12660 if (element != null) { 12661 composeElementAttributes(element); 12662 xml.enter(FHIR_NS, name); 12663 composeBackboneElements(element); 12664 if (element.hasRelationElement()) { 12665 composeString("relation", element.getRelationElement()); 12666 } 12667 if (element.hasUrlElement()) { 12668 composeUri("url", element.getUrlElement()); 12669 } 12670 composeElementClose(element); 12671 xml.exit(FHIR_NS, name); 12672 } 12673 } 12674 12675 protected void composeBundleBundleEntryComponent(String name, Bundle.BundleEntryComponent element) throws IOException { 12676 if (element != null) { 12677 composeElementAttributes(element); 12678 xml.enter(FHIR_NS, name); 12679 composeBackboneElements(element); 12680 if (element.hasLink()) { 12681 for (Bundle.BundleLinkComponent e : element.getLink()) 12682 composeBundleBundleLinkComponent("link", e); 12683 } 12684 if (element.hasFullUrlElement()) { 12685 composeUri("fullUrl", element.getFullUrlElement()); 12686 } 12687 if (element.hasResource()) { 12688 xml.enter(FHIR_NS, "resource"); 12689 composeResource(element.getResource()); 12690 xml.exit(FHIR_NS, "resource"); 12691 } 12692 if (element.hasSearch()) { 12693 composeBundleBundleEntrySearchComponent("search", element.getSearch()); 12694 } 12695 if (element.hasRequest()) { 12696 composeBundleBundleEntryRequestComponent("request", element.getRequest()); 12697 } 12698 if (element.hasResponse()) { 12699 composeBundleBundleEntryResponseComponent("response", element.getResponse()); 12700 } 12701 composeElementClose(element); 12702 xml.exit(FHIR_NS, name); 12703 } 12704 } 12705 12706 protected void composeBundleBundleEntrySearchComponent(String name, Bundle.BundleEntrySearchComponent element) throws IOException { 12707 if (element != null) { 12708 composeElementAttributes(element); 12709 xml.enter(FHIR_NS, name); 12710 composeBackboneElements(element); 12711 if (element.hasModeElement()) 12712 composeEnumeration("mode", element.getModeElement(), new Bundle.SearchEntryModeEnumFactory()); 12713 if (element.hasScoreElement()) { 12714 composeDecimal("score", element.getScoreElement()); 12715 } 12716 composeElementClose(element); 12717 xml.exit(FHIR_NS, name); 12718 } 12719 } 12720 12721 protected void composeBundleBundleEntryRequestComponent(String name, Bundle.BundleEntryRequestComponent element) throws IOException { 12722 if (element != null) { 12723 composeElementAttributes(element); 12724 xml.enter(FHIR_NS, name); 12725 composeBackboneElements(element); 12726 if (element.hasMethodElement()) 12727 composeEnumeration("method", element.getMethodElement(), new Bundle.HTTPVerbEnumFactory()); 12728 if (element.hasUrlElement()) { 12729 composeUri("url", element.getUrlElement()); 12730 } 12731 if (element.hasIfNoneMatchElement()) { 12732 composeString("ifNoneMatch", element.getIfNoneMatchElement()); 12733 } 12734 if (element.hasIfModifiedSinceElement()) { 12735 composeInstant("ifModifiedSince", element.getIfModifiedSinceElement()); 12736 } 12737 if (element.hasIfMatchElement()) { 12738 composeString("ifMatch", element.getIfMatchElement()); 12739 } 12740 if (element.hasIfNoneExistElement()) { 12741 composeString("ifNoneExist", element.getIfNoneExistElement()); 12742 } 12743 composeElementClose(element); 12744 xml.exit(FHIR_NS, name); 12745 } 12746 } 12747 12748 protected void composeBundleBundleEntryResponseComponent(String name, Bundle.BundleEntryResponseComponent element) throws IOException { 12749 if (element != null) { 12750 composeElementAttributes(element); 12751 xml.enter(FHIR_NS, name); 12752 composeBackboneElements(element); 12753 if (element.hasStatusElement()) { 12754 composeString("status", element.getStatusElement()); 12755 } 12756 if (element.hasLocationElement()) { 12757 composeUri("location", element.getLocationElement()); 12758 } 12759 if (element.hasEtagElement()) { 12760 composeString("etag", element.getEtagElement()); 12761 } 12762 if (element.hasLastModifiedElement()) { 12763 composeInstant("lastModified", element.getLastModifiedElement()); 12764 } 12765 composeElementClose(element); 12766 xml.exit(FHIR_NS, name); 12767 } 12768 } 12769 12770 protected void composeCarePlan(String name, CarePlan element) throws IOException { 12771 if (element != null) { 12772 composeDomainResourceAttributes(element); 12773 xml.enter(FHIR_NS, name); 12774 composeDomainResourceElements(element); 12775 if (element.hasIdentifier()) { 12776 for (Identifier e : element.getIdentifier()) 12777 composeIdentifier("identifier", e); 12778 } 12779 if (element.hasSubject()) { 12780 composeReference("subject", element.getSubject()); 12781 } 12782 if (element.hasStatusElement()) 12783 composeEnumeration("status", element.getStatusElement(), new CarePlan.CarePlanStatusEnumFactory()); 12784 if (element.hasContext()) { 12785 composeReference("context", element.getContext()); 12786 } 12787 if (element.hasPeriod()) { 12788 composePeriod("period", element.getPeriod()); 12789 } 12790 if (element.hasAuthor()) { 12791 for (Reference e : element.getAuthor()) 12792 composeReference("author", e); 12793 } 12794 if (element.hasModifiedElement()) { 12795 composeDateTime("modified", element.getModifiedElement()); 12796 } 12797 if (element.hasCategory()) { 12798 for (CodeableConcept e : element.getCategory()) 12799 composeCodeableConcept("category", e); 12800 } 12801 if (element.hasDescriptionElement()) { 12802 composeString("description", element.getDescriptionElement()); 12803 } 12804 if (element.hasAddresses()) { 12805 for (Reference e : element.getAddresses()) 12806 composeReference("addresses", e); 12807 } 12808 if (element.hasSupport()) { 12809 for (Reference e : element.getSupport()) 12810 composeReference("support", e); 12811 } 12812 if (element.hasRelatedPlan()) { 12813 for (CarePlan.CarePlanRelatedPlanComponent e : element.getRelatedPlan()) 12814 composeCarePlanCarePlanRelatedPlanComponent("relatedPlan", e); 12815 } 12816 if (element.hasParticipant()) { 12817 for (CarePlan.CarePlanParticipantComponent e : element.getParticipant()) 12818 composeCarePlanCarePlanParticipantComponent("participant", e); 12819 } 12820 if (element.hasGoal()) { 12821 for (Reference e : element.getGoal()) 12822 composeReference("goal", e); 12823 } 12824 if (element.hasActivity()) { 12825 for (CarePlan.CarePlanActivityComponent e : element.getActivity()) 12826 composeCarePlanCarePlanActivityComponent("activity", e); 12827 } 12828 if (element.hasNote()) { 12829 composeAnnotation("note", element.getNote()); 12830 } 12831 composeElementClose(element); 12832 xml.exit(FHIR_NS, name); 12833 } 12834 } 12835 12836 protected void composeCarePlanCarePlanRelatedPlanComponent(String name, CarePlan.CarePlanRelatedPlanComponent element) throws IOException { 12837 if (element != null) { 12838 composeElementAttributes(element); 12839 xml.enter(FHIR_NS, name); 12840 composeBackboneElements(element); 12841 if (element.hasCodeElement()) 12842 composeEnumeration("code", element.getCodeElement(), new CarePlan.CarePlanRelationshipEnumFactory()); 12843 if (element.hasPlan()) { 12844 composeReference("plan", element.getPlan()); 12845 } 12846 composeElementClose(element); 12847 xml.exit(FHIR_NS, name); 12848 } 12849 } 12850 12851 protected void composeCarePlanCarePlanParticipantComponent(String name, CarePlan.CarePlanParticipantComponent element) throws IOException { 12852 if (element != null) { 12853 composeElementAttributes(element); 12854 xml.enter(FHIR_NS, name); 12855 composeBackboneElements(element); 12856 if (element.hasRole()) { 12857 composeCodeableConcept("role", element.getRole()); 12858 } 12859 if (element.hasMember()) { 12860 composeReference("member", element.getMember()); 12861 } 12862 composeElementClose(element); 12863 xml.exit(FHIR_NS, name); 12864 } 12865 } 12866 12867 protected void composeCarePlanCarePlanActivityComponent(String name, CarePlan.CarePlanActivityComponent element) throws IOException { 12868 if (element != null) { 12869 composeElementAttributes(element); 12870 xml.enter(FHIR_NS, name); 12871 composeBackboneElements(element); 12872 if (element.hasActionResulting()) { 12873 for (Reference e : element.getActionResulting()) 12874 composeReference("actionResulting", e); 12875 } 12876 if (element.hasProgress()) { 12877 for (Annotation e : element.getProgress()) 12878 composeAnnotation("progress", e); 12879 } 12880 if (element.hasReference()) { 12881 composeReference("reference", element.getReference()); 12882 } 12883 if (element.hasDetail()) { 12884 composeCarePlanCarePlanActivityDetailComponent("detail", element.getDetail()); 12885 } 12886 composeElementClose(element); 12887 xml.exit(FHIR_NS, name); 12888 } 12889 } 12890 12891 protected void composeCarePlanCarePlanActivityDetailComponent(String name, CarePlan.CarePlanActivityDetailComponent element) throws IOException { 12892 if (element != null) { 12893 composeElementAttributes(element); 12894 xml.enter(FHIR_NS, name); 12895 composeBackboneElements(element); 12896 if (element.hasCategory()) { 12897 composeCodeableConcept("category", element.getCategory()); 12898 } 12899 if (element.hasCode()) { 12900 composeCodeableConcept("code", element.getCode()); 12901 } 12902 if (element.hasReasonCode()) { 12903 for (CodeableConcept e : element.getReasonCode()) 12904 composeCodeableConcept("reasonCode", e); 12905 } 12906 if (element.hasReasonReference()) { 12907 for (Reference e : element.getReasonReference()) 12908 composeReference("reasonReference", e); 12909 } 12910 if (element.hasGoal()) { 12911 for (Reference e : element.getGoal()) 12912 composeReference("goal", e); 12913 } 12914 if (element.hasStatusElement()) 12915 composeEnumeration("status", element.getStatusElement(), new CarePlan.CarePlanActivityStatusEnumFactory()); 12916 if (element.hasStatusReason()) { 12917 composeCodeableConcept("statusReason", element.getStatusReason()); 12918 } 12919 if (element.hasProhibitedElement()) { 12920 composeBoolean("prohibited", element.getProhibitedElement()); 12921 } 12922 if (element.hasScheduled()) { 12923 composeType("scheduled", element.getScheduled()); 12924 } if (element.hasLocation()) { 12925 composeReference("location", element.getLocation()); 12926 } 12927 if (element.hasPerformer()) { 12928 for (Reference e : element.getPerformer()) 12929 composeReference("performer", e); 12930 } 12931 if (element.hasProduct()) { 12932 composeType("product", element.getProduct()); 12933 } if (element.hasDailyAmount()) { 12934 composeSimpleQuantity("dailyAmount", element.getDailyAmount()); 12935 } 12936 if (element.hasQuantity()) { 12937 composeSimpleQuantity("quantity", element.getQuantity()); 12938 } 12939 if (element.hasDescriptionElement()) { 12940 composeString("description", element.getDescriptionElement()); 12941 } 12942 composeElementClose(element); 12943 xml.exit(FHIR_NS, name); 12944 } 12945 } 12946 12947 protected void composeClaim(String name, Claim element) throws IOException { 12948 if (element != null) { 12949 composeDomainResourceAttributes(element); 12950 xml.enter(FHIR_NS, name); 12951 composeDomainResourceElements(element); 12952 if (element.hasTypeElement()) 12953 composeEnumeration("type", element.getTypeElement(), new Claim.ClaimTypeEnumFactory()); 12954 if (element.hasIdentifier()) { 12955 for (Identifier e : element.getIdentifier()) 12956 composeIdentifier("identifier", e); 12957 } 12958 if (element.hasRuleset()) { 12959 composeCoding("ruleset", element.getRuleset()); 12960 } 12961 if (element.hasOriginalRuleset()) { 12962 composeCoding("originalRuleset", element.getOriginalRuleset()); 12963 } 12964 if (element.hasCreatedElement()) { 12965 composeDateTime("created", element.getCreatedElement()); 12966 } 12967 if (element.hasTarget()) { 12968 composeReference("target", element.getTarget()); 12969 } 12970 if (element.hasProvider()) { 12971 composeReference("provider", element.getProvider()); 12972 } 12973 if (element.hasOrganization()) { 12974 composeReference("organization", element.getOrganization()); 12975 } 12976 if (element.hasUseElement()) 12977 composeEnumeration("use", element.getUseElement(), new Claim.UseEnumFactory()); 12978 if (element.hasPriority()) { 12979 composeCoding("priority", element.getPriority()); 12980 } 12981 if (element.hasFundsReserve()) { 12982 composeCoding("fundsReserve", element.getFundsReserve()); 12983 } 12984 if (element.hasEnterer()) { 12985 composeReference("enterer", element.getEnterer()); 12986 } 12987 if (element.hasFacility()) { 12988 composeReference("facility", element.getFacility()); 12989 } 12990 if (element.hasPrescription()) { 12991 composeReference("prescription", element.getPrescription()); 12992 } 12993 if (element.hasOriginalPrescription()) { 12994 composeReference("originalPrescription", element.getOriginalPrescription()); 12995 } 12996 if (element.hasPayee()) { 12997 composeClaimPayeeComponent("payee", element.getPayee()); 12998 } 12999 if (element.hasReferral()) { 13000 composeReference("referral", element.getReferral()); 13001 } 13002 if (element.hasDiagnosis()) { 13003 for (Claim.DiagnosisComponent e : element.getDiagnosis()) 13004 composeClaimDiagnosisComponent("diagnosis", e); 13005 } 13006 if (element.hasCondition()) { 13007 for (Coding e : element.getCondition()) 13008 composeCoding("condition", e); 13009 } 13010 if (element.hasPatient()) { 13011 composeReference("patient", element.getPatient()); 13012 } 13013 if (element.hasCoverage()) { 13014 for (Claim.CoverageComponent e : element.getCoverage()) 13015 composeClaimCoverageComponent("coverage", e); 13016 } 13017 if (element.hasException()) { 13018 for (Coding e : element.getException()) 13019 composeCoding("exception", e); 13020 } 13021 if (element.hasSchoolElement()) { 13022 composeString("school", element.getSchoolElement()); 13023 } 13024 if (element.hasAccidentElement()) { 13025 composeDate("accident", element.getAccidentElement()); 13026 } 13027 if (element.hasAccidentType()) { 13028 composeCoding("accidentType", element.getAccidentType()); 13029 } 13030 if (element.hasInterventionException()) { 13031 for (Coding e : element.getInterventionException()) 13032 composeCoding("interventionException", e); 13033 } 13034 if (element.hasItem()) { 13035 for (Claim.ItemsComponent e : element.getItem()) 13036 composeClaimItemsComponent("item", e); 13037 } 13038 if (element.hasAdditionalMaterials()) { 13039 for (Coding e : element.getAdditionalMaterials()) 13040 composeCoding("additionalMaterials", e); 13041 } 13042 if (element.hasMissingTeeth()) { 13043 for (Claim.MissingTeethComponent e : element.getMissingTeeth()) 13044 composeClaimMissingTeethComponent("missingTeeth", e); 13045 } 13046 composeElementClose(element); 13047 xml.exit(FHIR_NS, name); 13048 } 13049 } 13050 13051 protected void composeClaimPayeeComponent(String name, Claim.PayeeComponent element) throws IOException { 13052 if (element != null) { 13053 composeElementAttributes(element); 13054 xml.enter(FHIR_NS, name); 13055 composeBackboneElements(element); 13056 if (element.hasType()) { 13057 composeCoding("type", element.getType()); 13058 } 13059 if (element.hasProvider()) { 13060 composeReference("provider", element.getProvider()); 13061 } 13062 if (element.hasOrganization()) { 13063 composeReference("organization", element.getOrganization()); 13064 } 13065 if (element.hasPerson()) { 13066 composeReference("person", element.getPerson()); 13067 } 13068 composeElementClose(element); 13069 xml.exit(FHIR_NS, name); 13070 } 13071 } 13072 13073 protected void composeClaimDiagnosisComponent(String name, Claim.DiagnosisComponent element) throws IOException { 13074 if (element != null) { 13075 composeElementAttributes(element); 13076 xml.enter(FHIR_NS, name); 13077 composeBackboneElements(element); 13078 if (element.hasSequenceElement()) { 13079 composePositiveInt("sequence", element.getSequenceElement()); 13080 } 13081 if (element.hasDiagnosis()) { 13082 composeCoding("diagnosis", element.getDiagnosis()); 13083 } 13084 composeElementClose(element); 13085 xml.exit(FHIR_NS, name); 13086 } 13087 } 13088 13089 protected void composeClaimCoverageComponent(String name, Claim.CoverageComponent element) throws IOException { 13090 if (element != null) { 13091 composeElementAttributes(element); 13092 xml.enter(FHIR_NS, name); 13093 composeBackboneElements(element); 13094 if (element.hasSequenceElement()) { 13095 composePositiveInt("sequence", element.getSequenceElement()); 13096 } 13097 if (element.hasFocalElement()) { 13098 composeBoolean("focal", element.getFocalElement()); 13099 } 13100 if (element.hasCoverage()) { 13101 composeReference("coverage", element.getCoverage()); 13102 } 13103 if (element.hasBusinessArrangementElement()) { 13104 composeString("businessArrangement", element.getBusinessArrangementElement()); 13105 } 13106 if (element.hasRelationship()) { 13107 composeCoding("relationship", element.getRelationship()); 13108 } 13109 if (element.hasPreAuthRef()) { 13110 for (StringType e : element.getPreAuthRef()) 13111 composeString("preAuthRef", e); 13112 } 13113 if (element.hasClaimResponse()) { 13114 composeReference("claimResponse", element.getClaimResponse()); 13115 } 13116 if (element.hasOriginalRuleset()) { 13117 composeCoding("originalRuleset", element.getOriginalRuleset()); 13118 } 13119 composeElementClose(element); 13120 xml.exit(FHIR_NS, name); 13121 } 13122 } 13123 13124 protected void composeClaimItemsComponent(String name, Claim.ItemsComponent element) throws IOException { 13125 if (element != null) { 13126 composeElementAttributes(element); 13127 xml.enter(FHIR_NS, name); 13128 composeBackboneElements(element); 13129 if (element.hasSequenceElement()) { 13130 composePositiveInt("sequence", element.getSequenceElement()); 13131 } 13132 if (element.hasType()) { 13133 composeCoding("type", element.getType()); 13134 } 13135 if (element.hasProvider()) { 13136 composeReference("provider", element.getProvider()); 13137 } 13138 if (element.hasDiagnosisLinkId()) { 13139 for (PositiveIntType e : element.getDiagnosisLinkId()) 13140 composePositiveInt("diagnosisLinkId", e); 13141 } 13142 if (element.hasService()) { 13143 composeCoding("service", element.getService()); 13144 } 13145 if (element.hasServiceDateElement()) { 13146 composeDate("serviceDate", element.getServiceDateElement()); 13147 } 13148 if (element.hasQuantity()) { 13149 composeSimpleQuantity("quantity", element.getQuantity()); 13150 } 13151 if (element.hasUnitPrice()) { 13152 composeMoney("unitPrice", element.getUnitPrice()); 13153 } 13154 if (element.hasFactorElement()) { 13155 composeDecimal("factor", element.getFactorElement()); 13156 } 13157 if (element.hasPointsElement()) { 13158 composeDecimal("points", element.getPointsElement()); 13159 } 13160 if (element.hasNet()) { 13161 composeMoney("net", element.getNet()); 13162 } 13163 if (element.hasUdi()) { 13164 composeCoding("udi", element.getUdi()); 13165 } 13166 if (element.hasBodySite()) { 13167 composeCoding("bodySite", element.getBodySite()); 13168 } 13169 if (element.hasSubSite()) { 13170 for (Coding e : element.getSubSite()) 13171 composeCoding("subSite", e); 13172 } 13173 if (element.hasModifier()) { 13174 for (Coding e : element.getModifier()) 13175 composeCoding("modifier", e); 13176 } 13177 if (element.hasDetail()) { 13178 for (Claim.DetailComponent e : element.getDetail()) 13179 composeClaimDetailComponent("detail", e); 13180 } 13181 if (element.hasProsthesis()) { 13182 composeClaimProsthesisComponent("prosthesis", element.getProsthesis()); 13183 } 13184 composeElementClose(element); 13185 xml.exit(FHIR_NS, name); 13186 } 13187 } 13188 13189 protected void composeClaimDetailComponent(String name, Claim.DetailComponent element) throws IOException { 13190 if (element != null) { 13191 composeElementAttributes(element); 13192 xml.enter(FHIR_NS, name); 13193 composeBackboneElements(element); 13194 if (element.hasSequenceElement()) { 13195 composePositiveInt("sequence", element.getSequenceElement()); 13196 } 13197 if (element.hasType()) { 13198 composeCoding("type", element.getType()); 13199 } 13200 if (element.hasService()) { 13201 composeCoding("service", element.getService()); 13202 } 13203 if (element.hasQuantity()) { 13204 composeSimpleQuantity("quantity", element.getQuantity()); 13205 } 13206 if (element.hasUnitPrice()) { 13207 composeMoney("unitPrice", element.getUnitPrice()); 13208 } 13209 if (element.hasFactorElement()) { 13210 composeDecimal("factor", element.getFactorElement()); 13211 } 13212 if (element.hasPointsElement()) { 13213 composeDecimal("points", element.getPointsElement()); 13214 } 13215 if (element.hasNet()) { 13216 composeMoney("net", element.getNet()); 13217 } 13218 if (element.hasUdi()) { 13219 composeCoding("udi", element.getUdi()); 13220 } 13221 if (element.hasSubDetail()) { 13222 for (Claim.SubDetailComponent e : element.getSubDetail()) 13223 composeClaimSubDetailComponent("subDetail", e); 13224 } 13225 composeElementClose(element); 13226 xml.exit(FHIR_NS, name); 13227 } 13228 } 13229 13230 protected void composeClaimSubDetailComponent(String name, Claim.SubDetailComponent element) throws IOException { 13231 if (element != null) { 13232 composeElementAttributes(element); 13233 xml.enter(FHIR_NS, name); 13234 composeBackboneElements(element); 13235 if (element.hasSequenceElement()) { 13236 composePositiveInt("sequence", element.getSequenceElement()); 13237 } 13238 if (element.hasType()) { 13239 composeCoding("type", element.getType()); 13240 } 13241 if (element.hasService()) { 13242 composeCoding("service", element.getService()); 13243 } 13244 if (element.hasQuantity()) { 13245 composeSimpleQuantity("quantity", element.getQuantity()); 13246 } 13247 if (element.hasUnitPrice()) { 13248 composeMoney("unitPrice", element.getUnitPrice()); 13249 } 13250 if (element.hasFactorElement()) { 13251 composeDecimal("factor", element.getFactorElement()); 13252 } 13253 if (element.hasPointsElement()) { 13254 composeDecimal("points", element.getPointsElement()); 13255 } 13256 if (element.hasNet()) { 13257 composeMoney("net", element.getNet()); 13258 } 13259 if (element.hasUdi()) { 13260 composeCoding("udi", element.getUdi()); 13261 } 13262 composeElementClose(element); 13263 xml.exit(FHIR_NS, name); 13264 } 13265 } 13266 13267 protected void composeClaimProsthesisComponent(String name, Claim.ProsthesisComponent element) throws IOException { 13268 if (element != null) { 13269 composeElementAttributes(element); 13270 xml.enter(FHIR_NS, name); 13271 composeBackboneElements(element); 13272 if (element.hasInitialElement()) { 13273 composeBoolean("initial", element.getInitialElement()); 13274 } 13275 if (element.hasPriorDateElement()) { 13276 composeDate("priorDate", element.getPriorDateElement()); 13277 } 13278 if (element.hasPriorMaterial()) { 13279 composeCoding("priorMaterial", element.getPriorMaterial()); 13280 } 13281 composeElementClose(element); 13282 xml.exit(FHIR_NS, name); 13283 } 13284 } 13285 13286 protected void composeClaimMissingTeethComponent(String name, Claim.MissingTeethComponent element) throws IOException { 13287 if (element != null) { 13288 composeElementAttributes(element); 13289 xml.enter(FHIR_NS, name); 13290 composeBackboneElements(element); 13291 if (element.hasTooth()) { 13292 composeCoding("tooth", element.getTooth()); 13293 } 13294 if (element.hasReason()) { 13295 composeCoding("reason", element.getReason()); 13296 } 13297 if (element.hasExtractionDateElement()) { 13298 composeDate("extractionDate", element.getExtractionDateElement()); 13299 } 13300 composeElementClose(element); 13301 xml.exit(FHIR_NS, name); 13302 } 13303 } 13304 13305 protected void composeClaimResponse(String name, ClaimResponse element) throws IOException { 13306 if (element != null) { 13307 composeDomainResourceAttributes(element); 13308 xml.enter(FHIR_NS, name); 13309 composeDomainResourceElements(element); 13310 if (element.hasIdentifier()) { 13311 for (Identifier e : element.getIdentifier()) 13312 composeIdentifier("identifier", e); 13313 } 13314 if (element.hasRequest()) { 13315 composeReference("request", element.getRequest()); 13316 } 13317 if (element.hasRuleset()) { 13318 composeCoding("ruleset", element.getRuleset()); 13319 } 13320 if (element.hasOriginalRuleset()) { 13321 composeCoding("originalRuleset", element.getOriginalRuleset()); 13322 } 13323 if (element.hasCreatedElement()) { 13324 composeDateTime("created", element.getCreatedElement()); 13325 } 13326 if (element.hasOrganization()) { 13327 composeReference("organization", element.getOrganization()); 13328 } 13329 if (element.hasRequestProvider()) { 13330 composeReference("requestProvider", element.getRequestProvider()); 13331 } 13332 if (element.hasRequestOrganization()) { 13333 composeReference("requestOrganization", element.getRequestOrganization()); 13334 } 13335 if (element.hasOutcomeElement()) 13336 composeEnumeration("outcome", element.getOutcomeElement(), new Enumerations.RemittanceOutcomeEnumFactory()); 13337 if (element.hasDispositionElement()) { 13338 composeString("disposition", element.getDispositionElement()); 13339 } 13340 if (element.hasPayeeType()) { 13341 composeCoding("payeeType", element.getPayeeType()); 13342 } 13343 if (element.hasItem()) { 13344 for (ClaimResponse.ItemsComponent e : element.getItem()) 13345 composeClaimResponseItemsComponent("item", e); 13346 } 13347 if (element.hasAddItem()) { 13348 for (ClaimResponse.AddedItemComponent e : element.getAddItem()) 13349 composeClaimResponseAddedItemComponent("addItem", e); 13350 } 13351 if (element.hasError()) { 13352 for (ClaimResponse.ErrorsComponent e : element.getError()) 13353 composeClaimResponseErrorsComponent("error", e); 13354 } 13355 if (element.hasTotalCost()) { 13356 composeMoney("totalCost", element.getTotalCost()); 13357 } 13358 if (element.hasUnallocDeductable()) { 13359 composeMoney("unallocDeductable", element.getUnallocDeductable()); 13360 } 13361 if (element.hasTotalBenefit()) { 13362 composeMoney("totalBenefit", element.getTotalBenefit()); 13363 } 13364 if (element.hasPaymentAdjustment()) { 13365 composeMoney("paymentAdjustment", element.getPaymentAdjustment()); 13366 } 13367 if (element.hasPaymentAdjustmentReason()) { 13368 composeCoding("paymentAdjustmentReason", element.getPaymentAdjustmentReason()); 13369 } 13370 if (element.hasPaymentDateElement()) { 13371 composeDate("paymentDate", element.getPaymentDateElement()); 13372 } 13373 if (element.hasPaymentAmount()) { 13374 composeMoney("paymentAmount", element.getPaymentAmount()); 13375 } 13376 if (element.hasPaymentRef()) { 13377 composeIdentifier("paymentRef", element.getPaymentRef()); 13378 } 13379 if (element.hasReserved()) { 13380 composeCoding("reserved", element.getReserved()); 13381 } 13382 if (element.hasForm()) { 13383 composeCoding("form", element.getForm()); 13384 } 13385 if (element.hasNote()) { 13386 for (ClaimResponse.NotesComponent e : element.getNote()) 13387 composeClaimResponseNotesComponent("note", e); 13388 } 13389 if (element.hasCoverage()) { 13390 for (ClaimResponse.CoverageComponent e : element.getCoverage()) 13391 composeClaimResponseCoverageComponent("coverage", e); 13392 } 13393 composeElementClose(element); 13394 xml.exit(FHIR_NS, name); 13395 } 13396 } 13397 13398 protected void composeClaimResponseItemsComponent(String name, ClaimResponse.ItemsComponent element) throws IOException { 13399 if (element != null) { 13400 composeElementAttributes(element); 13401 xml.enter(FHIR_NS, name); 13402 composeBackboneElements(element); 13403 if (element.hasSequenceLinkIdElement()) { 13404 composePositiveInt("sequenceLinkId", element.getSequenceLinkIdElement()); 13405 } 13406 if (element.hasNoteNumber()) { 13407 for (PositiveIntType e : element.getNoteNumber()) 13408 composePositiveInt("noteNumber", e); 13409 } 13410 if (element.hasAdjudication()) { 13411 for (ClaimResponse.ItemAdjudicationComponent e : element.getAdjudication()) 13412 composeClaimResponseItemAdjudicationComponent("adjudication", e); 13413 } 13414 if (element.hasDetail()) { 13415 for (ClaimResponse.ItemDetailComponent e : element.getDetail()) 13416 composeClaimResponseItemDetailComponent("detail", e); 13417 } 13418 composeElementClose(element); 13419 xml.exit(FHIR_NS, name); 13420 } 13421 } 13422 13423 protected void composeClaimResponseItemAdjudicationComponent(String name, ClaimResponse.ItemAdjudicationComponent element) throws IOException { 13424 if (element != null) { 13425 composeElementAttributes(element); 13426 xml.enter(FHIR_NS, name); 13427 composeBackboneElements(element); 13428 if (element.hasCode()) { 13429 composeCoding("code", element.getCode()); 13430 } 13431 if (element.hasAmount()) { 13432 composeMoney("amount", element.getAmount()); 13433 } 13434 if (element.hasValueElement()) { 13435 composeDecimal("value", element.getValueElement()); 13436 } 13437 composeElementClose(element); 13438 xml.exit(FHIR_NS, name); 13439 } 13440 } 13441 13442 protected void composeClaimResponseItemDetailComponent(String name, ClaimResponse.ItemDetailComponent element) throws IOException { 13443 if (element != null) { 13444 composeElementAttributes(element); 13445 xml.enter(FHIR_NS, name); 13446 composeBackboneElements(element); 13447 if (element.hasSequenceLinkIdElement()) { 13448 composePositiveInt("sequenceLinkId", element.getSequenceLinkIdElement()); 13449 } 13450 if (element.hasAdjudication()) { 13451 for (ClaimResponse.DetailAdjudicationComponent e : element.getAdjudication()) 13452 composeClaimResponseDetailAdjudicationComponent("adjudication", e); 13453 } 13454 if (element.hasSubDetail()) { 13455 for (ClaimResponse.SubDetailComponent e : element.getSubDetail()) 13456 composeClaimResponseSubDetailComponent("subDetail", e); 13457 } 13458 composeElementClose(element); 13459 xml.exit(FHIR_NS, name); 13460 } 13461 } 13462 13463 protected void composeClaimResponseDetailAdjudicationComponent(String name, ClaimResponse.DetailAdjudicationComponent element) throws IOException { 13464 if (element != null) { 13465 composeElementAttributes(element); 13466 xml.enter(FHIR_NS, name); 13467 composeBackboneElements(element); 13468 if (element.hasCode()) { 13469 composeCoding("code", element.getCode()); 13470 } 13471 if (element.hasAmount()) { 13472 composeMoney("amount", element.getAmount()); 13473 } 13474 if (element.hasValueElement()) { 13475 composeDecimal("value", element.getValueElement()); 13476 } 13477 composeElementClose(element); 13478 xml.exit(FHIR_NS, name); 13479 } 13480 } 13481 13482 protected void composeClaimResponseSubDetailComponent(String name, ClaimResponse.SubDetailComponent element) throws IOException { 13483 if (element != null) { 13484 composeElementAttributes(element); 13485 xml.enter(FHIR_NS, name); 13486 composeBackboneElements(element); 13487 if (element.hasSequenceLinkIdElement()) { 13488 composePositiveInt("sequenceLinkId", element.getSequenceLinkIdElement()); 13489 } 13490 if (element.hasAdjudication()) { 13491 for (ClaimResponse.SubdetailAdjudicationComponent e : element.getAdjudication()) 13492 composeClaimResponseSubdetailAdjudicationComponent("adjudication", e); 13493 } 13494 composeElementClose(element); 13495 xml.exit(FHIR_NS, name); 13496 } 13497 } 13498 13499 protected void composeClaimResponseSubdetailAdjudicationComponent(String name, ClaimResponse.SubdetailAdjudicationComponent element) throws IOException { 13500 if (element != null) { 13501 composeElementAttributes(element); 13502 xml.enter(FHIR_NS, name); 13503 composeBackboneElements(element); 13504 if (element.hasCode()) { 13505 composeCoding("code", element.getCode()); 13506 } 13507 if (element.hasAmount()) { 13508 composeMoney("amount", element.getAmount()); 13509 } 13510 if (element.hasValueElement()) { 13511 composeDecimal("value", element.getValueElement()); 13512 } 13513 composeElementClose(element); 13514 xml.exit(FHIR_NS, name); 13515 } 13516 } 13517 13518 protected void composeClaimResponseAddedItemComponent(String name, ClaimResponse.AddedItemComponent element) throws IOException { 13519 if (element != null) { 13520 composeElementAttributes(element); 13521 xml.enter(FHIR_NS, name); 13522 composeBackboneElements(element); 13523 if (element.hasSequenceLinkId()) { 13524 for (PositiveIntType e : element.getSequenceLinkId()) 13525 composePositiveInt("sequenceLinkId", e); 13526 } 13527 if (element.hasService()) { 13528 composeCoding("service", element.getService()); 13529 } 13530 if (element.hasFee()) { 13531 composeMoney("fee", element.getFee()); 13532 } 13533 if (element.hasNoteNumberLinkId()) { 13534 for (PositiveIntType e : element.getNoteNumberLinkId()) 13535 composePositiveInt("noteNumberLinkId", e); 13536 } 13537 if (element.hasAdjudication()) { 13538 for (ClaimResponse.AddedItemAdjudicationComponent e : element.getAdjudication()) 13539 composeClaimResponseAddedItemAdjudicationComponent("adjudication", e); 13540 } 13541 if (element.hasDetail()) { 13542 for (ClaimResponse.AddedItemsDetailComponent e : element.getDetail()) 13543 composeClaimResponseAddedItemsDetailComponent("detail", e); 13544 } 13545 composeElementClose(element); 13546 xml.exit(FHIR_NS, name); 13547 } 13548 } 13549 13550 protected void composeClaimResponseAddedItemAdjudicationComponent(String name, ClaimResponse.AddedItemAdjudicationComponent element) throws IOException { 13551 if (element != null) { 13552 composeElementAttributes(element); 13553 xml.enter(FHIR_NS, name); 13554 composeBackboneElements(element); 13555 if (element.hasCode()) { 13556 composeCoding("code", element.getCode()); 13557 } 13558 if (element.hasAmount()) { 13559 composeMoney("amount", element.getAmount()); 13560 } 13561 if (element.hasValueElement()) { 13562 composeDecimal("value", element.getValueElement()); 13563 } 13564 composeElementClose(element); 13565 xml.exit(FHIR_NS, name); 13566 } 13567 } 13568 13569 protected void composeClaimResponseAddedItemsDetailComponent(String name, ClaimResponse.AddedItemsDetailComponent element) throws IOException { 13570 if (element != null) { 13571 composeElementAttributes(element); 13572 xml.enter(FHIR_NS, name); 13573 composeBackboneElements(element); 13574 if (element.hasService()) { 13575 composeCoding("service", element.getService()); 13576 } 13577 if (element.hasFee()) { 13578 composeMoney("fee", element.getFee()); 13579 } 13580 if (element.hasAdjudication()) { 13581 for (ClaimResponse.AddedItemDetailAdjudicationComponent e : element.getAdjudication()) 13582 composeClaimResponseAddedItemDetailAdjudicationComponent("adjudication", e); 13583 } 13584 composeElementClose(element); 13585 xml.exit(FHIR_NS, name); 13586 } 13587 } 13588 13589 protected void composeClaimResponseAddedItemDetailAdjudicationComponent(String name, ClaimResponse.AddedItemDetailAdjudicationComponent element) throws IOException { 13590 if (element != null) { 13591 composeElementAttributes(element); 13592 xml.enter(FHIR_NS, name); 13593 composeBackboneElements(element); 13594 if (element.hasCode()) { 13595 composeCoding("code", element.getCode()); 13596 } 13597 if (element.hasAmount()) { 13598 composeMoney("amount", element.getAmount()); 13599 } 13600 if (element.hasValueElement()) { 13601 composeDecimal("value", element.getValueElement()); 13602 } 13603 composeElementClose(element); 13604 xml.exit(FHIR_NS, name); 13605 } 13606 } 13607 13608 protected void composeClaimResponseErrorsComponent(String name, ClaimResponse.ErrorsComponent element) throws IOException { 13609 if (element != null) { 13610 composeElementAttributes(element); 13611 xml.enter(FHIR_NS, name); 13612 composeBackboneElements(element); 13613 if (element.hasSequenceLinkIdElement()) { 13614 composePositiveInt("sequenceLinkId", element.getSequenceLinkIdElement()); 13615 } 13616 if (element.hasDetailSequenceLinkIdElement()) { 13617 composePositiveInt("detailSequenceLinkId", element.getDetailSequenceLinkIdElement()); 13618 } 13619 if (element.hasSubdetailSequenceLinkIdElement()) { 13620 composePositiveInt("subdetailSequenceLinkId", element.getSubdetailSequenceLinkIdElement()); 13621 } 13622 if (element.hasCode()) { 13623 composeCoding("code", element.getCode()); 13624 } 13625 composeElementClose(element); 13626 xml.exit(FHIR_NS, name); 13627 } 13628 } 13629 13630 protected void composeClaimResponseNotesComponent(String name, ClaimResponse.NotesComponent element) throws IOException { 13631 if (element != null) { 13632 composeElementAttributes(element); 13633 xml.enter(FHIR_NS, name); 13634 composeBackboneElements(element); 13635 if (element.hasNumberElement()) { 13636 composePositiveInt("number", element.getNumberElement()); 13637 } 13638 if (element.hasType()) { 13639 composeCoding("type", element.getType()); 13640 } 13641 if (element.hasTextElement()) { 13642 composeString("text", element.getTextElement()); 13643 } 13644 composeElementClose(element); 13645 xml.exit(FHIR_NS, name); 13646 } 13647 } 13648 13649 protected void composeClaimResponseCoverageComponent(String name, ClaimResponse.CoverageComponent element) throws IOException { 13650 if (element != null) { 13651 composeElementAttributes(element); 13652 xml.enter(FHIR_NS, name); 13653 composeBackboneElements(element); 13654 if (element.hasSequenceElement()) { 13655 composePositiveInt("sequence", element.getSequenceElement()); 13656 } 13657 if (element.hasFocalElement()) { 13658 composeBoolean("focal", element.getFocalElement()); 13659 } 13660 if (element.hasCoverage()) { 13661 composeReference("coverage", element.getCoverage()); 13662 } 13663 if (element.hasBusinessArrangementElement()) { 13664 composeString("businessArrangement", element.getBusinessArrangementElement()); 13665 } 13666 if (element.hasRelationship()) { 13667 composeCoding("relationship", element.getRelationship()); 13668 } 13669 if (element.hasPreAuthRef()) { 13670 for (StringType e : element.getPreAuthRef()) 13671 composeString("preAuthRef", e); 13672 } 13673 if (element.hasClaimResponse()) { 13674 composeReference("claimResponse", element.getClaimResponse()); 13675 } 13676 if (element.hasOriginalRuleset()) { 13677 composeCoding("originalRuleset", element.getOriginalRuleset()); 13678 } 13679 composeElementClose(element); 13680 xml.exit(FHIR_NS, name); 13681 } 13682 } 13683 13684 protected void composeClinicalImpression(String name, ClinicalImpression element) throws IOException { 13685 if (element != null) { 13686 composeDomainResourceAttributes(element); 13687 xml.enter(FHIR_NS, name); 13688 composeDomainResourceElements(element); 13689 if (element.hasPatient()) { 13690 composeReference("patient", element.getPatient()); 13691 } 13692 if (element.hasAssessor()) { 13693 composeReference("assessor", element.getAssessor()); 13694 } 13695 if (element.hasStatusElement()) 13696 composeEnumeration("status", element.getStatusElement(), new ClinicalImpression.ClinicalImpressionStatusEnumFactory()); 13697 if (element.hasDateElement()) { 13698 composeDateTime("date", element.getDateElement()); 13699 } 13700 if (element.hasDescriptionElement()) { 13701 composeString("description", element.getDescriptionElement()); 13702 } 13703 if (element.hasPrevious()) { 13704 composeReference("previous", element.getPrevious()); 13705 } 13706 if (element.hasProblem()) { 13707 for (Reference e : element.getProblem()) 13708 composeReference("problem", e); 13709 } 13710 if (element.hasTrigger()) { 13711 composeType("trigger", element.getTrigger()); 13712 } if (element.hasInvestigations()) { 13713 for (ClinicalImpression.ClinicalImpressionInvestigationsComponent e : element.getInvestigations()) 13714 composeClinicalImpressionClinicalImpressionInvestigationsComponent("investigations", e); 13715 } 13716 if (element.hasProtocolElement()) { 13717 composeUri("protocol", element.getProtocolElement()); 13718 } 13719 if (element.hasSummaryElement()) { 13720 composeString("summary", element.getSummaryElement()); 13721 } 13722 if (element.hasFinding()) { 13723 for (ClinicalImpression.ClinicalImpressionFindingComponent e : element.getFinding()) 13724 composeClinicalImpressionClinicalImpressionFindingComponent("finding", e); 13725 } 13726 if (element.hasResolved()) { 13727 for (CodeableConcept e : element.getResolved()) 13728 composeCodeableConcept("resolved", e); 13729 } 13730 if (element.hasRuledOut()) { 13731 for (ClinicalImpression.ClinicalImpressionRuledOutComponent e : element.getRuledOut()) 13732 composeClinicalImpressionClinicalImpressionRuledOutComponent("ruledOut", e); 13733 } 13734 if (element.hasPrognosisElement()) { 13735 composeString("prognosis", element.getPrognosisElement()); 13736 } 13737 if (element.hasPlan()) { 13738 for (Reference e : element.getPlan()) 13739 composeReference("plan", e); 13740 } 13741 if (element.hasAction()) { 13742 for (Reference e : element.getAction()) 13743 composeReference("action", e); 13744 } 13745 composeElementClose(element); 13746 xml.exit(FHIR_NS, name); 13747 } 13748 } 13749 13750 protected void composeClinicalImpressionClinicalImpressionInvestigationsComponent(String name, ClinicalImpression.ClinicalImpressionInvestigationsComponent element) throws IOException { 13751 if (element != null) { 13752 composeElementAttributes(element); 13753 xml.enter(FHIR_NS, name); 13754 composeBackboneElements(element); 13755 if (element.hasCode()) { 13756 composeCodeableConcept("code", element.getCode()); 13757 } 13758 if (element.hasItem()) { 13759 for (Reference e : element.getItem()) 13760 composeReference("item", e); 13761 } 13762 composeElementClose(element); 13763 xml.exit(FHIR_NS, name); 13764 } 13765 } 13766 13767 protected void composeClinicalImpressionClinicalImpressionFindingComponent(String name, ClinicalImpression.ClinicalImpressionFindingComponent element) throws IOException { 13768 if (element != null) { 13769 composeElementAttributes(element); 13770 xml.enter(FHIR_NS, name); 13771 composeBackboneElements(element); 13772 if (element.hasItem()) { 13773 composeCodeableConcept("item", element.getItem()); 13774 } 13775 if (element.hasCauseElement()) { 13776 composeString("cause", element.getCauseElement()); 13777 } 13778 composeElementClose(element); 13779 xml.exit(FHIR_NS, name); 13780 } 13781 } 13782 13783 protected void composeClinicalImpressionClinicalImpressionRuledOutComponent(String name, ClinicalImpression.ClinicalImpressionRuledOutComponent element) throws IOException { 13784 if (element != null) { 13785 composeElementAttributes(element); 13786 xml.enter(FHIR_NS, name); 13787 composeBackboneElements(element); 13788 if (element.hasItem()) { 13789 composeCodeableConcept("item", element.getItem()); 13790 } 13791 if (element.hasReasonElement()) { 13792 composeString("reason", element.getReasonElement()); 13793 } 13794 composeElementClose(element); 13795 xml.exit(FHIR_NS, name); 13796 } 13797 } 13798 13799 protected void composeCommunication(String name, Communication element) throws IOException { 13800 if (element != null) { 13801 composeDomainResourceAttributes(element); 13802 xml.enter(FHIR_NS, name); 13803 composeDomainResourceElements(element); 13804 if (element.hasIdentifier()) { 13805 for (Identifier e : element.getIdentifier()) 13806 composeIdentifier("identifier", e); 13807 } 13808 if (element.hasCategory()) { 13809 composeCodeableConcept("category", element.getCategory()); 13810 } 13811 if (element.hasSender()) { 13812 composeReference("sender", element.getSender()); 13813 } 13814 if (element.hasRecipient()) { 13815 for (Reference e : element.getRecipient()) 13816 composeReference("recipient", e); 13817 } 13818 if (element.hasPayload()) { 13819 for (Communication.CommunicationPayloadComponent e : element.getPayload()) 13820 composeCommunicationCommunicationPayloadComponent("payload", e); 13821 } 13822 if (element.hasMedium()) { 13823 for (CodeableConcept e : element.getMedium()) 13824 composeCodeableConcept("medium", e); 13825 } 13826 if (element.hasStatusElement()) 13827 composeEnumeration("status", element.getStatusElement(), new Communication.CommunicationStatusEnumFactory()); 13828 if (element.hasEncounter()) { 13829 composeReference("encounter", element.getEncounter()); 13830 } 13831 if (element.hasSentElement()) { 13832 composeDateTime("sent", element.getSentElement()); 13833 } 13834 if (element.hasReceivedElement()) { 13835 composeDateTime("received", element.getReceivedElement()); 13836 } 13837 if (element.hasReason()) { 13838 for (CodeableConcept e : element.getReason()) 13839 composeCodeableConcept("reason", e); 13840 } 13841 if (element.hasSubject()) { 13842 composeReference("subject", element.getSubject()); 13843 } 13844 if (element.hasRequestDetail()) { 13845 composeReference("requestDetail", element.getRequestDetail()); 13846 } 13847 composeElementClose(element); 13848 xml.exit(FHIR_NS, name); 13849 } 13850 } 13851 13852 protected void composeCommunicationCommunicationPayloadComponent(String name, Communication.CommunicationPayloadComponent element) throws IOException { 13853 if (element != null) { 13854 composeElementAttributes(element); 13855 xml.enter(FHIR_NS, name); 13856 composeBackboneElements(element); 13857 if (element.hasContent()) { 13858 composeType("content", element.getContent()); 13859 } composeElementClose(element); 13860 xml.exit(FHIR_NS, name); 13861 } 13862 } 13863 13864 protected void composeCommunicationRequest(String name, CommunicationRequest element) throws IOException { 13865 if (element != null) { 13866 composeDomainResourceAttributes(element); 13867 xml.enter(FHIR_NS, name); 13868 composeDomainResourceElements(element); 13869 if (element.hasIdentifier()) { 13870 for (Identifier e : element.getIdentifier()) 13871 composeIdentifier("identifier", e); 13872 } 13873 if (element.hasCategory()) { 13874 composeCodeableConcept("category", element.getCategory()); 13875 } 13876 if (element.hasSender()) { 13877 composeReference("sender", element.getSender()); 13878 } 13879 if (element.hasRecipient()) { 13880 for (Reference e : element.getRecipient()) 13881 composeReference("recipient", e); 13882 } 13883 if (element.hasPayload()) { 13884 for (CommunicationRequest.CommunicationRequestPayloadComponent e : element.getPayload()) 13885 composeCommunicationRequestCommunicationRequestPayloadComponent("payload", e); 13886 } 13887 if (element.hasMedium()) { 13888 for (CodeableConcept e : element.getMedium()) 13889 composeCodeableConcept("medium", e); 13890 } 13891 if (element.hasRequester()) { 13892 composeReference("requester", element.getRequester()); 13893 } 13894 if (element.hasStatusElement()) 13895 composeEnumeration("status", element.getStatusElement(), new CommunicationRequest.CommunicationRequestStatusEnumFactory()); 13896 if (element.hasEncounter()) { 13897 composeReference("encounter", element.getEncounter()); 13898 } 13899 if (element.hasScheduled()) { 13900 composeType("scheduled", element.getScheduled()); 13901 } if (element.hasReason()) { 13902 for (CodeableConcept e : element.getReason()) 13903 composeCodeableConcept("reason", e); 13904 } 13905 if (element.hasRequestedOnElement()) { 13906 composeDateTime("requestedOn", element.getRequestedOnElement()); 13907 } 13908 if (element.hasSubject()) { 13909 composeReference("subject", element.getSubject()); 13910 } 13911 if (element.hasPriority()) { 13912 composeCodeableConcept("priority", element.getPriority()); 13913 } 13914 composeElementClose(element); 13915 xml.exit(FHIR_NS, name); 13916 } 13917 } 13918 13919 protected void composeCommunicationRequestCommunicationRequestPayloadComponent(String name, CommunicationRequest.CommunicationRequestPayloadComponent element) throws IOException { 13920 if (element != null) { 13921 composeElementAttributes(element); 13922 xml.enter(FHIR_NS, name); 13923 composeBackboneElements(element); 13924 if (element.hasContent()) { 13925 composeType("content", element.getContent()); 13926 } composeElementClose(element); 13927 xml.exit(FHIR_NS, name); 13928 } 13929 } 13930 13931 protected void composeComposition(String name, Composition element) throws IOException { 13932 if (element != null) { 13933 composeDomainResourceAttributes(element); 13934 xml.enter(FHIR_NS, name); 13935 composeDomainResourceElements(element); 13936 if (element.hasIdentifier()) { 13937 composeIdentifier("identifier", element.getIdentifier()); 13938 } 13939 if (element.hasDateElement()) { 13940 composeDateTime("date", element.getDateElement()); 13941 } 13942 if (element.hasType()) { 13943 composeCodeableConcept("type", element.getType()); 13944 } 13945 if (element.hasClass_()) { 13946 composeCodeableConcept("class", element.getClass_()); 13947 } 13948 if (element.hasTitleElement()) { 13949 composeString("title", element.getTitleElement()); 13950 } 13951 if (element.hasStatusElement()) 13952 composeEnumeration("status", element.getStatusElement(), new Composition.CompositionStatusEnumFactory()); 13953 if (element.hasConfidentialityElement()) { 13954 composeCode("confidentiality", element.getConfidentialityElement()); 13955 } 13956 if (element.hasSubject()) { 13957 composeReference("subject", element.getSubject()); 13958 } 13959 if (element.hasAuthor()) { 13960 for (Reference e : element.getAuthor()) 13961 composeReference("author", e); 13962 } 13963 if (element.hasAttester()) { 13964 for (Composition.CompositionAttesterComponent e : element.getAttester()) 13965 composeCompositionCompositionAttesterComponent("attester", e); 13966 } 13967 if (element.hasCustodian()) { 13968 composeReference("custodian", element.getCustodian()); 13969 } 13970 if (element.hasEvent()) { 13971 for (Composition.CompositionEventComponent e : element.getEvent()) 13972 composeCompositionCompositionEventComponent("event", e); 13973 } 13974 if (element.hasEncounter()) { 13975 composeReference("encounter", element.getEncounter()); 13976 } 13977 if (element.hasSection()) { 13978 for (Composition.SectionComponent e : element.getSection()) 13979 composeCompositionSectionComponent("section", e); 13980 } 13981 composeElementClose(element); 13982 xml.exit(FHIR_NS, name); 13983 } 13984 } 13985 13986 protected void composeCompositionCompositionAttesterComponent(String name, Composition.CompositionAttesterComponent element) throws IOException { 13987 if (element != null) { 13988 composeElementAttributes(element); 13989 xml.enter(FHIR_NS, name); 13990 composeBackboneElements(element); 13991 if (element.hasMode()) 13992 for (Enumeration<Composition.CompositionAttestationMode> e : element.getMode()) 13993 composeEnumeration("mode", e, new Composition.CompositionAttestationModeEnumFactory()); 13994 if (element.hasTimeElement()) { 13995 composeDateTime("time", element.getTimeElement()); 13996 } 13997 if (element.hasParty()) { 13998 composeReference("party", element.getParty()); 13999 } 14000 composeElementClose(element); 14001 xml.exit(FHIR_NS, name); 14002 } 14003 } 14004 14005 protected void composeCompositionCompositionEventComponent(String name, Composition.CompositionEventComponent element) throws IOException { 14006 if (element != null) { 14007 composeElementAttributes(element); 14008 xml.enter(FHIR_NS, name); 14009 composeBackboneElements(element); 14010 if (element.hasCode()) { 14011 for (CodeableConcept e : element.getCode()) 14012 composeCodeableConcept("code", e); 14013 } 14014 if (element.hasPeriod()) { 14015 composePeriod("period", element.getPeriod()); 14016 } 14017 if (element.hasDetail()) { 14018 for (Reference e : element.getDetail()) 14019 composeReference("detail", e); 14020 } 14021 composeElementClose(element); 14022 xml.exit(FHIR_NS, name); 14023 } 14024 } 14025 14026 protected void composeCompositionSectionComponent(String name, Composition.SectionComponent element) throws IOException { 14027 if (element != null) { 14028 composeElementAttributes(element); 14029 xml.enter(FHIR_NS, name); 14030 composeBackboneElements(element); 14031 if (element.hasTitleElement()) { 14032 composeString("title", element.getTitleElement()); 14033 } 14034 if (element.hasCode()) { 14035 composeCodeableConcept("code", element.getCode()); 14036 } 14037 if (element.hasText()) { 14038 composeNarrative("text", element.getText()); 14039 } 14040 if (element.hasModeElement()) { 14041 composeCode("mode", element.getModeElement()); 14042 } 14043 if (element.hasOrderedBy()) { 14044 composeCodeableConcept("orderedBy", element.getOrderedBy()); 14045 } 14046 if (element.hasEntry()) { 14047 for (Reference e : element.getEntry()) 14048 composeReference("entry", e); 14049 } 14050 if (element.hasEmptyReason()) { 14051 composeCodeableConcept("emptyReason", element.getEmptyReason()); 14052 } 14053 if (element.hasSection()) { 14054 for (Composition.SectionComponent e : element.getSection()) 14055 composeCompositionSectionComponent("section", e); 14056 } 14057 composeElementClose(element); 14058 xml.exit(FHIR_NS, name); 14059 } 14060 } 14061 14062 protected void composeConceptMap(String name, ConceptMap element) throws IOException { 14063 if (element != null) { 14064 composeDomainResourceAttributes(element); 14065 xml.enter(FHIR_NS, name); 14066 composeDomainResourceElements(element); 14067 if (element.hasUrlElement()) { 14068 composeUri("url", element.getUrlElement()); 14069 } 14070 if (element.hasIdentifier()) { 14071 composeIdentifier("identifier", element.getIdentifier()); 14072 } 14073 if (element.hasVersionElement()) { 14074 composeString("version", element.getVersionElement()); 14075 } 14076 if (element.hasNameElement()) { 14077 composeString("name", element.getNameElement()); 14078 } 14079 if (element.hasStatusElement()) 14080 composeEnumeration("status", element.getStatusElement(), new Enumerations.ConformanceResourceStatusEnumFactory()); 14081 if (element.hasExperimentalElement()) { 14082 composeBoolean("experimental", element.getExperimentalElement()); 14083 } 14084 if (element.hasPublisherElement()) { 14085 composeString("publisher", element.getPublisherElement()); 14086 } 14087 if (element.hasContact()) { 14088 for (ConceptMap.ConceptMapContactComponent e : element.getContact()) 14089 composeConceptMapConceptMapContactComponent("contact", e); 14090 } 14091 if (element.hasDateElement()) { 14092 composeDateTime("date", element.getDateElement()); 14093 } 14094 if (element.hasDescriptionElement()) { 14095 composeString("description", element.getDescriptionElement()); 14096 } 14097 if (element.hasUseContext()) { 14098 for (CodeableConcept e : element.getUseContext()) 14099 composeCodeableConcept("useContext", e); 14100 } 14101 if (element.hasRequirementsElement()) { 14102 composeString("requirements", element.getRequirementsElement()); 14103 } 14104 if (element.hasCopyrightElement()) { 14105 composeString("copyright", element.getCopyrightElement()); 14106 } 14107 if (element.hasSource()) { 14108 composeType("source", element.getSource()); 14109 } if (element.hasTarget()) { 14110 composeType("target", element.getTarget()); 14111 } if (element.hasElement()) { 14112 for (ConceptMap.SourceElementComponent e : element.getElement()) 14113 composeConceptMapSourceElementComponent("element", e); 14114 } 14115 composeElementClose(element); 14116 xml.exit(FHIR_NS, name); 14117 } 14118 } 14119 14120 protected void composeConceptMapConceptMapContactComponent(String name, ConceptMap.ConceptMapContactComponent element) throws IOException { 14121 if (element != null) { 14122 composeElementAttributes(element); 14123 xml.enter(FHIR_NS, name); 14124 composeBackboneElements(element); 14125 if (element.hasNameElement()) { 14126 composeString("name", element.getNameElement()); 14127 } 14128 if (element.hasTelecom()) { 14129 for (ContactPoint e : element.getTelecom()) 14130 composeContactPoint("telecom", e); 14131 } 14132 composeElementClose(element); 14133 xml.exit(FHIR_NS, name); 14134 } 14135 } 14136 14137 protected void composeConceptMapSourceElementComponent(String name, ConceptMap.SourceElementComponent element) throws IOException { 14138 if (element != null) { 14139 composeElementAttributes(element); 14140 xml.enter(FHIR_NS, name); 14141 composeBackboneElements(element); 14142 if (element.hasCodeSystemElement()) { 14143 composeUri("codeSystem", element.getCodeSystemElement()); 14144 } 14145 if (element.hasCodeElement()) { 14146 composeCode("code", element.getCodeElement()); 14147 } 14148 if (element.hasTarget()) { 14149 for (ConceptMap.TargetElementComponent e : element.getTarget()) 14150 composeConceptMapTargetElementComponent("target", e); 14151 } 14152 composeElementClose(element); 14153 xml.exit(FHIR_NS, name); 14154 } 14155 } 14156 14157 protected void composeConceptMapTargetElementComponent(String name, ConceptMap.TargetElementComponent element) throws IOException { 14158 if (element != null) { 14159 composeElementAttributes(element); 14160 xml.enter(FHIR_NS, name); 14161 composeBackboneElements(element); 14162 if (element.hasCodeSystemElement()) { 14163 composeUri("codeSystem", element.getCodeSystemElement()); 14164 } 14165 if (element.hasCodeElement()) { 14166 composeCode("code", element.getCodeElement()); 14167 } 14168 if (element.hasEquivalenceElement()) 14169 composeEnumeration("equivalence", element.getEquivalenceElement(), new Enumerations.ConceptMapEquivalenceEnumFactory()); 14170 if (element.hasCommentsElement()) { 14171 composeString("comments", element.getCommentsElement()); 14172 } 14173 if (element.hasDependsOn()) { 14174 for (ConceptMap.OtherElementComponent e : element.getDependsOn()) 14175 composeConceptMapOtherElementComponent("dependsOn", e); 14176 } 14177 if (element.hasProduct()) { 14178 for (ConceptMap.OtherElementComponent e : element.getProduct()) 14179 composeConceptMapOtherElementComponent("product", e); 14180 } 14181 composeElementClose(element); 14182 xml.exit(FHIR_NS, name); 14183 } 14184 } 14185 14186 protected void composeConceptMapOtherElementComponent(String name, ConceptMap.OtherElementComponent element) throws IOException { 14187 if (element != null) { 14188 composeElementAttributes(element); 14189 xml.enter(FHIR_NS, name); 14190 composeBackboneElements(element); 14191 if (element.hasElementElement()) { 14192 composeUri("element", element.getElementElement()); 14193 } 14194 if (element.hasCodeSystemElement()) { 14195 composeUri("codeSystem", element.getCodeSystemElement()); 14196 } 14197 if (element.hasCodeElement()) { 14198 composeString("code", element.getCodeElement()); 14199 } 14200 composeElementClose(element); 14201 xml.exit(FHIR_NS, name); 14202 } 14203 } 14204 14205 protected void composeCondition(String name, Condition element) throws IOException { 14206 if (element != null) { 14207 composeDomainResourceAttributes(element); 14208 xml.enter(FHIR_NS, name); 14209 composeDomainResourceElements(element); 14210 if (element.hasIdentifier()) { 14211 for (Identifier e : element.getIdentifier()) 14212 composeIdentifier("identifier", e); 14213 } 14214 if (element.hasPatient()) { 14215 composeReference("patient", element.getPatient()); 14216 } 14217 if (element.hasEncounter()) { 14218 composeReference("encounter", element.getEncounter()); 14219 } 14220 if (element.hasAsserter()) { 14221 composeReference("asserter", element.getAsserter()); 14222 } 14223 if (element.hasDateRecordedElement()) { 14224 composeDate("dateRecorded", element.getDateRecordedElement()); 14225 } 14226 if (element.hasCode()) { 14227 composeCodeableConcept("code", element.getCode()); 14228 } 14229 if (element.hasCategory()) { 14230 composeCodeableConcept("category", element.getCategory()); 14231 } 14232 if (element.hasClinicalStatusElement()) { 14233 composeCode("clinicalStatus", element.getClinicalStatusElement()); 14234 } 14235 if (element.hasVerificationStatusElement()) 14236 composeEnumeration("verificationStatus", element.getVerificationStatusElement(), new Condition.ConditionVerificationStatusEnumFactory()); 14237 if (element.hasSeverity()) { 14238 composeCodeableConcept("severity", element.getSeverity()); 14239 } 14240 if (element.hasOnset()) { 14241 composeType("onset", element.getOnset()); 14242 } if (element.hasAbatement()) { 14243 composeType("abatement", element.getAbatement()); 14244 } if (element.hasStage()) { 14245 composeConditionConditionStageComponent("stage", element.getStage()); 14246 } 14247 if (element.hasEvidence()) { 14248 for (Condition.ConditionEvidenceComponent e : element.getEvidence()) 14249 composeConditionConditionEvidenceComponent("evidence", e); 14250 } 14251 if (element.hasBodySite()) { 14252 for (CodeableConcept e : element.getBodySite()) 14253 composeCodeableConcept("bodySite", e); 14254 } 14255 if (element.hasNotesElement()) { 14256 composeString("notes", element.getNotesElement()); 14257 } 14258 composeElementClose(element); 14259 xml.exit(FHIR_NS, name); 14260 } 14261 } 14262 14263 protected void composeConditionConditionStageComponent(String name, Condition.ConditionStageComponent element) throws IOException { 14264 if (element != null) { 14265 composeElementAttributes(element); 14266 xml.enter(FHIR_NS, name); 14267 composeBackboneElements(element); 14268 if (element.hasSummary()) { 14269 composeCodeableConcept("summary", element.getSummary()); 14270 } 14271 if (element.hasAssessment()) { 14272 for (Reference e : element.getAssessment()) 14273 composeReference("assessment", e); 14274 } 14275 composeElementClose(element); 14276 xml.exit(FHIR_NS, name); 14277 } 14278 } 14279 14280 protected void composeConditionConditionEvidenceComponent(String name, Condition.ConditionEvidenceComponent element) throws IOException { 14281 if (element != null) { 14282 composeElementAttributes(element); 14283 xml.enter(FHIR_NS, name); 14284 composeBackboneElements(element); 14285 if (element.hasCode()) { 14286 composeCodeableConcept("code", element.getCode()); 14287 } 14288 if (element.hasDetail()) { 14289 for (Reference e : element.getDetail()) 14290 composeReference("detail", e); 14291 } 14292 composeElementClose(element); 14293 xml.exit(FHIR_NS, name); 14294 } 14295 } 14296 14297 protected void composeConformance(String name, Conformance element) throws IOException { 14298 if (element != null) { 14299 composeDomainResourceAttributes(element); 14300 xml.enter(FHIR_NS, name); 14301 composeDomainResourceElements(element); 14302 if (element.hasUrlElement()) { 14303 composeUri("url", element.getUrlElement()); 14304 } 14305 if (element.hasVersionElement()) { 14306 composeString("version", element.getVersionElement()); 14307 } 14308 if (element.hasNameElement()) { 14309 composeString("name", element.getNameElement()); 14310 } 14311 if (element.hasStatusElement()) 14312 composeEnumeration("status", element.getStatusElement(), new Enumerations.ConformanceResourceStatusEnumFactory()); 14313 if (element.hasExperimentalElement()) { 14314 composeBoolean("experimental", element.getExperimentalElement()); 14315 } 14316 if (element.hasPublisherElement()) { 14317 composeString("publisher", element.getPublisherElement()); 14318 } 14319 if (element.hasContact()) { 14320 for (Conformance.ConformanceContactComponent e : element.getContact()) 14321 composeConformanceConformanceContactComponent("contact", e); 14322 } 14323 if (element.hasDateElement()) { 14324 composeDateTime("date", element.getDateElement()); 14325 } 14326 if (element.hasDescriptionElement()) { 14327 composeString("description", element.getDescriptionElement()); 14328 } 14329 if (element.hasRequirementsElement()) { 14330 composeString("requirements", element.getRequirementsElement()); 14331 } 14332 if (element.hasCopyrightElement()) { 14333 composeString("copyright", element.getCopyrightElement()); 14334 } 14335 if (element.hasKindElement()) 14336 composeEnumeration("kind", element.getKindElement(), new Conformance.ConformanceStatementKindEnumFactory()); 14337 if (element.hasSoftware()) { 14338 composeConformanceConformanceSoftwareComponent("software", element.getSoftware()); 14339 } 14340 if (element.hasImplementation()) { 14341 composeConformanceConformanceImplementationComponent("implementation", element.getImplementation()); 14342 } 14343 if (element.hasFhirVersionElement()) { 14344 composeId("fhirVersion", element.getFhirVersionElement()); 14345 } 14346 if (element.hasAcceptUnknownElement()) 14347 composeEnumeration("acceptUnknown", element.getAcceptUnknownElement(), new Conformance.UnknownContentCodeEnumFactory()); 14348 if (element.hasFormat()) { 14349 for (CodeType e : element.getFormat()) 14350 composeCode("format", e); 14351 } 14352 if (element.hasProfile()) { 14353 for (Reference e : element.getProfile()) 14354 composeReference("profile", e); 14355 } 14356 if (element.hasRest()) { 14357 for (Conformance.ConformanceRestComponent e : element.getRest()) 14358 composeConformanceConformanceRestComponent("rest", e); 14359 } 14360 if (element.hasMessaging()) { 14361 for (Conformance.ConformanceMessagingComponent e : element.getMessaging()) 14362 composeConformanceConformanceMessagingComponent("messaging", e); 14363 } 14364 if (element.hasDocument()) { 14365 for (Conformance.ConformanceDocumentComponent e : element.getDocument()) 14366 composeConformanceConformanceDocumentComponent("document", e); 14367 } 14368 composeElementClose(element); 14369 xml.exit(FHIR_NS, name); 14370 } 14371 } 14372 14373 protected void composeConformanceConformanceContactComponent(String name, Conformance.ConformanceContactComponent element) throws IOException { 14374 if (element != null) { 14375 composeElementAttributes(element); 14376 xml.enter(FHIR_NS, name); 14377 composeBackboneElements(element); 14378 if (element.hasNameElement()) { 14379 composeString("name", element.getNameElement()); 14380 } 14381 if (element.hasTelecom()) { 14382 for (ContactPoint e : element.getTelecom()) 14383 composeContactPoint("telecom", e); 14384 } 14385 composeElementClose(element); 14386 xml.exit(FHIR_NS, name); 14387 } 14388 } 14389 14390 protected void composeConformanceConformanceSoftwareComponent(String name, Conformance.ConformanceSoftwareComponent element) throws IOException { 14391 if (element != null) { 14392 composeElementAttributes(element); 14393 xml.enter(FHIR_NS, name); 14394 composeBackboneElements(element); 14395 if (element.hasNameElement()) { 14396 composeString("name", element.getNameElement()); 14397 } 14398 if (element.hasVersionElement()) { 14399 composeString("version", element.getVersionElement()); 14400 } 14401 if (element.hasReleaseDateElement()) { 14402 composeDateTime("releaseDate", element.getReleaseDateElement()); 14403 } 14404 composeElementClose(element); 14405 xml.exit(FHIR_NS, name); 14406 } 14407 } 14408 14409 protected void composeConformanceConformanceImplementationComponent(String name, Conformance.ConformanceImplementationComponent element) throws IOException { 14410 if (element != null) { 14411 composeElementAttributes(element); 14412 xml.enter(FHIR_NS, name); 14413 composeBackboneElements(element); 14414 if (element.hasDescriptionElement()) { 14415 composeString("description", element.getDescriptionElement()); 14416 } 14417 if (element.hasUrlElement()) { 14418 composeUri("url", element.getUrlElement()); 14419 } 14420 composeElementClose(element); 14421 xml.exit(FHIR_NS, name); 14422 } 14423 } 14424 14425 protected void composeConformanceConformanceRestComponent(String name, Conformance.ConformanceRestComponent element) throws IOException { 14426 if (element != null) { 14427 composeElementAttributes(element); 14428 xml.enter(FHIR_NS, name); 14429 composeBackboneElements(element); 14430 if (element.hasModeElement()) 14431 composeEnumeration("mode", element.getModeElement(), new Conformance.RestfulConformanceModeEnumFactory()); 14432 if (element.hasDocumentationElement()) { 14433 composeString("documentation", element.getDocumentationElement()); 14434 } 14435 if (element.hasSecurity()) { 14436 composeConformanceConformanceRestSecurityComponent("security", element.getSecurity()); 14437 } 14438 if (element.hasResource()) { 14439 for (Conformance.ConformanceRestResourceComponent e : element.getResource()) 14440 composeConformanceConformanceRestResourceComponent("resource", e); 14441 } 14442 if (element.hasInteraction()) { 14443 for (Conformance.SystemInteractionComponent e : element.getInteraction()) 14444 composeConformanceSystemInteractionComponent("interaction", e); 14445 } 14446 if (element.hasTransactionModeElement()) 14447 composeEnumeration("transactionMode", element.getTransactionModeElement(), new Conformance.TransactionModeEnumFactory()); 14448 if (element.hasSearchParam()) { 14449 for (Conformance.ConformanceRestResourceSearchParamComponent e : element.getSearchParam()) 14450 composeConformanceConformanceRestResourceSearchParamComponent("searchParam", e); 14451 } 14452 if (element.hasOperation()) { 14453 for (Conformance.ConformanceRestOperationComponent e : element.getOperation()) 14454 composeConformanceConformanceRestOperationComponent("operation", e); 14455 } 14456 if (element.hasCompartment()) { 14457 for (UriType e : element.getCompartment()) 14458 composeUri("compartment", e); 14459 } 14460 composeElementClose(element); 14461 xml.exit(FHIR_NS, name); 14462 } 14463 } 14464 14465 protected void composeConformanceConformanceRestSecurityComponent(String name, Conformance.ConformanceRestSecurityComponent element) throws IOException { 14466 if (element != null) { 14467 composeElementAttributes(element); 14468 xml.enter(FHIR_NS, name); 14469 composeBackboneElements(element); 14470 if (element.hasCorsElement()) { 14471 composeBoolean("cors", element.getCorsElement()); 14472 } 14473 if (element.hasService()) { 14474 for (CodeableConcept e : element.getService()) 14475 composeCodeableConcept("service", e); 14476 } 14477 if (element.hasDescriptionElement()) { 14478 composeString("description", element.getDescriptionElement()); 14479 } 14480 if (element.hasCertificate()) { 14481 for (Conformance.ConformanceRestSecurityCertificateComponent e : element.getCertificate()) 14482 composeConformanceConformanceRestSecurityCertificateComponent("certificate", e); 14483 } 14484 composeElementClose(element); 14485 xml.exit(FHIR_NS, name); 14486 } 14487 } 14488 14489 protected void composeConformanceConformanceRestSecurityCertificateComponent(String name, Conformance.ConformanceRestSecurityCertificateComponent element) throws IOException { 14490 if (element != null) { 14491 composeElementAttributes(element); 14492 xml.enter(FHIR_NS, name); 14493 composeBackboneElements(element); 14494 if (element.hasTypeElement()) { 14495 composeCode("type", element.getTypeElement()); 14496 } 14497 if (element.hasBlobElement()) { 14498 composeBase64Binary("blob", element.getBlobElement()); 14499 } 14500 composeElementClose(element); 14501 xml.exit(FHIR_NS, name); 14502 } 14503 } 14504 14505 protected void composeConformanceConformanceRestResourceComponent(String name, Conformance.ConformanceRestResourceComponent element) throws IOException { 14506 if (element != null) { 14507 composeElementAttributes(element); 14508 xml.enter(FHIR_NS, name); 14509 composeBackboneElements(element); 14510 if (element.hasTypeElement()) { 14511 composeCode("type", element.getTypeElement()); 14512 } 14513 if (element.hasProfile()) { 14514 composeReference("profile", element.getProfile()); 14515 } 14516 if (element.hasInteraction()) { 14517 for (Conformance.ResourceInteractionComponent e : element.getInteraction()) 14518 composeConformanceResourceInteractionComponent("interaction", e); 14519 } 14520 if (element.hasVersioningElement()) 14521 composeEnumeration("versioning", element.getVersioningElement(), new Conformance.ResourceVersionPolicyEnumFactory()); 14522 if (element.hasReadHistoryElement()) { 14523 composeBoolean("readHistory", element.getReadHistoryElement()); 14524 } 14525 if (element.hasUpdateCreateElement()) { 14526 composeBoolean("updateCreate", element.getUpdateCreateElement()); 14527 } 14528 if (element.hasConditionalCreateElement()) { 14529 composeBoolean("conditionalCreate", element.getConditionalCreateElement()); 14530 } 14531 if (element.hasConditionalUpdateElement()) { 14532 composeBoolean("conditionalUpdate", element.getConditionalUpdateElement()); 14533 } 14534 if (element.hasConditionalDeleteElement()) 14535 composeEnumeration("conditionalDelete", element.getConditionalDeleteElement(), new Conformance.ConditionalDeleteStatusEnumFactory()); 14536 if (element.hasSearchInclude()) { 14537 for (StringType e : element.getSearchInclude()) 14538 composeString("searchInclude", e); 14539 } 14540 if (element.hasSearchRevInclude()) { 14541 for (StringType e : element.getSearchRevInclude()) 14542 composeString("searchRevInclude", e); 14543 } 14544 if (element.hasSearchParam()) { 14545 for (Conformance.ConformanceRestResourceSearchParamComponent e : element.getSearchParam()) 14546 composeConformanceConformanceRestResourceSearchParamComponent("searchParam", e); 14547 } 14548 composeElementClose(element); 14549 xml.exit(FHIR_NS, name); 14550 } 14551 } 14552 14553 protected void composeConformanceResourceInteractionComponent(String name, Conformance.ResourceInteractionComponent element) throws IOException { 14554 if (element != null) { 14555 composeElementAttributes(element); 14556 xml.enter(FHIR_NS, name); 14557 composeBackboneElements(element); 14558 if (element.hasCodeElement()) 14559 composeEnumeration("code", element.getCodeElement(), new Conformance.TypeRestfulInteractionEnumFactory()); 14560 if (element.hasDocumentationElement()) { 14561 composeString("documentation", element.getDocumentationElement()); 14562 } 14563 composeElementClose(element); 14564 xml.exit(FHIR_NS, name); 14565 } 14566 } 14567 14568 protected void composeConformanceConformanceRestResourceSearchParamComponent(String name, Conformance.ConformanceRestResourceSearchParamComponent element) throws IOException { 14569 if (element != null) { 14570 composeElementAttributes(element); 14571 xml.enter(FHIR_NS, name); 14572 composeBackboneElements(element); 14573 if (element.hasNameElement()) { 14574 composeString("name", element.getNameElement()); 14575 } 14576 if (element.hasDefinitionElement()) { 14577 composeUri("definition", element.getDefinitionElement()); 14578 } 14579 if (element.hasTypeElement()) 14580 composeEnumeration("type", element.getTypeElement(), new Enumerations.SearchParamTypeEnumFactory()); 14581 if (element.hasDocumentationElement()) { 14582 composeString("documentation", element.getDocumentationElement()); 14583 } 14584 if (element.hasTarget()) { 14585 for (CodeType e : element.getTarget()) 14586 composeCode("target", e); 14587 } 14588 if (element.hasModifier()) 14589 for (Enumeration<Conformance.SearchModifierCode> e : element.getModifier()) 14590 composeEnumeration("modifier", e, new Conformance.SearchModifierCodeEnumFactory()); 14591 if (element.hasChain()) { 14592 for (StringType e : element.getChain()) 14593 composeString("chain", e); 14594 } 14595 composeElementClose(element); 14596 xml.exit(FHIR_NS, name); 14597 } 14598 } 14599 14600 protected void composeConformanceSystemInteractionComponent(String name, Conformance.SystemInteractionComponent element) throws IOException { 14601 if (element != null) { 14602 composeElementAttributes(element); 14603 xml.enter(FHIR_NS, name); 14604 composeBackboneElements(element); 14605 if (element.hasCodeElement()) 14606 composeEnumeration("code", element.getCodeElement(), new Conformance.SystemRestfulInteractionEnumFactory()); 14607 if (element.hasDocumentationElement()) { 14608 composeString("documentation", element.getDocumentationElement()); 14609 } 14610 composeElementClose(element); 14611 xml.exit(FHIR_NS, name); 14612 } 14613 } 14614 14615 protected void composeConformanceConformanceRestOperationComponent(String name, Conformance.ConformanceRestOperationComponent element) throws IOException { 14616 if (element != null) { 14617 composeElementAttributes(element); 14618 xml.enter(FHIR_NS, name); 14619 composeBackboneElements(element); 14620 if (element.hasNameElement()) { 14621 composeString("name", element.getNameElement()); 14622 } 14623 if (element.hasDefinition()) { 14624 composeReference("definition", element.getDefinition()); 14625 } 14626 composeElementClose(element); 14627 xml.exit(FHIR_NS, name); 14628 } 14629 } 14630 14631 protected void composeConformanceConformanceMessagingComponent(String name, Conformance.ConformanceMessagingComponent element) throws IOException { 14632 if (element != null) { 14633 composeElementAttributes(element); 14634 xml.enter(FHIR_NS, name); 14635 composeBackboneElements(element); 14636 if (element.hasEndpoint()) { 14637 for (Conformance.ConformanceMessagingEndpointComponent e : element.getEndpoint()) 14638 composeConformanceConformanceMessagingEndpointComponent("endpoint", e); 14639 } 14640 if (element.hasReliableCacheElement()) { 14641 composeUnsignedInt("reliableCache", element.getReliableCacheElement()); 14642 } 14643 if (element.hasDocumentationElement()) { 14644 composeString("documentation", element.getDocumentationElement()); 14645 } 14646 if (element.hasEvent()) { 14647 for (Conformance.ConformanceMessagingEventComponent e : element.getEvent()) 14648 composeConformanceConformanceMessagingEventComponent("event", e); 14649 } 14650 composeElementClose(element); 14651 xml.exit(FHIR_NS, name); 14652 } 14653 } 14654 14655 protected void composeConformanceConformanceMessagingEndpointComponent(String name, Conformance.ConformanceMessagingEndpointComponent element) throws IOException { 14656 if (element != null) { 14657 composeElementAttributes(element); 14658 xml.enter(FHIR_NS, name); 14659 composeBackboneElements(element); 14660 if (element.hasProtocol()) { 14661 composeCoding("protocol", element.getProtocol()); 14662 } 14663 if (element.hasAddressElement()) { 14664 composeUri("address", element.getAddressElement()); 14665 } 14666 composeElementClose(element); 14667 xml.exit(FHIR_NS, name); 14668 } 14669 } 14670 14671 protected void composeConformanceConformanceMessagingEventComponent(String name, Conformance.ConformanceMessagingEventComponent element) throws IOException { 14672 if (element != null) { 14673 composeElementAttributes(element); 14674 xml.enter(FHIR_NS, name); 14675 composeBackboneElements(element); 14676 if (element.hasCode()) { 14677 composeCoding("code", element.getCode()); 14678 } 14679 if (element.hasCategoryElement()) 14680 composeEnumeration("category", element.getCategoryElement(), new Conformance.MessageSignificanceCategoryEnumFactory()); 14681 if (element.hasModeElement()) 14682 composeEnumeration("mode", element.getModeElement(), new Conformance.ConformanceEventModeEnumFactory()); 14683 if (element.hasFocusElement()) { 14684 composeCode("focus", element.getFocusElement()); 14685 } 14686 if (element.hasRequest()) { 14687 composeReference("request", element.getRequest()); 14688 } 14689 if (element.hasResponse()) { 14690 composeReference("response", element.getResponse()); 14691 } 14692 if (element.hasDocumentationElement()) { 14693 composeString("documentation", element.getDocumentationElement()); 14694 } 14695 composeElementClose(element); 14696 xml.exit(FHIR_NS, name); 14697 } 14698 } 14699 14700 protected void composeConformanceConformanceDocumentComponent(String name, Conformance.ConformanceDocumentComponent element) throws IOException { 14701 if (element != null) { 14702 composeElementAttributes(element); 14703 xml.enter(FHIR_NS, name); 14704 composeBackboneElements(element); 14705 if (element.hasModeElement()) 14706 composeEnumeration("mode", element.getModeElement(), new Conformance.DocumentModeEnumFactory()); 14707 if (element.hasDocumentationElement()) { 14708 composeString("documentation", element.getDocumentationElement()); 14709 } 14710 if (element.hasProfile()) { 14711 composeReference("profile", element.getProfile()); 14712 } 14713 composeElementClose(element); 14714 xml.exit(FHIR_NS, name); 14715 } 14716 } 14717 14718 protected void composeContract(String name, Contract element) throws IOException { 14719 if (element != null) { 14720 composeDomainResourceAttributes(element); 14721 xml.enter(FHIR_NS, name); 14722 composeDomainResourceElements(element); 14723 if (element.hasIdentifier()) { 14724 composeIdentifier("identifier", element.getIdentifier()); 14725 } 14726 if (element.hasIssuedElement()) { 14727 composeDateTime("issued", element.getIssuedElement()); 14728 } 14729 if (element.hasApplies()) { 14730 composePeriod("applies", element.getApplies()); 14731 } 14732 if (element.hasSubject()) { 14733 for (Reference e : element.getSubject()) 14734 composeReference("subject", e); 14735 } 14736 if (element.hasAuthority()) { 14737 for (Reference e : element.getAuthority()) 14738 composeReference("authority", e); 14739 } 14740 if (element.hasDomain()) { 14741 for (Reference e : element.getDomain()) 14742 composeReference("domain", e); 14743 } 14744 if (element.hasType()) { 14745 composeCodeableConcept("type", element.getType()); 14746 } 14747 if (element.hasSubType()) { 14748 for (CodeableConcept e : element.getSubType()) 14749 composeCodeableConcept("subType", e); 14750 } 14751 if (element.hasAction()) { 14752 for (CodeableConcept e : element.getAction()) 14753 composeCodeableConcept("action", e); 14754 } 14755 if (element.hasActionReason()) { 14756 for (CodeableConcept e : element.getActionReason()) 14757 composeCodeableConcept("actionReason", e); 14758 } 14759 if (element.hasActor()) { 14760 for (Contract.ActorComponent e : element.getActor()) 14761 composeContractActorComponent("actor", e); 14762 } 14763 if (element.hasValuedItem()) { 14764 for (Contract.ValuedItemComponent e : element.getValuedItem()) 14765 composeContractValuedItemComponent("valuedItem", e); 14766 } 14767 if (element.hasSigner()) { 14768 for (Contract.SignatoryComponent e : element.getSigner()) 14769 composeContractSignatoryComponent("signer", e); 14770 } 14771 if (element.hasTerm()) { 14772 for (Contract.TermComponent e : element.getTerm()) 14773 composeContractTermComponent("term", e); 14774 } 14775 if (element.hasBinding()) { 14776 composeType("binding", element.getBinding()); 14777 } if (element.hasFriendly()) { 14778 for (Contract.FriendlyLanguageComponent e : element.getFriendly()) 14779 composeContractFriendlyLanguageComponent("friendly", e); 14780 } 14781 if (element.hasLegal()) { 14782 for (Contract.LegalLanguageComponent e : element.getLegal()) 14783 composeContractLegalLanguageComponent("legal", e); 14784 } 14785 if (element.hasRule()) { 14786 for (Contract.ComputableLanguageComponent e : element.getRule()) 14787 composeContractComputableLanguageComponent("rule", e); 14788 } 14789 composeElementClose(element); 14790 xml.exit(FHIR_NS, name); 14791 } 14792 } 14793 14794 protected void composeContractActorComponent(String name, Contract.ActorComponent element) throws IOException { 14795 if (element != null) { 14796 composeElementAttributes(element); 14797 xml.enter(FHIR_NS, name); 14798 composeBackboneElements(element); 14799 if (element.hasEntity()) { 14800 composeReference("entity", element.getEntity()); 14801 } 14802 if (element.hasRole()) { 14803 for (CodeableConcept e : element.getRole()) 14804 composeCodeableConcept("role", e); 14805 } 14806 composeElementClose(element); 14807 xml.exit(FHIR_NS, name); 14808 } 14809 } 14810 14811 protected void composeContractValuedItemComponent(String name, Contract.ValuedItemComponent element) throws IOException { 14812 if (element != null) { 14813 composeElementAttributes(element); 14814 xml.enter(FHIR_NS, name); 14815 composeBackboneElements(element); 14816 if (element.hasEntity()) { 14817 composeType("entity", element.getEntity()); 14818 } if (element.hasIdentifier()) { 14819 composeIdentifier("identifier", element.getIdentifier()); 14820 } 14821 if (element.hasEffectiveTimeElement()) { 14822 composeDateTime("effectiveTime", element.getEffectiveTimeElement()); 14823 } 14824 if (element.hasQuantity()) { 14825 composeSimpleQuantity("quantity", element.getQuantity()); 14826 } 14827 if (element.hasUnitPrice()) { 14828 composeMoney("unitPrice", element.getUnitPrice()); 14829 } 14830 if (element.hasFactorElement()) { 14831 composeDecimal("factor", element.getFactorElement()); 14832 } 14833 if (element.hasPointsElement()) { 14834 composeDecimal("points", element.getPointsElement()); 14835 } 14836 if (element.hasNet()) { 14837 composeMoney("net", element.getNet()); 14838 } 14839 composeElementClose(element); 14840 xml.exit(FHIR_NS, name); 14841 } 14842 } 14843 14844 protected void composeContractSignatoryComponent(String name, Contract.SignatoryComponent element) throws IOException { 14845 if (element != null) { 14846 composeElementAttributes(element); 14847 xml.enter(FHIR_NS, name); 14848 composeBackboneElements(element); 14849 if (element.hasType()) { 14850 composeCoding("type", element.getType()); 14851 } 14852 if (element.hasParty()) { 14853 composeReference("party", element.getParty()); 14854 } 14855 if (element.hasSignatureElement()) { 14856 composeString("signature", element.getSignatureElement()); 14857 } 14858 composeElementClose(element); 14859 xml.exit(FHIR_NS, name); 14860 } 14861 } 14862 14863 protected void composeContractTermComponent(String name, Contract.TermComponent element) throws IOException { 14864 if (element != null) { 14865 composeElementAttributes(element); 14866 xml.enter(FHIR_NS, name); 14867 composeBackboneElements(element); 14868 if (element.hasIdentifier()) { 14869 composeIdentifier("identifier", element.getIdentifier()); 14870 } 14871 if (element.hasIssuedElement()) { 14872 composeDateTime("issued", element.getIssuedElement()); 14873 } 14874 if (element.hasApplies()) { 14875 composePeriod("applies", element.getApplies()); 14876 } 14877 if (element.hasType()) { 14878 composeCodeableConcept("type", element.getType()); 14879 } 14880 if (element.hasSubType()) { 14881 composeCodeableConcept("subType", element.getSubType()); 14882 } 14883 if (element.hasSubject()) { 14884 composeReference("subject", element.getSubject()); 14885 } 14886 if (element.hasAction()) { 14887 for (CodeableConcept e : element.getAction()) 14888 composeCodeableConcept("action", e); 14889 } 14890 if (element.hasActionReason()) { 14891 for (CodeableConcept e : element.getActionReason()) 14892 composeCodeableConcept("actionReason", e); 14893 } 14894 if (element.hasActor()) { 14895 for (Contract.TermActorComponent e : element.getActor()) 14896 composeContractTermActorComponent("actor", e); 14897 } 14898 if (element.hasTextElement()) { 14899 composeString("text", element.getTextElement()); 14900 } 14901 if (element.hasValuedItem()) { 14902 for (Contract.TermValuedItemComponent e : element.getValuedItem()) 14903 composeContractTermValuedItemComponent("valuedItem", e); 14904 } 14905 if (element.hasGroup()) { 14906 for (Contract.TermComponent e : element.getGroup()) 14907 composeContractTermComponent("group", e); 14908 } 14909 composeElementClose(element); 14910 xml.exit(FHIR_NS, name); 14911 } 14912 } 14913 14914 protected void composeContractTermActorComponent(String name, Contract.TermActorComponent element) throws IOException { 14915 if (element != null) { 14916 composeElementAttributes(element); 14917 xml.enter(FHIR_NS, name); 14918 composeBackboneElements(element); 14919 if (element.hasEntity()) { 14920 composeReference("entity", element.getEntity()); 14921 } 14922 if (element.hasRole()) { 14923 for (CodeableConcept e : element.getRole()) 14924 composeCodeableConcept("role", e); 14925 } 14926 composeElementClose(element); 14927 xml.exit(FHIR_NS, name); 14928 } 14929 } 14930 14931 protected void composeContractTermValuedItemComponent(String name, Contract.TermValuedItemComponent element) throws IOException { 14932 if (element != null) { 14933 composeElementAttributes(element); 14934 xml.enter(FHIR_NS, name); 14935 composeBackboneElements(element); 14936 if (element.hasEntity()) { 14937 composeType("entity", element.getEntity()); 14938 } if (element.hasIdentifier()) { 14939 composeIdentifier("identifier", element.getIdentifier()); 14940 } 14941 if (element.hasEffectiveTimeElement()) { 14942 composeDateTime("effectiveTime", element.getEffectiveTimeElement()); 14943 } 14944 if (element.hasQuantity()) { 14945 composeSimpleQuantity("quantity", element.getQuantity()); 14946 } 14947 if (element.hasUnitPrice()) { 14948 composeMoney("unitPrice", element.getUnitPrice()); 14949 } 14950 if (element.hasFactorElement()) { 14951 composeDecimal("factor", element.getFactorElement()); 14952 } 14953 if (element.hasPointsElement()) { 14954 composeDecimal("points", element.getPointsElement()); 14955 } 14956 if (element.hasNet()) { 14957 composeMoney("net", element.getNet()); 14958 } 14959 composeElementClose(element); 14960 xml.exit(FHIR_NS, name); 14961 } 14962 } 14963 14964 protected void composeContractFriendlyLanguageComponent(String name, Contract.FriendlyLanguageComponent element) throws IOException { 14965 if (element != null) { 14966 composeElementAttributes(element); 14967 xml.enter(FHIR_NS, name); 14968 composeBackboneElements(element); 14969 if (element.hasContent()) { 14970 composeType("content", element.getContent()); 14971 } composeElementClose(element); 14972 xml.exit(FHIR_NS, name); 14973 } 14974 } 14975 14976 protected void composeContractLegalLanguageComponent(String name, Contract.LegalLanguageComponent element) throws IOException { 14977 if (element != null) { 14978 composeElementAttributes(element); 14979 xml.enter(FHIR_NS, name); 14980 composeBackboneElements(element); 14981 if (element.hasContent()) { 14982 composeType("content", element.getContent()); 14983 } composeElementClose(element); 14984 xml.exit(FHIR_NS, name); 14985 } 14986 } 14987 14988 protected void composeContractComputableLanguageComponent(String name, Contract.ComputableLanguageComponent element) throws IOException { 14989 if (element != null) { 14990 composeElementAttributes(element); 14991 xml.enter(FHIR_NS, name); 14992 composeBackboneElements(element); 14993 if (element.hasContent()) { 14994 composeType("content", element.getContent()); 14995 } composeElementClose(element); 14996 xml.exit(FHIR_NS, name); 14997 } 14998 } 14999 15000 protected void composeCoverage(String name, Coverage element) throws IOException { 15001 if (element != null) { 15002 composeDomainResourceAttributes(element); 15003 xml.enter(FHIR_NS, name); 15004 composeDomainResourceElements(element); 15005 if (element.hasIssuer()) { 15006 composeReference("issuer", element.getIssuer()); 15007 } 15008 if (element.hasBin()) { 15009 composeIdentifier("bin", element.getBin()); 15010 } 15011 if (element.hasPeriod()) { 15012 composePeriod("period", element.getPeriod()); 15013 } 15014 if (element.hasType()) { 15015 composeCoding("type", element.getType()); 15016 } 15017 if (element.hasSubscriberId()) { 15018 composeIdentifier("subscriberId", element.getSubscriberId()); 15019 } 15020 if (element.hasIdentifier()) { 15021 for (Identifier e : element.getIdentifier()) 15022 composeIdentifier("identifier", e); 15023 } 15024 if (element.hasGroupElement()) { 15025 composeString("group", element.getGroupElement()); 15026 } 15027 if (element.hasPlanElement()) { 15028 composeString("plan", element.getPlanElement()); 15029 } 15030 if (element.hasSubPlanElement()) { 15031 composeString("subPlan", element.getSubPlanElement()); 15032 } 15033 if (element.hasDependentElement()) { 15034 composePositiveInt("dependent", element.getDependentElement()); 15035 } 15036 if (element.hasSequenceElement()) { 15037 composePositiveInt("sequence", element.getSequenceElement()); 15038 } 15039 if (element.hasSubscriber()) { 15040 composeReference("subscriber", element.getSubscriber()); 15041 } 15042 if (element.hasNetwork()) { 15043 composeIdentifier("network", element.getNetwork()); 15044 } 15045 if (element.hasContract()) { 15046 for (Reference e : element.getContract()) 15047 composeReference("contract", e); 15048 } 15049 composeElementClose(element); 15050 xml.exit(FHIR_NS, name); 15051 } 15052 } 15053 15054 protected void composeDataElement(String name, DataElement element) throws IOException { 15055 if (element != null) { 15056 composeDomainResourceAttributes(element); 15057 xml.enter(FHIR_NS, name); 15058 composeDomainResourceElements(element); 15059 if (element.hasUrlElement()) { 15060 composeUri("url", element.getUrlElement()); 15061 } 15062 if (element.hasIdentifier()) { 15063 for (Identifier e : element.getIdentifier()) 15064 composeIdentifier("identifier", e); 15065 } 15066 if (element.hasVersionElement()) { 15067 composeString("version", element.getVersionElement()); 15068 } 15069 if (element.hasNameElement()) { 15070 composeString("name", element.getNameElement()); 15071 } 15072 if (element.hasStatusElement()) 15073 composeEnumeration("status", element.getStatusElement(), new Enumerations.ConformanceResourceStatusEnumFactory()); 15074 if (element.hasExperimentalElement()) { 15075 composeBoolean("experimental", element.getExperimentalElement()); 15076 } 15077 if (element.hasPublisherElement()) { 15078 composeString("publisher", element.getPublisherElement()); 15079 } 15080 if (element.hasContact()) { 15081 for (DataElement.DataElementContactComponent e : element.getContact()) 15082 composeDataElementDataElementContactComponent("contact", e); 15083 } 15084 if (element.hasDateElement()) { 15085 composeDateTime("date", element.getDateElement()); 15086 } 15087 if (element.hasUseContext()) { 15088 for (CodeableConcept e : element.getUseContext()) 15089 composeCodeableConcept("useContext", e); 15090 } 15091 if (element.hasCopyrightElement()) { 15092 composeString("copyright", element.getCopyrightElement()); 15093 } 15094 if (element.hasStringencyElement()) 15095 composeEnumeration("stringency", element.getStringencyElement(), new DataElement.DataElementStringencyEnumFactory()); 15096 if (element.hasMapping()) { 15097 for (DataElement.DataElementMappingComponent e : element.getMapping()) 15098 composeDataElementDataElementMappingComponent("mapping", e); 15099 } 15100 if (element.hasElement()) { 15101 for (ElementDefinition e : element.getElement()) 15102 composeElementDefinition("element", e); 15103 } 15104 composeElementClose(element); 15105 xml.exit(FHIR_NS, name); 15106 } 15107 } 15108 15109 protected void composeDataElementDataElementContactComponent(String name, DataElement.DataElementContactComponent element) throws IOException { 15110 if (element != null) { 15111 composeElementAttributes(element); 15112 xml.enter(FHIR_NS, name); 15113 composeBackboneElements(element); 15114 if (element.hasNameElement()) { 15115 composeString("name", element.getNameElement()); 15116 } 15117 if (element.hasTelecom()) { 15118 for (ContactPoint e : element.getTelecom()) 15119 composeContactPoint("telecom", e); 15120 } 15121 composeElementClose(element); 15122 xml.exit(FHIR_NS, name); 15123 } 15124 } 15125 15126 protected void composeDataElementDataElementMappingComponent(String name, DataElement.DataElementMappingComponent element) throws IOException { 15127 if (element != null) { 15128 composeElementAttributes(element); 15129 xml.enter(FHIR_NS, name); 15130 composeBackboneElements(element); 15131 if (element.hasIdentityElement()) { 15132 composeId("identity", element.getIdentityElement()); 15133 } 15134 if (element.hasUriElement()) { 15135 composeUri("uri", element.getUriElement()); 15136 } 15137 if (element.hasNameElement()) { 15138 composeString("name", element.getNameElement()); 15139 } 15140 if (element.hasCommentsElement()) { 15141 composeString("comments", element.getCommentsElement()); 15142 } 15143 composeElementClose(element); 15144 xml.exit(FHIR_NS, name); 15145 } 15146 } 15147 15148 protected void composeDetectedIssue(String name, DetectedIssue element) throws IOException { 15149 if (element != null) { 15150 composeDomainResourceAttributes(element); 15151 xml.enter(FHIR_NS, name); 15152 composeDomainResourceElements(element); 15153 if (element.hasPatient()) { 15154 composeReference("patient", element.getPatient()); 15155 } 15156 if (element.hasCategory()) { 15157 composeCodeableConcept("category", element.getCategory()); 15158 } 15159 if (element.hasSeverityElement()) 15160 composeEnumeration("severity", element.getSeverityElement(), new DetectedIssue.DetectedIssueSeverityEnumFactory()); 15161 if (element.hasImplicated()) { 15162 for (Reference e : element.getImplicated()) 15163 composeReference("implicated", e); 15164 } 15165 if (element.hasDetailElement()) { 15166 composeString("detail", element.getDetailElement()); 15167 } 15168 if (element.hasDateElement()) { 15169 composeDateTime("date", element.getDateElement()); 15170 } 15171 if (element.hasAuthor()) { 15172 composeReference("author", element.getAuthor()); 15173 } 15174 if (element.hasIdentifier()) { 15175 composeIdentifier("identifier", element.getIdentifier()); 15176 } 15177 if (element.hasReferenceElement()) { 15178 composeUri("reference", element.getReferenceElement()); 15179 } 15180 if (element.hasMitigation()) { 15181 for (DetectedIssue.DetectedIssueMitigationComponent e : element.getMitigation()) 15182 composeDetectedIssueDetectedIssueMitigationComponent("mitigation", e); 15183 } 15184 composeElementClose(element); 15185 xml.exit(FHIR_NS, name); 15186 } 15187 } 15188 15189 protected void composeDetectedIssueDetectedIssueMitigationComponent(String name, DetectedIssue.DetectedIssueMitigationComponent element) throws IOException { 15190 if (element != null) { 15191 composeElementAttributes(element); 15192 xml.enter(FHIR_NS, name); 15193 composeBackboneElements(element); 15194 if (element.hasAction()) { 15195 composeCodeableConcept("action", element.getAction()); 15196 } 15197 if (element.hasDateElement()) { 15198 composeDateTime("date", element.getDateElement()); 15199 } 15200 if (element.hasAuthor()) { 15201 composeReference("author", element.getAuthor()); 15202 } 15203 composeElementClose(element); 15204 xml.exit(FHIR_NS, name); 15205 } 15206 } 15207 15208 protected void composeDevice(String name, Device element) throws IOException { 15209 if (element != null) { 15210 composeDomainResourceAttributes(element); 15211 xml.enter(FHIR_NS, name); 15212 composeDomainResourceElements(element); 15213 if (element.hasIdentifier()) { 15214 for (Identifier e : element.getIdentifier()) 15215 composeIdentifier("identifier", e); 15216 } 15217 if (element.hasType()) { 15218 composeCodeableConcept("type", element.getType()); 15219 } 15220 if (element.hasNote()) { 15221 for (Annotation e : element.getNote()) 15222 composeAnnotation("note", e); 15223 } 15224 if (element.hasStatusElement()) 15225 composeEnumeration("status", element.getStatusElement(), new Device.DeviceStatusEnumFactory()); 15226 if (element.hasManufacturerElement()) { 15227 composeString("manufacturer", element.getManufacturerElement()); 15228 } 15229 if (element.hasModelElement()) { 15230 composeString("model", element.getModelElement()); 15231 } 15232 if (element.hasVersionElement()) { 15233 composeString("version", element.getVersionElement()); 15234 } 15235 if (element.hasManufactureDateElement()) { 15236 composeDateTime("manufactureDate", element.getManufactureDateElement()); 15237 } 15238 if (element.hasExpiryElement()) { 15239 composeDateTime("expiry", element.getExpiryElement()); 15240 } 15241 if (element.hasUdiElement()) { 15242 composeString("udi", element.getUdiElement()); 15243 } 15244 if (element.hasLotNumberElement()) { 15245 composeString("lotNumber", element.getLotNumberElement()); 15246 } 15247 if (element.hasOwner()) { 15248 composeReference("owner", element.getOwner()); 15249 } 15250 if (element.hasLocation()) { 15251 composeReference("location", element.getLocation()); 15252 } 15253 if (element.hasPatient()) { 15254 composeReference("patient", element.getPatient()); 15255 } 15256 if (element.hasContact()) { 15257 for (ContactPoint e : element.getContact()) 15258 composeContactPoint("contact", e); 15259 } 15260 if (element.hasUrlElement()) { 15261 composeUri("url", element.getUrlElement()); 15262 } 15263 composeElementClose(element); 15264 xml.exit(FHIR_NS, name); 15265 } 15266 } 15267 15268 protected void composeDeviceComponent(String name, DeviceComponent element) throws IOException { 15269 if (element != null) { 15270 composeDomainResourceAttributes(element); 15271 xml.enter(FHIR_NS, name); 15272 composeDomainResourceElements(element); 15273 if (element.hasType()) { 15274 composeCodeableConcept("type", element.getType()); 15275 } 15276 if (element.hasIdentifier()) { 15277 composeIdentifier("identifier", element.getIdentifier()); 15278 } 15279 if (element.hasLastSystemChangeElement()) { 15280 composeInstant("lastSystemChange", element.getLastSystemChangeElement()); 15281 } 15282 if (element.hasSource()) { 15283 composeReference("source", element.getSource()); 15284 } 15285 if (element.hasParent()) { 15286 composeReference("parent", element.getParent()); 15287 } 15288 if (element.hasOperationalStatus()) { 15289 for (CodeableConcept e : element.getOperationalStatus()) 15290 composeCodeableConcept("operationalStatus", e); 15291 } 15292 if (element.hasParameterGroup()) { 15293 composeCodeableConcept("parameterGroup", element.getParameterGroup()); 15294 } 15295 if (element.hasMeasurementPrincipleElement()) 15296 composeEnumeration("measurementPrinciple", element.getMeasurementPrincipleElement(), new DeviceComponent.MeasmntPrincipleEnumFactory()); 15297 if (element.hasProductionSpecification()) { 15298 for (DeviceComponent.DeviceComponentProductionSpecificationComponent e : element.getProductionSpecification()) 15299 composeDeviceComponentDeviceComponentProductionSpecificationComponent("productionSpecification", e); 15300 } 15301 if (element.hasLanguageCode()) { 15302 composeCodeableConcept("languageCode", element.getLanguageCode()); 15303 } 15304 composeElementClose(element); 15305 xml.exit(FHIR_NS, name); 15306 } 15307 } 15308 15309 protected void composeDeviceComponentDeviceComponentProductionSpecificationComponent(String name, DeviceComponent.DeviceComponentProductionSpecificationComponent element) throws IOException { 15310 if (element != null) { 15311 composeElementAttributes(element); 15312 xml.enter(FHIR_NS, name); 15313 composeBackboneElements(element); 15314 if (element.hasSpecType()) { 15315 composeCodeableConcept("specType", element.getSpecType()); 15316 } 15317 if (element.hasComponentId()) { 15318 composeIdentifier("componentId", element.getComponentId()); 15319 } 15320 if (element.hasProductionSpecElement()) { 15321 composeString("productionSpec", element.getProductionSpecElement()); 15322 } 15323 composeElementClose(element); 15324 xml.exit(FHIR_NS, name); 15325 } 15326 } 15327 15328 protected void composeDeviceMetric(String name, DeviceMetric element) throws IOException { 15329 if (element != null) { 15330 composeDomainResourceAttributes(element); 15331 xml.enter(FHIR_NS, name); 15332 composeDomainResourceElements(element); 15333 if (element.hasType()) { 15334 composeCodeableConcept("type", element.getType()); 15335 } 15336 if (element.hasIdentifier()) { 15337 composeIdentifier("identifier", element.getIdentifier()); 15338 } 15339 if (element.hasUnit()) { 15340 composeCodeableConcept("unit", element.getUnit()); 15341 } 15342 if (element.hasSource()) { 15343 composeReference("source", element.getSource()); 15344 } 15345 if (element.hasParent()) { 15346 composeReference("parent", element.getParent()); 15347 } 15348 if (element.hasOperationalStatusElement()) 15349 composeEnumeration("operationalStatus", element.getOperationalStatusElement(), new DeviceMetric.DeviceMetricOperationalStatusEnumFactory()); 15350 if (element.hasColorElement()) 15351 composeEnumeration("color", element.getColorElement(), new DeviceMetric.DeviceMetricColorEnumFactory()); 15352 if (element.hasCategoryElement()) 15353 composeEnumeration("category", element.getCategoryElement(), new DeviceMetric.DeviceMetricCategoryEnumFactory()); 15354 if (element.hasMeasurementPeriod()) { 15355 composeTiming("measurementPeriod", element.getMeasurementPeriod()); 15356 } 15357 if (element.hasCalibration()) { 15358 for (DeviceMetric.DeviceMetricCalibrationComponent e : element.getCalibration()) 15359 composeDeviceMetricDeviceMetricCalibrationComponent("calibration", e); 15360 } 15361 composeElementClose(element); 15362 xml.exit(FHIR_NS, name); 15363 } 15364 } 15365 15366 protected void composeDeviceMetricDeviceMetricCalibrationComponent(String name, DeviceMetric.DeviceMetricCalibrationComponent element) throws IOException { 15367 if (element != null) { 15368 composeElementAttributes(element); 15369 xml.enter(FHIR_NS, name); 15370 composeBackboneElements(element); 15371 if (element.hasTypeElement()) 15372 composeEnumeration("type", element.getTypeElement(), new DeviceMetric.DeviceMetricCalibrationTypeEnumFactory()); 15373 if (element.hasStateElement()) 15374 composeEnumeration("state", element.getStateElement(), new DeviceMetric.DeviceMetricCalibrationStateEnumFactory()); 15375 if (element.hasTimeElement()) { 15376 composeInstant("time", element.getTimeElement()); 15377 } 15378 composeElementClose(element); 15379 xml.exit(FHIR_NS, name); 15380 } 15381 } 15382 15383 protected void composeDeviceUseRequest(String name, DeviceUseRequest element) throws IOException { 15384 if (element != null) { 15385 composeDomainResourceAttributes(element); 15386 xml.enter(FHIR_NS, name); 15387 composeDomainResourceElements(element); 15388 if (element.hasBodySite()) { 15389 composeType("bodySite", element.getBodySite()); 15390 } if (element.hasStatusElement()) 15391 composeEnumeration("status", element.getStatusElement(), new DeviceUseRequest.DeviceUseRequestStatusEnumFactory()); 15392 if (element.hasDevice()) { 15393 composeReference("device", element.getDevice()); 15394 } 15395 if (element.hasEncounter()) { 15396 composeReference("encounter", element.getEncounter()); 15397 } 15398 if (element.hasIdentifier()) { 15399 for (Identifier e : element.getIdentifier()) 15400 composeIdentifier("identifier", e); 15401 } 15402 if (element.hasIndication()) { 15403 for (CodeableConcept e : element.getIndication()) 15404 composeCodeableConcept("indication", e); 15405 } 15406 if (element.hasNotes()) { 15407 for (StringType e : element.getNotes()) 15408 composeString("notes", e); 15409 } 15410 if (element.hasPrnReason()) { 15411 for (CodeableConcept e : element.getPrnReason()) 15412 composeCodeableConcept("prnReason", e); 15413 } 15414 if (element.hasOrderedOnElement()) { 15415 composeDateTime("orderedOn", element.getOrderedOnElement()); 15416 } 15417 if (element.hasRecordedOnElement()) { 15418 composeDateTime("recordedOn", element.getRecordedOnElement()); 15419 } 15420 if (element.hasSubject()) { 15421 composeReference("subject", element.getSubject()); 15422 } 15423 if (element.hasTiming()) { 15424 composeType("timing", element.getTiming()); 15425 } if (element.hasPriorityElement()) 15426 composeEnumeration("priority", element.getPriorityElement(), new DeviceUseRequest.DeviceUseRequestPriorityEnumFactory()); 15427 composeElementClose(element); 15428 xml.exit(FHIR_NS, name); 15429 } 15430 } 15431 15432 protected void composeDeviceUseStatement(String name, DeviceUseStatement element) throws IOException { 15433 if (element != null) { 15434 composeDomainResourceAttributes(element); 15435 xml.enter(FHIR_NS, name); 15436 composeDomainResourceElements(element); 15437 if (element.hasBodySite()) { 15438 composeType("bodySite", element.getBodySite()); 15439 } if (element.hasWhenUsed()) { 15440 composePeriod("whenUsed", element.getWhenUsed()); 15441 } 15442 if (element.hasDevice()) { 15443 composeReference("device", element.getDevice()); 15444 } 15445 if (element.hasIdentifier()) { 15446 for (Identifier e : element.getIdentifier()) 15447 composeIdentifier("identifier", e); 15448 } 15449 if (element.hasIndication()) { 15450 for (CodeableConcept e : element.getIndication()) 15451 composeCodeableConcept("indication", e); 15452 } 15453 if (element.hasNotes()) { 15454 for (StringType e : element.getNotes()) 15455 composeString("notes", e); 15456 } 15457 if (element.hasRecordedOnElement()) { 15458 composeDateTime("recordedOn", element.getRecordedOnElement()); 15459 } 15460 if (element.hasSubject()) { 15461 composeReference("subject", element.getSubject()); 15462 } 15463 if (element.hasTiming()) { 15464 composeType("timing", element.getTiming()); 15465 } composeElementClose(element); 15466 xml.exit(FHIR_NS, name); 15467 } 15468 } 15469 15470 protected void composeDiagnosticOrder(String name, DiagnosticOrder element) throws IOException { 15471 if (element != null) { 15472 composeDomainResourceAttributes(element); 15473 xml.enter(FHIR_NS, name); 15474 composeDomainResourceElements(element); 15475 if (element.hasSubject()) { 15476 composeReference("subject", element.getSubject()); 15477 } 15478 if (element.hasOrderer()) { 15479 composeReference("orderer", element.getOrderer()); 15480 } 15481 if (element.hasIdentifier()) { 15482 for (Identifier e : element.getIdentifier()) 15483 composeIdentifier("identifier", e); 15484 } 15485 if (element.hasEncounter()) { 15486 composeReference("encounter", element.getEncounter()); 15487 } 15488 if (element.hasReason()) { 15489 for (CodeableConcept e : element.getReason()) 15490 composeCodeableConcept("reason", e); 15491 } 15492 if (element.hasSupportingInformation()) { 15493 for (Reference e : element.getSupportingInformation()) 15494 composeReference("supportingInformation", e); 15495 } 15496 if (element.hasSpecimen()) { 15497 for (Reference e : element.getSpecimen()) 15498 composeReference("specimen", e); 15499 } 15500 if (element.hasStatusElement()) 15501 composeEnumeration("status", element.getStatusElement(), new DiagnosticOrder.DiagnosticOrderStatusEnumFactory()); 15502 if (element.hasPriorityElement()) 15503 composeEnumeration("priority", element.getPriorityElement(), new DiagnosticOrder.DiagnosticOrderPriorityEnumFactory()); 15504 if (element.hasEvent()) { 15505 for (DiagnosticOrder.DiagnosticOrderEventComponent e : element.getEvent()) 15506 composeDiagnosticOrderDiagnosticOrderEventComponent("event", e); 15507 } 15508 if (element.hasItem()) { 15509 for (DiagnosticOrder.DiagnosticOrderItemComponent e : element.getItem()) 15510 composeDiagnosticOrderDiagnosticOrderItemComponent("item", e); 15511 } 15512 if (element.hasNote()) { 15513 for (Annotation e : element.getNote()) 15514 composeAnnotation("note", e); 15515 } 15516 composeElementClose(element); 15517 xml.exit(FHIR_NS, name); 15518 } 15519 } 15520 15521 protected void composeDiagnosticOrderDiagnosticOrderEventComponent(String name, DiagnosticOrder.DiagnosticOrderEventComponent element) throws IOException { 15522 if (element != null) { 15523 composeElementAttributes(element); 15524 xml.enter(FHIR_NS, name); 15525 composeBackboneElements(element); 15526 if (element.hasStatusElement()) 15527 composeEnumeration("status", element.getStatusElement(), new DiagnosticOrder.DiagnosticOrderStatusEnumFactory()); 15528 if (element.hasDescription()) { 15529 composeCodeableConcept("description", element.getDescription()); 15530 } 15531 if (element.hasDateTimeElement()) { 15532 composeDateTime("dateTime", element.getDateTimeElement()); 15533 } 15534 if (element.hasActor()) { 15535 composeReference("actor", element.getActor()); 15536 } 15537 composeElementClose(element); 15538 xml.exit(FHIR_NS, name); 15539 } 15540 } 15541 15542 protected void composeDiagnosticOrderDiagnosticOrderItemComponent(String name, DiagnosticOrder.DiagnosticOrderItemComponent element) throws IOException { 15543 if (element != null) { 15544 composeElementAttributes(element); 15545 xml.enter(FHIR_NS, name); 15546 composeBackboneElements(element); 15547 if (element.hasCode()) { 15548 composeCodeableConcept("code", element.getCode()); 15549 } 15550 if (element.hasSpecimen()) { 15551 for (Reference e : element.getSpecimen()) 15552 composeReference("specimen", e); 15553 } 15554 if (element.hasBodySite()) { 15555 composeCodeableConcept("bodySite", element.getBodySite()); 15556 } 15557 if (element.hasStatusElement()) 15558 composeEnumeration("status", element.getStatusElement(), new DiagnosticOrder.DiagnosticOrderStatusEnumFactory()); 15559 if (element.hasEvent()) { 15560 for (DiagnosticOrder.DiagnosticOrderEventComponent e : element.getEvent()) 15561 composeDiagnosticOrderDiagnosticOrderEventComponent("event", e); 15562 } 15563 composeElementClose(element); 15564 xml.exit(FHIR_NS, name); 15565 } 15566 } 15567 15568 protected void composeDiagnosticReport(String name, DiagnosticReport element) throws IOException { 15569 if (element != null) { 15570 composeDomainResourceAttributes(element); 15571 xml.enter(FHIR_NS, name); 15572 composeDomainResourceElements(element); 15573 if (element.hasIdentifier()) { 15574 for (Identifier e : element.getIdentifier()) 15575 composeIdentifier("identifier", e); 15576 } 15577 if (element.hasStatusElement()) 15578 composeEnumeration("status", element.getStatusElement(), new DiagnosticReport.DiagnosticReportStatusEnumFactory()); 15579 if (element.hasCategory()) { 15580 composeCodeableConcept("category", element.getCategory()); 15581 } 15582 if (element.hasCode()) { 15583 composeCodeableConcept("code", element.getCode()); 15584 } 15585 if (element.hasSubject()) { 15586 composeReference("subject", element.getSubject()); 15587 } 15588 if (element.hasEncounter()) { 15589 composeReference("encounter", element.getEncounter()); 15590 } 15591 if (element.hasEffective()) { 15592 composeType("effective", element.getEffective()); 15593 } if (element.hasIssuedElement()) { 15594 composeInstant("issued", element.getIssuedElement()); 15595 } 15596 if (element.hasPerformer()) { 15597 composeReference("performer", element.getPerformer()); 15598 } 15599 if (element.hasRequest()) { 15600 for (Reference e : element.getRequest()) 15601 composeReference("request", e); 15602 } 15603 if (element.hasSpecimen()) { 15604 for (Reference e : element.getSpecimen()) 15605 composeReference("specimen", e); 15606 } 15607 if (element.hasResult()) { 15608 for (Reference e : element.getResult()) 15609 composeReference("result", e); 15610 } 15611 if (element.hasImagingStudy()) { 15612 for (Reference e : element.getImagingStudy()) 15613 composeReference("imagingStudy", e); 15614 } 15615 if (element.hasImage()) { 15616 for (DiagnosticReport.DiagnosticReportImageComponent e : element.getImage()) 15617 composeDiagnosticReportDiagnosticReportImageComponent("image", e); 15618 } 15619 if (element.hasConclusionElement()) { 15620 composeString("conclusion", element.getConclusionElement()); 15621 } 15622 if (element.hasCodedDiagnosis()) { 15623 for (CodeableConcept e : element.getCodedDiagnosis()) 15624 composeCodeableConcept("codedDiagnosis", e); 15625 } 15626 if (element.hasPresentedForm()) { 15627 for (Attachment e : element.getPresentedForm()) 15628 composeAttachment("presentedForm", e); 15629 } 15630 composeElementClose(element); 15631 xml.exit(FHIR_NS, name); 15632 } 15633 } 15634 15635 protected void composeDiagnosticReportDiagnosticReportImageComponent(String name, DiagnosticReport.DiagnosticReportImageComponent element) throws IOException { 15636 if (element != null) { 15637 composeElementAttributes(element); 15638 xml.enter(FHIR_NS, name); 15639 composeBackboneElements(element); 15640 if (element.hasCommentElement()) { 15641 composeString("comment", element.getCommentElement()); 15642 } 15643 if (element.hasLink()) { 15644 composeReference("link", element.getLink()); 15645 } 15646 composeElementClose(element); 15647 xml.exit(FHIR_NS, name); 15648 } 15649 } 15650 15651 protected void composeDocumentManifest(String name, DocumentManifest element) throws IOException { 15652 if (element != null) { 15653 composeDomainResourceAttributes(element); 15654 xml.enter(FHIR_NS, name); 15655 composeDomainResourceElements(element); 15656 if (element.hasMasterIdentifier()) { 15657 composeIdentifier("masterIdentifier", element.getMasterIdentifier()); 15658 } 15659 if (element.hasIdentifier()) { 15660 for (Identifier e : element.getIdentifier()) 15661 composeIdentifier("identifier", e); 15662 } 15663 if (element.hasSubject()) { 15664 composeReference("subject", element.getSubject()); 15665 } 15666 if (element.hasRecipient()) { 15667 for (Reference e : element.getRecipient()) 15668 composeReference("recipient", e); 15669 } 15670 if (element.hasType()) { 15671 composeCodeableConcept("type", element.getType()); 15672 } 15673 if (element.hasAuthor()) { 15674 for (Reference e : element.getAuthor()) 15675 composeReference("author", e); 15676 } 15677 if (element.hasCreatedElement()) { 15678 composeDateTime("created", element.getCreatedElement()); 15679 } 15680 if (element.hasSourceElement()) { 15681 composeUri("source", element.getSourceElement()); 15682 } 15683 if (element.hasStatusElement()) 15684 composeEnumeration("status", element.getStatusElement(), new Enumerations.DocumentReferenceStatusEnumFactory()); 15685 if (element.hasDescriptionElement()) { 15686 composeString("description", element.getDescriptionElement()); 15687 } 15688 if (element.hasContent()) { 15689 for (DocumentManifest.DocumentManifestContentComponent e : element.getContent()) 15690 composeDocumentManifestDocumentManifestContentComponent("content", e); 15691 } 15692 if (element.hasRelated()) { 15693 for (DocumentManifest.DocumentManifestRelatedComponent e : element.getRelated()) 15694 composeDocumentManifestDocumentManifestRelatedComponent("related", e); 15695 } 15696 composeElementClose(element); 15697 xml.exit(FHIR_NS, name); 15698 } 15699 } 15700 15701 protected void composeDocumentManifestDocumentManifestContentComponent(String name, DocumentManifest.DocumentManifestContentComponent element) throws IOException { 15702 if (element != null) { 15703 composeElementAttributes(element); 15704 xml.enter(FHIR_NS, name); 15705 composeBackboneElements(element); 15706 if (element.hasP()) { 15707 composeType("p", element.getP()); 15708 } composeElementClose(element); 15709 xml.exit(FHIR_NS, name); 15710 } 15711 } 15712 15713 protected void composeDocumentManifestDocumentManifestRelatedComponent(String name, DocumentManifest.DocumentManifestRelatedComponent element) throws IOException { 15714 if (element != null) { 15715 composeElementAttributes(element); 15716 xml.enter(FHIR_NS, name); 15717 composeBackboneElements(element); 15718 if (element.hasIdentifier()) { 15719 composeIdentifier("identifier", element.getIdentifier()); 15720 } 15721 if (element.hasRef()) { 15722 composeReference("ref", element.getRef()); 15723 } 15724 composeElementClose(element); 15725 xml.exit(FHIR_NS, name); 15726 } 15727 } 15728 15729 protected void composeDocumentReference(String name, DocumentReference element) throws IOException { 15730 if (element != null) { 15731 composeDomainResourceAttributes(element); 15732 xml.enter(FHIR_NS, name); 15733 composeDomainResourceElements(element); 15734 if (element.hasMasterIdentifier()) { 15735 composeIdentifier("masterIdentifier", element.getMasterIdentifier()); 15736 } 15737 if (element.hasIdentifier()) { 15738 for (Identifier e : element.getIdentifier()) 15739 composeIdentifier("identifier", e); 15740 } 15741 if (element.hasSubject()) { 15742 composeReference("subject", element.getSubject()); 15743 } 15744 if (element.hasType()) { 15745 composeCodeableConcept("type", element.getType()); 15746 } 15747 if (element.hasClass_()) { 15748 composeCodeableConcept("class", element.getClass_()); 15749 } 15750 if (element.hasAuthor()) { 15751 for (Reference e : element.getAuthor()) 15752 composeReference("author", e); 15753 } 15754 if (element.hasCustodian()) { 15755 composeReference("custodian", element.getCustodian()); 15756 } 15757 if (element.hasAuthenticator()) { 15758 composeReference("authenticator", element.getAuthenticator()); 15759 } 15760 if (element.hasCreatedElement()) { 15761 composeDateTime("created", element.getCreatedElement()); 15762 } 15763 if (element.hasIndexedElement()) { 15764 composeInstant("indexed", element.getIndexedElement()); 15765 } 15766 if (element.hasStatusElement()) 15767 composeEnumeration("status", element.getStatusElement(), new Enumerations.DocumentReferenceStatusEnumFactory()); 15768 if (element.hasDocStatus()) { 15769 composeCodeableConcept("docStatus", element.getDocStatus()); 15770 } 15771 if (element.hasRelatesTo()) { 15772 for (DocumentReference.DocumentReferenceRelatesToComponent e : element.getRelatesTo()) 15773 composeDocumentReferenceDocumentReferenceRelatesToComponent("relatesTo", e); 15774 } 15775 if (element.hasDescriptionElement()) { 15776 composeString("description", element.getDescriptionElement()); 15777 } 15778 if (element.hasSecurityLabel()) { 15779 for (CodeableConcept e : element.getSecurityLabel()) 15780 composeCodeableConcept("securityLabel", e); 15781 } 15782 if (element.hasContent()) { 15783 for (DocumentReference.DocumentReferenceContentComponent e : element.getContent()) 15784 composeDocumentReferenceDocumentReferenceContentComponent("content", e); 15785 } 15786 if (element.hasContext()) { 15787 composeDocumentReferenceDocumentReferenceContextComponent("context", element.getContext()); 15788 } 15789 composeElementClose(element); 15790 xml.exit(FHIR_NS, name); 15791 } 15792 } 15793 15794 protected void composeDocumentReferenceDocumentReferenceRelatesToComponent(String name, DocumentReference.DocumentReferenceRelatesToComponent element) throws IOException { 15795 if (element != null) { 15796 composeElementAttributes(element); 15797 xml.enter(FHIR_NS, name); 15798 composeBackboneElements(element); 15799 if (element.hasCodeElement()) 15800 composeEnumeration("code", element.getCodeElement(), new DocumentReference.DocumentRelationshipTypeEnumFactory()); 15801 if (element.hasTarget()) { 15802 composeReference("target", element.getTarget()); 15803 } 15804 composeElementClose(element); 15805 xml.exit(FHIR_NS, name); 15806 } 15807 } 15808 15809 protected void composeDocumentReferenceDocumentReferenceContentComponent(String name, DocumentReference.DocumentReferenceContentComponent element) throws IOException { 15810 if (element != null) { 15811 composeElementAttributes(element); 15812 xml.enter(FHIR_NS, name); 15813 composeBackboneElements(element); 15814 if (element.hasAttachment()) { 15815 composeAttachment("attachment", element.getAttachment()); 15816 } 15817 if (element.hasFormat()) { 15818 for (Coding e : element.getFormat()) 15819 composeCoding("format", e); 15820 } 15821 composeElementClose(element); 15822 xml.exit(FHIR_NS, name); 15823 } 15824 } 15825 15826 protected void composeDocumentReferenceDocumentReferenceContextComponent(String name, DocumentReference.DocumentReferenceContextComponent element) throws IOException { 15827 if (element != null) { 15828 composeElementAttributes(element); 15829 xml.enter(FHIR_NS, name); 15830 composeBackboneElements(element); 15831 if (element.hasEncounter()) { 15832 composeReference("encounter", element.getEncounter()); 15833 } 15834 if (element.hasEvent()) { 15835 for (CodeableConcept e : element.getEvent()) 15836 composeCodeableConcept("event", e); 15837 } 15838 if (element.hasPeriod()) { 15839 composePeriod("period", element.getPeriod()); 15840 } 15841 if (element.hasFacilityType()) { 15842 composeCodeableConcept("facilityType", element.getFacilityType()); 15843 } 15844 if (element.hasPracticeSetting()) { 15845 composeCodeableConcept("practiceSetting", element.getPracticeSetting()); 15846 } 15847 if (element.hasSourcePatientInfo()) { 15848 composeReference("sourcePatientInfo", element.getSourcePatientInfo()); 15849 } 15850 if (element.hasRelated()) { 15851 for (DocumentReference.DocumentReferenceContextRelatedComponent e : element.getRelated()) 15852 composeDocumentReferenceDocumentReferenceContextRelatedComponent("related", e); 15853 } 15854 composeElementClose(element); 15855 xml.exit(FHIR_NS, name); 15856 } 15857 } 15858 15859 protected void composeDocumentReferenceDocumentReferenceContextRelatedComponent(String name, DocumentReference.DocumentReferenceContextRelatedComponent element) throws IOException { 15860 if (element != null) { 15861 composeElementAttributes(element); 15862 xml.enter(FHIR_NS, name); 15863 composeBackboneElements(element); 15864 if (element.hasIdentifier()) { 15865 composeIdentifier("identifier", element.getIdentifier()); 15866 } 15867 if (element.hasRef()) { 15868 composeReference("ref", element.getRef()); 15869 } 15870 composeElementClose(element); 15871 xml.exit(FHIR_NS, name); 15872 } 15873 } 15874 15875 protected void composeEligibilityRequest(String name, EligibilityRequest element) throws IOException { 15876 if (element != null) { 15877 composeDomainResourceAttributes(element); 15878 xml.enter(FHIR_NS, name); 15879 composeDomainResourceElements(element); 15880 if (element.hasIdentifier()) { 15881 for (Identifier e : element.getIdentifier()) 15882 composeIdentifier("identifier", e); 15883 } 15884 if (element.hasRuleset()) { 15885 composeCoding("ruleset", element.getRuleset()); 15886 } 15887 if (element.hasOriginalRuleset()) { 15888 composeCoding("originalRuleset", element.getOriginalRuleset()); 15889 } 15890 if (element.hasCreatedElement()) { 15891 composeDateTime("created", element.getCreatedElement()); 15892 } 15893 if (element.hasTarget()) { 15894 composeReference("target", element.getTarget()); 15895 } 15896 if (element.hasProvider()) { 15897 composeReference("provider", element.getProvider()); 15898 } 15899 if (element.hasOrganization()) { 15900 composeReference("organization", element.getOrganization()); 15901 } 15902 composeElementClose(element); 15903 xml.exit(FHIR_NS, name); 15904 } 15905 } 15906 15907 protected void composeEligibilityResponse(String name, EligibilityResponse element) throws IOException { 15908 if (element != null) { 15909 composeDomainResourceAttributes(element); 15910 xml.enter(FHIR_NS, name); 15911 composeDomainResourceElements(element); 15912 if (element.hasIdentifier()) { 15913 for (Identifier e : element.getIdentifier()) 15914 composeIdentifier("identifier", e); 15915 } 15916 if (element.hasRequest()) { 15917 composeReference("request", element.getRequest()); 15918 } 15919 if (element.hasOutcomeElement()) 15920 composeEnumeration("outcome", element.getOutcomeElement(), new Enumerations.RemittanceOutcomeEnumFactory()); 15921 if (element.hasDispositionElement()) { 15922 composeString("disposition", element.getDispositionElement()); 15923 } 15924 if (element.hasRuleset()) { 15925 composeCoding("ruleset", element.getRuleset()); 15926 } 15927 if (element.hasOriginalRuleset()) { 15928 composeCoding("originalRuleset", element.getOriginalRuleset()); 15929 } 15930 if (element.hasCreatedElement()) { 15931 composeDateTime("created", element.getCreatedElement()); 15932 } 15933 if (element.hasOrganization()) { 15934 composeReference("organization", element.getOrganization()); 15935 } 15936 if (element.hasRequestProvider()) { 15937 composeReference("requestProvider", element.getRequestProvider()); 15938 } 15939 if (element.hasRequestOrganization()) { 15940 composeReference("requestOrganization", element.getRequestOrganization()); 15941 } 15942 composeElementClose(element); 15943 xml.exit(FHIR_NS, name); 15944 } 15945 } 15946 15947 protected void composeEncounter(String name, Encounter element) throws IOException { 15948 if (element != null) { 15949 composeDomainResourceAttributes(element); 15950 xml.enter(FHIR_NS, name); 15951 composeDomainResourceElements(element); 15952 if (element.hasIdentifier()) { 15953 for (Identifier e : element.getIdentifier()) 15954 composeIdentifier("identifier", e); 15955 } 15956 if (element.hasStatusElement()) 15957 composeEnumeration("status", element.getStatusElement(), new Encounter.EncounterStateEnumFactory()); 15958 if (element.hasStatusHistory()) { 15959 for (Encounter.EncounterStatusHistoryComponent e : element.getStatusHistory()) 15960 composeEncounterEncounterStatusHistoryComponent("statusHistory", e); 15961 } 15962 if (element.hasClass_Element()) 15963 composeEnumeration("class", element.getClass_Element(), new Encounter.EncounterClassEnumFactory()); 15964 if (element.hasType()) { 15965 for (CodeableConcept e : element.getType()) 15966 composeCodeableConcept("type", e); 15967 } 15968 if (element.hasPriority()) { 15969 composeCodeableConcept("priority", element.getPriority()); 15970 } 15971 if (element.hasPatient()) { 15972 composeReference("patient", element.getPatient()); 15973 } 15974 if (element.hasEpisodeOfCare()) { 15975 for (Reference e : element.getEpisodeOfCare()) 15976 composeReference("episodeOfCare", e); 15977 } 15978 if (element.hasIncomingReferral()) { 15979 for (Reference e : element.getIncomingReferral()) 15980 composeReference("incomingReferral", e); 15981 } 15982 if (element.hasParticipant()) { 15983 for (Encounter.EncounterParticipantComponent e : element.getParticipant()) 15984 composeEncounterEncounterParticipantComponent("participant", e); 15985 } 15986 if (element.hasAppointment()) { 15987 composeReference("appointment", element.getAppointment()); 15988 } 15989 if (element.hasPeriod()) { 15990 composePeriod("period", element.getPeriod()); 15991 } 15992 if (element.hasLength()) { 15993 composeDuration("length", element.getLength()); 15994 } 15995 if (element.hasReason()) { 15996 for (CodeableConcept e : element.getReason()) 15997 composeCodeableConcept("reason", e); 15998 } 15999 if (element.hasIndication()) { 16000 for (Reference e : element.getIndication()) 16001 composeReference("indication", e); 16002 } 16003 if (element.hasHospitalization()) { 16004 composeEncounterEncounterHospitalizationComponent("hospitalization", element.getHospitalization()); 16005 } 16006 if (element.hasLocation()) { 16007 for (Encounter.EncounterLocationComponent e : element.getLocation()) 16008 composeEncounterEncounterLocationComponent("location", e); 16009 } 16010 if (element.hasServiceProvider()) { 16011 composeReference("serviceProvider", element.getServiceProvider()); 16012 } 16013 if (element.hasPartOf()) { 16014 composeReference("partOf", element.getPartOf()); 16015 } 16016 composeElementClose(element); 16017 xml.exit(FHIR_NS, name); 16018 } 16019 } 16020 16021 protected void composeEncounterEncounterStatusHistoryComponent(String name, Encounter.EncounterStatusHistoryComponent element) throws IOException { 16022 if (element != null) { 16023 composeElementAttributes(element); 16024 xml.enter(FHIR_NS, name); 16025 composeBackboneElements(element); 16026 if (element.hasStatusElement()) 16027 composeEnumeration("status", element.getStatusElement(), new Encounter.EncounterStateEnumFactory()); 16028 if (element.hasPeriod()) { 16029 composePeriod("period", element.getPeriod()); 16030 } 16031 composeElementClose(element); 16032 xml.exit(FHIR_NS, name); 16033 } 16034 } 16035 16036 protected void composeEncounterEncounterParticipantComponent(String name, Encounter.EncounterParticipantComponent element) throws IOException { 16037 if (element != null) { 16038 composeElementAttributes(element); 16039 xml.enter(FHIR_NS, name); 16040 composeBackboneElements(element); 16041 if (element.hasType()) { 16042 for (CodeableConcept e : element.getType()) 16043 composeCodeableConcept("type", e); 16044 } 16045 if (element.hasPeriod()) { 16046 composePeriod("period", element.getPeriod()); 16047 } 16048 if (element.hasIndividual()) { 16049 composeReference("individual", element.getIndividual()); 16050 } 16051 composeElementClose(element); 16052 xml.exit(FHIR_NS, name); 16053 } 16054 } 16055 16056 protected void composeEncounterEncounterHospitalizationComponent(String name, Encounter.EncounterHospitalizationComponent element) throws IOException { 16057 if (element != null) { 16058 composeElementAttributes(element); 16059 xml.enter(FHIR_NS, name); 16060 composeBackboneElements(element); 16061 if (element.hasPreAdmissionIdentifier()) { 16062 composeIdentifier("preAdmissionIdentifier", element.getPreAdmissionIdentifier()); 16063 } 16064 if (element.hasOrigin()) { 16065 composeReference("origin", element.getOrigin()); 16066 } 16067 if (element.hasAdmitSource()) { 16068 composeCodeableConcept("admitSource", element.getAdmitSource()); 16069 } 16070 if (element.hasAdmittingDiagnosis()) { 16071 for (Reference e : element.getAdmittingDiagnosis()) 16072 composeReference("admittingDiagnosis", e); 16073 } 16074 if (element.hasReAdmission()) { 16075 composeCodeableConcept("reAdmission", element.getReAdmission()); 16076 } 16077 if (element.hasDietPreference()) { 16078 for (CodeableConcept e : element.getDietPreference()) 16079 composeCodeableConcept("dietPreference", e); 16080 } 16081 if (element.hasSpecialCourtesy()) { 16082 for (CodeableConcept e : element.getSpecialCourtesy()) 16083 composeCodeableConcept("specialCourtesy", e); 16084 } 16085 if (element.hasSpecialArrangement()) { 16086 for (CodeableConcept e : element.getSpecialArrangement()) 16087 composeCodeableConcept("specialArrangement", e); 16088 } 16089 if (element.hasDestination()) { 16090 composeReference("destination", element.getDestination()); 16091 } 16092 if (element.hasDischargeDisposition()) { 16093 composeCodeableConcept("dischargeDisposition", element.getDischargeDisposition()); 16094 } 16095 if (element.hasDischargeDiagnosis()) { 16096 for (Reference e : element.getDischargeDiagnosis()) 16097 composeReference("dischargeDiagnosis", e); 16098 } 16099 composeElementClose(element); 16100 xml.exit(FHIR_NS, name); 16101 } 16102 } 16103 16104 protected void composeEncounterEncounterLocationComponent(String name, Encounter.EncounterLocationComponent element) throws IOException { 16105 if (element != null) { 16106 composeElementAttributes(element); 16107 xml.enter(FHIR_NS, name); 16108 composeBackboneElements(element); 16109 if (element.hasLocation()) { 16110 composeReference("location", element.getLocation()); 16111 } 16112 if (element.hasStatusElement()) 16113 composeEnumeration("status", element.getStatusElement(), new Encounter.EncounterLocationStatusEnumFactory()); 16114 if (element.hasPeriod()) { 16115 composePeriod("period", element.getPeriod()); 16116 } 16117 composeElementClose(element); 16118 xml.exit(FHIR_NS, name); 16119 } 16120 } 16121 16122 protected void composeEnrollmentRequest(String name, EnrollmentRequest element) throws IOException { 16123 if (element != null) { 16124 composeDomainResourceAttributes(element); 16125 xml.enter(FHIR_NS, name); 16126 composeDomainResourceElements(element); 16127 if (element.hasIdentifier()) { 16128 for (Identifier e : element.getIdentifier()) 16129 composeIdentifier("identifier", e); 16130 } 16131 if (element.hasRuleset()) { 16132 composeCoding("ruleset", element.getRuleset()); 16133 } 16134 if (element.hasOriginalRuleset()) { 16135 composeCoding("originalRuleset", element.getOriginalRuleset()); 16136 } 16137 if (element.hasCreatedElement()) { 16138 composeDateTime("created", element.getCreatedElement()); 16139 } 16140 if (element.hasTarget()) { 16141 composeReference("target", element.getTarget()); 16142 } 16143 if (element.hasProvider()) { 16144 composeReference("provider", element.getProvider()); 16145 } 16146 if (element.hasOrganization()) { 16147 composeReference("organization", element.getOrganization()); 16148 } 16149 if (element.hasSubject()) { 16150 composeReference("subject", element.getSubject()); 16151 } 16152 if (element.hasCoverage()) { 16153 composeReference("coverage", element.getCoverage()); 16154 } 16155 if (element.hasRelationship()) { 16156 composeCoding("relationship", element.getRelationship()); 16157 } 16158 composeElementClose(element); 16159 xml.exit(FHIR_NS, name); 16160 } 16161 } 16162 16163 protected void composeEnrollmentResponse(String name, EnrollmentResponse element) throws IOException { 16164 if (element != null) { 16165 composeDomainResourceAttributes(element); 16166 xml.enter(FHIR_NS, name); 16167 composeDomainResourceElements(element); 16168 if (element.hasIdentifier()) { 16169 for (Identifier e : element.getIdentifier()) 16170 composeIdentifier("identifier", e); 16171 } 16172 if (element.hasRequest()) { 16173 composeReference("request", element.getRequest()); 16174 } 16175 if (element.hasOutcomeElement()) 16176 composeEnumeration("outcome", element.getOutcomeElement(), new Enumerations.RemittanceOutcomeEnumFactory()); 16177 if (element.hasDispositionElement()) { 16178 composeString("disposition", element.getDispositionElement()); 16179 } 16180 if (element.hasRuleset()) { 16181 composeCoding("ruleset", element.getRuleset()); 16182 } 16183 if (element.hasOriginalRuleset()) { 16184 composeCoding("originalRuleset", element.getOriginalRuleset()); 16185 } 16186 if (element.hasCreatedElement()) { 16187 composeDateTime("created", element.getCreatedElement()); 16188 } 16189 if (element.hasOrganization()) { 16190 composeReference("organization", element.getOrganization()); 16191 } 16192 if (element.hasRequestProvider()) { 16193 composeReference("requestProvider", element.getRequestProvider()); 16194 } 16195 if (element.hasRequestOrganization()) { 16196 composeReference("requestOrganization", element.getRequestOrganization()); 16197 } 16198 composeElementClose(element); 16199 xml.exit(FHIR_NS, name); 16200 } 16201 } 16202 16203 protected void composeEpisodeOfCare(String name, EpisodeOfCare element) throws IOException { 16204 if (element != null) { 16205 composeDomainResourceAttributes(element); 16206 xml.enter(FHIR_NS, name); 16207 composeDomainResourceElements(element); 16208 if (element.hasIdentifier()) { 16209 for (Identifier e : element.getIdentifier()) 16210 composeIdentifier("identifier", e); 16211 } 16212 if (element.hasStatusElement()) 16213 composeEnumeration("status", element.getStatusElement(), new EpisodeOfCare.EpisodeOfCareStatusEnumFactory()); 16214 if (element.hasStatusHistory()) { 16215 for (EpisodeOfCare.EpisodeOfCareStatusHistoryComponent e : element.getStatusHistory()) 16216 composeEpisodeOfCareEpisodeOfCareStatusHistoryComponent("statusHistory", e); 16217 } 16218 if (element.hasType()) { 16219 for (CodeableConcept e : element.getType()) 16220 composeCodeableConcept("type", e); 16221 } 16222 if (element.hasCondition()) { 16223 for (Reference e : element.getCondition()) 16224 composeReference("condition", e); 16225 } 16226 if (element.hasPatient()) { 16227 composeReference("patient", element.getPatient()); 16228 } 16229 if (element.hasManagingOrganization()) { 16230 composeReference("managingOrganization", element.getManagingOrganization()); 16231 } 16232 if (element.hasPeriod()) { 16233 composePeriod("period", element.getPeriod()); 16234 } 16235 if (element.hasReferralRequest()) { 16236 for (Reference e : element.getReferralRequest()) 16237 composeReference("referralRequest", e); 16238 } 16239 if (element.hasCareManager()) { 16240 composeReference("careManager", element.getCareManager()); 16241 } 16242 if (element.hasCareTeam()) { 16243 for (EpisodeOfCare.EpisodeOfCareCareTeamComponent e : element.getCareTeam()) 16244 composeEpisodeOfCareEpisodeOfCareCareTeamComponent("careTeam", e); 16245 } 16246 composeElementClose(element); 16247 xml.exit(FHIR_NS, name); 16248 } 16249 } 16250 16251 protected void composeEpisodeOfCareEpisodeOfCareStatusHistoryComponent(String name, EpisodeOfCare.EpisodeOfCareStatusHistoryComponent element) throws IOException { 16252 if (element != null) { 16253 composeElementAttributes(element); 16254 xml.enter(FHIR_NS, name); 16255 composeBackboneElements(element); 16256 if (element.hasStatusElement()) 16257 composeEnumeration("status", element.getStatusElement(), new EpisodeOfCare.EpisodeOfCareStatusEnumFactory()); 16258 if (element.hasPeriod()) { 16259 composePeriod("period", element.getPeriod()); 16260 } 16261 composeElementClose(element); 16262 xml.exit(FHIR_NS, name); 16263 } 16264 } 16265 16266 protected void composeEpisodeOfCareEpisodeOfCareCareTeamComponent(String name, EpisodeOfCare.EpisodeOfCareCareTeamComponent element) throws IOException { 16267 if (element != null) { 16268 composeElementAttributes(element); 16269 xml.enter(FHIR_NS, name); 16270 composeBackboneElements(element); 16271 if (element.hasRole()) { 16272 for (CodeableConcept e : element.getRole()) 16273 composeCodeableConcept("role", e); 16274 } 16275 if (element.hasPeriod()) { 16276 composePeriod("period", element.getPeriod()); 16277 } 16278 if (element.hasMember()) { 16279 composeReference("member", element.getMember()); 16280 } 16281 composeElementClose(element); 16282 xml.exit(FHIR_NS, name); 16283 } 16284 } 16285 16286 protected void composeExplanationOfBenefit(String name, ExplanationOfBenefit element) throws IOException { 16287 if (element != null) { 16288 composeDomainResourceAttributes(element); 16289 xml.enter(FHIR_NS, name); 16290 composeDomainResourceElements(element); 16291 if (element.hasIdentifier()) { 16292 for (Identifier e : element.getIdentifier()) 16293 composeIdentifier("identifier", e); 16294 } 16295 if (element.hasRequest()) { 16296 composeReference("request", element.getRequest()); 16297 } 16298 if (element.hasOutcomeElement()) 16299 composeEnumeration("outcome", element.getOutcomeElement(), new Enumerations.RemittanceOutcomeEnumFactory()); 16300 if (element.hasDispositionElement()) { 16301 composeString("disposition", element.getDispositionElement()); 16302 } 16303 if (element.hasRuleset()) { 16304 composeCoding("ruleset", element.getRuleset()); 16305 } 16306 if (element.hasOriginalRuleset()) { 16307 composeCoding("originalRuleset", element.getOriginalRuleset()); 16308 } 16309 if (element.hasCreatedElement()) { 16310 composeDateTime("created", element.getCreatedElement()); 16311 } 16312 if (element.hasOrganization()) { 16313 composeReference("organization", element.getOrganization()); 16314 } 16315 if (element.hasRequestProvider()) { 16316 composeReference("requestProvider", element.getRequestProvider()); 16317 } 16318 if (element.hasRequestOrganization()) { 16319 composeReference("requestOrganization", element.getRequestOrganization()); 16320 } 16321 composeElementClose(element); 16322 xml.exit(FHIR_NS, name); 16323 } 16324 } 16325 16326 protected void composeFamilyMemberHistory(String name, FamilyMemberHistory element) throws IOException { 16327 if (element != null) { 16328 composeDomainResourceAttributes(element); 16329 xml.enter(FHIR_NS, name); 16330 composeDomainResourceElements(element); 16331 if (element.hasIdentifier()) { 16332 for (Identifier e : element.getIdentifier()) 16333 composeIdentifier("identifier", e); 16334 } 16335 if (element.hasPatient()) { 16336 composeReference("patient", element.getPatient()); 16337 } 16338 if (element.hasDateElement()) { 16339 composeDateTime("date", element.getDateElement()); 16340 } 16341 if (element.hasStatusElement()) 16342 composeEnumeration("status", element.getStatusElement(), new FamilyMemberHistory.FamilyHistoryStatusEnumFactory()); 16343 if (element.hasNameElement()) { 16344 composeString("name", element.getNameElement()); 16345 } 16346 if (element.hasRelationship()) { 16347 composeCodeableConcept("relationship", element.getRelationship()); 16348 } 16349 if (element.hasGenderElement()) 16350 composeEnumeration("gender", element.getGenderElement(), new Enumerations.AdministrativeGenderEnumFactory()); 16351 if (element.hasBorn()) { 16352 composeType("born", element.getBorn()); 16353 } if (element.hasAge()) { 16354 composeType("age", element.getAge()); 16355 } if (element.hasDeceased()) { 16356 composeType("deceased", element.getDeceased()); 16357 } if (element.hasNote()) { 16358 composeAnnotation("note", element.getNote()); 16359 } 16360 if (element.hasCondition()) { 16361 for (FamilyMemberHistory.FamilyMemberHistoryConditionComponent e : element.getCondition()) 16362 composeFamilyMemberHistoryFamilyMemberHistoryConditionComponent("condition", e); 16363 } 16364 composeElementClose(element); 16365 xml.exit(FHIR_NS, name); 16366 } 16367 } 16368 16369 protected void composeFamilyMemberHistoryFamilyMemberHistoryConditionComponent(String name, FamilyMemberHistory.FamilyMemberHistoryConditionComponent element) throws IOException { 16370 if (element != null) { 16371 composeElementAttributes(element); 16372 xml.enter(FHIR_NS, name); 16373 composeBackboneElements(element); 16374 if (element.hasCode()) { 16375 composeCodeableConcept("code", element.getCode()); 16376 } 16377 if (element.hasOutcome()) { 16378 composeCodeableConcept("outcome", element.getOutcome()); 16379 } 16380 if (element.hasOnset()) { 16381 composeType("onset", element.getOnset()); 16382 } if (element.hasNote()) { 16383 composeAnnotation("note", element.getNote()); 16384 } 16385 composeElementClose(element); 16386 xml.exit(FHIR_NS, name); 16387 } 16388 } 16389 16390 protected void composeFlag(String name, Flag element) throws IOException { 16391 if (element != null) { 16392 composeDomainResourceAttributes(element); 16393 xml.enter(FHIR_NS, name); 16394 composeDomainResourceElements(element); 16395 if (element.hasIdentifier()) { 16396 for (Identifier e : element.getIdentifier()) 16397 composeIdentifier("identifier", e); 16398 } 16399 if (element.hasCategory()) { 16400 composeCodeableConcept("category", element.getCategory()); 16401 } 16402 if (element.hasStatusElement()) 16403 composeEnumeration("status", element.getStatusElement(), new Flag.FlagStatusEnumFactory()); 16404 if (element.hasPeriod()) { 16405 composePeriod("period", element.getPeriod()); 16406 } 16407 if (element.hasSubject()) { 16408 composeReference("subject", element.getSubject()); 16409 } 16410 if (element.hasEncounter()) { 16411 composeReference("encounter", element.getEncounter()); 16412 } 16413 if (element.hasAuthor()) { 16414 composeReference("author", element.getAuthor()); 16415 } 16416 if (element.hasCode()) { 16417 composeCodeableConcept("code", element.getCode()); 16418 } 16419 composeElementClose(element); 16420 xml.exit(FHIR_NS, name); 16421 } 16422 } 16423 16424 protected void composeGoal(String name, Goal element) throws IOException { 16425 if (element != null) { 16426 composeDomainResourceAttributes(element); 16427 xml.enter(FHIR_NS, name); 16428 composeDomainResourceElements(element); 16429 if (element.hasIdentifier()) { 16430 for (Identifier e : element.getIdentifier()) 16431 composeIdentifier("identifier", e); 16432 } 16433 if (element.hasSubject()) { 16434 composeReference("subject", element.getSubject()); 16435 } 16436 if (element.hasStart()) { 16437 composeType("start", element.getStart()); 16438 } if (element.hasTarget()) { 16439 composeType("target", element.getTarget()); 16440 } if (element.hasCategory()) { 16441 for (CodeableConcept e : element.getCategory()) 16442 composeCodeableConcept("category", e); 16443 } 16444 if (element.hasDescriptionElement()) { 16445 composeString("description", element.getDescriptionElement()); 16446 } 16447 if (element.hasStatusElement()) 16448 composeEnumeration("status", element.getStatusElement(), new Goal.GoalStatusEnumFactory()); 16449 if (element.hasStatusDateElement()) { 16450 composeDate("statusDate", element.getStatusDateElement()); 16451 } 16452 if (element.hasStatusReason()) { 16453 composeCodeableConcept("statusReason", element.getStatusReason()); 16454 } 16455 if (element.hasAuthor()) { 16456 composeReference("author", element.getAuthor()); 16457 } 16458 if (element.hasPriority()) { 16459 composeCodeableConcept("priority", element.getPriority()); 16460 } 16461 if (element.hasAddresses()) { 16462 for (Reference e : element.getAddresses()) 16463 composeReference("addresses", e); 16464 } 16465 if (element.hasNote()) { 16466 for (Annotation e : element.getNote()) 16467 composeAnnotation("note", e); 16468 } 16469 if (element.hasOutcome()) { 16470 for (Goal.GoalOutcomeComponent e : element.getOutcome()) 16471 composeGoalGoalOutcomeComponent("outcome", e); 16472 } 16473 composeElementClose(element); 16474 xml.exit(FHIR_NS, name); 16475 } 16476 } 16477 16478 protected void composeGoalGoalOutcomeComponent(String name, Goal.GoalOutcomeComponent element) throws IOException { 16479 if (element != null) { 16480 composeElementAttributes(element); 16481 xml.enter(FHIR_NS, name); 16482 composeBackboneElements(element); 16483 if (element.hasResult()) { 16484 composeType("result", element.getResult()); 16485 } composeElementClose(element); 16486 xml.exit(FHIR_NS, name); 16487 } 16488 } 16489 16490 protected void composeGroup(String name, Group element) throws IOException { 16491 if (element != null) { 16492 composeDomainResourceAttributes(element); 16493 xml.enter(FHIR_NS, name); 16494 composeDomainResourceElements(element); 16495 if (element.hasIdentifier()) { 16496 for (Identifier e : element.getIdentifier()) 16497 composeIdentifier("identifier", e); 16498 } 16499 if (element.hasTypeElement()) 16500 composeEnumeration("type", element.getTypeElement(), new Group.GroupTypeEnumFactory()); 16501 if (element.hasActualElement()) { 16502 composeBoolean("actual", element.getActualElement()); 16503 } 16504 if (element.hasCode()) { 16505 composeCodeableConcept("code", element.getCode()); 16506 } 16507 if (element.hasNameElement()) { 16508 composeString("name", element.getNameElement()); 16509 } 16510 if (element.hasQuantityElement()) { 16511 composeUnsignedInt("quantity", element.getQuantityElement()); 16512 } 16513 if (element.hasCharacteristic()) { 16514 for (Group.GroupCharacteristicComponent e : element.getCharacteristic()) 16515 composeGroupGroupCharacteristicComponent("characteristic", e); 16516 } 16517 if (element.hasMember()) { 16518 for (Group.GroupMemberComponent e : element.getMember()) 16519 composeGroupGroupMemberComponent("member", e); 16520 } 16521 composeElementClose(element); 16522 xml.exit(FHIR_NS, name); 16523 } 16524 } 16525 16526 protected void composeGroupGroupCharacteristicComponent(String name, Group.GroupCharacteristicComponent element) throws IOException { 16527 if (element != null) { 16528 composeElementAttributes(element); 16529 xml.enter(FHIR_NS, name); 16530 composeBackboneElements(element); 16531 if (element.hasCode()) { 16532 composeCodeableConcept("code", element.getCode()); 16533 } 16534 if (element.hasValue()) { 16535 composeType("value", element.getValue()); 16536 } if (element.hasExcludeElement()) { 16537 composeBoolean("exclude", element.getExcludeElement()); 16538 } 16539 if (element.hasPeriod()) { 16540 composePeriod("period", element.getPeriod()); 16541 } 16542 composeElementClose(element); 16543 xml.exit(FHIR_NS, name); 16544 } 16545 } 16546 16547 protected void composeGroupGroupMemberComponent(String name, Group.GroupMemberComponent element) throws IOException { 16548 if (element != null) { 16549 composeElementAttributes(element); 16550 xml.enter(FHIR_NS, name); 16551 composeBackboneElements(element); 16552 if (element.hasEntity()) { 16553 composeReference("entity", element.getEntity()); 16554 } 16555 if (element.hasPeriod()) { 16556 composePeriod("period", element.getPeriod()); 16557 } 16558 if (element.hasInactiveElement()) { 16559 composeBoolean("inactive", element.getInactiveElement()); 16560 } 16561 composeElementClose(element); 16562 xml.exit(FHIR_NS, name); 16563 } 16564 } 16565 16566 protected void composeHealthcareService(String name, HealthcareService element) throws IOException { 16567 if (element != null) { 16568 composeDomainResourceAttributes(element); 16569 xml.enter(FHIR_NS, name); 16570 composeDomainResourceElements(element); 16571 if (element.hasIdentifier()) { 16572 for (Identifier e : element.getIdentifier()) 16573 composeIdentifier("identifier", e); 16574 } 16575 if (element.hasProvidedBy()) { 16576 composeReference("providedBy", element.getProvidedBy()); 16577 } 16578 if (element.hasServiceCategory()) { 16579 composeCodeableConcept("serviceCategory", element.getServiceCategory()); 16580 } 16581 if (element.hasServiceType()) { 16582 for (HealthcareService.ServiceTypeComponent e : element.getServiceType()) 16583 composeHealthcareServiceServiceTypeComponent("serviceType", e); 16584 } 16585 if (element.hasLocation()) { 16586 composeReference("location", element.getLocation()); 16587 } 16588 if (element.hasServiceNameElement()) { 16589 composeString("serviceName", element.getServiceNameElement()); 16590 } 16591 if (element.hasCommentElement()) { 16592 composeString("comment", element.getCommentElement()); 16593 } 16594 if (element.hasExtraDetailsElement()) { 16595 composeString("extraDetails", element.getExtraDetailsElement()); 16596 } 16597 if (element.hasPhoto()) { 16598 composeAttachment("photo", element.getPhoto()); 16599 } 16600 if (element.hasTelecom()) { 16601 for (ContactPoint e : element.getTelecom()) 16602 composeContactPoint("telecom", e); 16603 } 16604 if (element.hasCoverageArea()) { 16605 for (Reference e : element.getCoverageArea()) 16606 composeReference("coverageArea", e); 16607 } 16608 if (element.hasServiceProvisionCode()) { 16609 for (CodeableConcept e : element.getServiceProvisionCode()) 16610 composeCodeableConcept("serviceProvisionCode", e); 16611 } 16612 if (element.hasEligibility()) { 16613 composeCodeableConcept("eligibility", element.getEligibility()); 16614 } 16615 if (element.hasEligibilityNoteElement()) { 16616 composeString("eligibilityNote", element.getEligibilityNoteElement()); 16617 } 16618 if (element.hasProgramName()) { 16619 for (StringType e : element.getProgramName()) 16620 composeString("programName", e); 16621 } 16622 if (element.hasCharacteristic()) { 16623 for (CodeableConcept e : element.getCharacteristic()) 16624 composeCodeableConcept("characteristic", e); 16625 } 16626 if (element.hasReferralMethod()) { 16627 for (CodeableConcept e : element.getReferralMethod()) 16628 composeCodeableConcept("referralMethod", e); 16629 } 16630 if (element.hasPublicKeyElement()) { 16631 composeString("publicKey", element.getPublicKeyElement()); 16632 } 16633 if (element.hasAppointmentRequiredElement()) { 16634 composeBoolean("appointmentRequired", element.getAppointmentRequiredElement()); 16635 } 16636 if (element.hasAvailableTime()) { 16637 for (HealthcareService.HealthcareServiceAvailableTimeComponent e : element.getAvailableTime()) 16638 composeHealthcareServiceHealthcareServiceAvailableTimeComponent("availableTime", e); 16639 } 16640 if (element.hasNotAvailable()) { 16641 for (HealthcareService.HealthcareServiceNotAvailableComponent e : element.getNotAvailable()) 16642 composeHealthcareServiceHealthcareServiceNotAvailableComponent("notAvailable", e); 16643 } 16644 if (element.hasAvailabilityExceptionsElement()) { 16645 composeString("availabilityExceptions", element.getAvailabilityExceptionsElement()); 16646 } 16647 composeElementClose(element); 16648 xml.exit(FHIR_NS, name); 16649 } 16650 } 16651 16652 protected void composeHealthcareServiceServiceTypeComponent(String name, HealthcareService.ServiceTypeComponent element) throws IOException { 16653 if (element != null) { 16654 composeElementAttributes(element); 16655 xml.enter(FHIR_NS, name); 16656 composeBackboneElements(element); 16657 if (element.hasType()) { 16658 composeCodeableConcept("type", element.getType()); 16659 } 16660 if (element.hasSpecialty()) { 16661 for (CodeableConcept e : element.getSpecialty()) 16662 composeCodeableConcept("specialty", e); 16663 } 16664 composeElementClose(element); 16665 xml.exit(FHIR_NS, name); 16666 } 16667 } 16668 16669 protected void composeHealthcareServiceHealthcareServiceAvailableTimeComponent(String name, HealthcareService.HealthcareServiceAvailableTimeComponent element) throws IOException { 16670 if (element != null) { 16671 composeElementAttributes(element); 16672 xml.enter(FHIR_NS, name); 16673 composeBackboneElements(element); 16674 if (element.hasDaysOfWeek()) 16675 for (Enumeration<HealthcareService.DaysOfWeek> e : element.getDaysOfWeek()) 16676 composeEnumeration("daysOfWeek", e, new HealthcareService.DaysOfWeekEnumFactory()); 16677 if (element.hasAllDayElement()) { 16678 composeBoolean("allDay", element.getAllDayElement()); 16679 } 16680 if (element.hasAvailableStartTimeElement()) { 16681 composeTime("availableStartTime", element.getAvailableStartTimeElement()); 16682 } 16683 if (element.hasAvailableEndTimeElement()) { 16684 composeTime("availableEndTime", element.getAvailableEndTimeElement()); 16685 } 16686 composeElementClose(element); 16687 xml.exit(FHIR_NS, name); 16688 } 16689 } 16690 16691 protected void composeHealthcareServiceHealthcareServiceNotAvailableComponent(String name, HealthcareService.HealthcareServiceNotAvailableComponent element) throws IOException { 16692 if (element != null) { 16693 composeElementAttributes(element); 16694 xml.enter(FHIR_NS, name); 16695 composeBackboneElements(element); 16696 if (element.hasDescriptionElement()) { 16697 composeString("description", element.getDescriptionElement()); 16698 } 16699 if (element.hasDuring()) { 16700 composePeriod("during", element.getDuring()); 16701 } 16702 composeElementClose(element); 16703 xml.exit(FHIR_NS, name); 16704 } 16705 } 16706 16707 protected void composeImagingObjectSelection(String name, ImagingObjectSelection element) throws IOException { 16708 if (element != null) { 16709 composeDomainResourceAttributes(element); 16710 xml.enter(FHIR_NS, name); 16711 composeDomainResourceElements(element); 16712 if (element.hasUidElement()) { 16713 composeOid("uid", element.getUidElement()); 16714 } 16715 if (element.hasPatient()) { 16716 composeReference("patient", element.getPatient()); 16717 } 16718 if (element.hasTitle()) { 16719 composeCodeableConcept("title", element.getTitle()); 16720 } 16721 if (element.hasDescriptionElement()) { 16722 composeString("description", element.getDescriptionElement()); 16723 } 16724 if (element.hasAuthor()) { 16725 composeReference("author", element.getAuthor()); 16726 } 16727 if (element.hasAuthoringTimeElement()) { 16728 composeDateTime("authoringTime", element.getAuthoringTimeElement()); 16729 } 16730 if (element.hasStudy()) { 16731 for (ImagingObjectSelection.StudyComponent e : element.getStudy()) 16732 composeImagingObjectSelectionStudyComponent("study", e); 16733 } 16734 composeElementClose(element); 16735 xml.exit(FHIR_NS, name); 16736 } 16737 } 16738 16739 protected void composeImagingObjectSelectionStudyComponent(String name, ImagingObjectSelection.StudyComponent element) throws IOException { 16740 if (element != null) { 16741 composeElementAttributes(element); 16742 xml.enter(FHIR_NS, name); 16743 composeBackboneElements(element); 16744 if (element.hasUidElement()) { 16745 composeOid("uid", element.getUidElement()); 16746 } 16747 if (element.hasUrlElement()) { 16748 composeUri("url", element.getUrlElement()); 16749 } 16750 if (element.hasImagingStudy()) { 16751 composeReference("imagingStudy", element.getImagingStudy()); 16752 } 16753 if (element.hasSeries()) { 16754 for (ImagingObjectSelection.SeriesComponent e : element.getSeries()) 16755 composeImagingObjectSelectionSeriesComponent("series", e); 16756 } 16757 composeElementClose(element); 16758 xml.exit(FHIR_NS, name); 16759 } 16760 } 16761 16762 protected void composeImagingObjectSelectionSeriesComponent(String name, ImagingObjectSelection.SeriesComponent element) throws IOException { 16763 if (element != null) { 16764 composeElementAttributes(element); 16765 xml.enter(FHIR_NS, name); 16766 composeBackboneElements(element); 16767 if (element.hasUidElement()) { 16768 composeOid("uid", element.getUidElement()); 16769 } 16770 if (element.hasUrlElement()) { 16771 composeUri("url", element.getUrlElement()); 16772 } 16773 if (element.hasInstance()) { 16774 for (ImagingObjectSelection.InstanceComponent e : element.getInstance()) 16775 composeImagingObjectSelectionInstanceComponent("instance", e); 16776 } 16777 composeElementClose(element); 16778 xml.exit(FHIR_NS, name); 16779 } 16780 } 16781 16782 protected void composeImagingObjectSelectionInstanceComponent(String name, ImagingObjectSelection.InstanceComponent element) throws IOException { 16783 if (element != null) { 16784 composeElementAttributes(element); 16785 xml.enter(FHIR_NS, name); 16786 composeBackboneElements(element); 16787 if (element.hasSopClassElement()) { 16788 composeOid("sopClass", element.getSopClassElement()); 16789 } 16790 if (element.hasUidElement()) { 16791 composeOid("uid", element.getUidElement()); 16792 } 16793 if (element.hasUrlElement()) { 16794 composeUri("url", element.getUrlElement()); 16795 } 16796 if (element.hasFrames()) { 16797 for (ImagingObjectSelection.FramesComponent e : element.getFrames()) 16798 composeImagingObjectSelectionFramesComponent("frames", e); 16799 } 16800 composeElementClose(element); 16801 xml.exit(FHIR_NS, name); 16802 } 16803 } 16804 16805 protected void composeImagingObjectSelectionFramesComponent(String name, ImagingObjectSelection.FramesComponent element) throws IOException { 16806 if (element != null) { 16807 composeElementAttributes(element); 16808 xml.enter(FHIR_NS, name); 16809 composeBackboneElements(element); 16810 if (element.hasFrameNumbers()) { 16811 for (UnsignedIntType e : element.getFrameNumbers()) 16812 composeUnsignedInt("frameNumbers", e); 16813 } 16814 if (element.hasUrlElement()) { 16815 composeUri("url", element.getUrlElement()); 16816 } 16817 composeElementClose(element); 16818 xml.exit(FHIR_NS, name); 16819 } 16820 } 16821 16822 protected void composeImagingStudy(String name, ImagingStudy element) throws IOException { 16823 if (element != null) { 16824 composeDomainResourceAttributes(element); 16825 xml.enter(FHIR_NS, name); 16826 composeDomainResourceElements(element); 16827 if (element.hasStartedElement()) { 16828 composeDateTime("started", element.getStartedElement()); 16829 } 16830 if (element.hasPatient()) { 16831 composeReference("patient", element.getPatient()); 16832 } 16833 if (element.hasUidElement()) { 16834 composeOid("uid", element.getUidElement()); 16835 } 16836 if (element.hasAccession()) { 16837 composeIdentifier("accession", element.getAccession()); 16838 } 16839 if (element.hasIdentifier()) { 16840 for (Identifier e : element.getIdentifier()) 16841 composeIdentifier("identifier", e); 16842 } 16843 if (element.hasOrder()) { 16844 for (Reference e : element.getOrder()) 16845 composeReference("order", e); 16846 } 16847 if (element.hasModalityList()) { 16848 for (Coding e : element.getModalityList()) 16849 composeCoding("modalityList", e); 16850 } 16851 if (element.hasReferrer()) { 16852 composeReference("referrer", element.getReferrer()); 16853 } 16854 if (element.hasAvailabilityElement()) 16855 composeEnumeration("availability", element.getAvailabilityElement(), new ImagingStudy.InstanceAvailabilityEnumFactory()); 16856 if (element.hasUrlElement()) { 16857 composeUri("url", element.getUrlElement()); 16858 } 16859 if (element.hasNumberOfSeriesElement()) { 16860 composeUnsignedInt("numberOfSeries", element.getNumberOfSeriesElement()); 16861 } 16862 if (element.hasNumberOfInstancesElement()) { 16863 composeUnsignedInt("numberOfInstances", element.getNumberOfInstancesElement()); 16864 } 16865 if (element.hasProcedure()) { 16866 for (Reference e : element.getProcedure()) 16867 composeReference("procedure", e); 16868 } 16869 if (element.hasInterpreter()) { 16870 composeReference("interpreter", element.getInterpreter()); 16871 } 16872 if (element.hasDescriptionElement()) { 16873 composeString("description", element.getDescriptionElement()); 16874 } 16875 if (element.hasSeries()) { 16876 for (ImagingStudy.ImagingStudySeriesComponent e : element.getSeries()) 16877 composeImagingStudyImagingStudySeriesComponent("series", e); 16878 } 16879 composeElementClose(element); 16880 xml.exit(FHIR_NS, name); 16881 } 16882 } 16883 16884 protected void composeImagingStudyImagingStudySeriesComponent(String name, ImagingStudy.ImagingStudySeriesComponent element) throws IOException { 16885 if (element != null) { 16886 composeElementAttributes(element); 16887 xml.enter(FHIR_NS, name); 16888 composeBackboneElements(element); 16889 if (element.hasNumberElement()) { 16890 composeUnsignedInt("number", element.getNumberElement()); 16891 } 16892 if (element.hasModality()) { 16893 composeCoding("modality", element.getModality()); 16894 } 16895 if (element.hasUidElement()) { 16896 composeOid("uid", element.getUidElement()); 16897 } 16898 if (element.hasDescriptionElement()) { 16899 composeString("description", element.getDescriptionElement()); 16900 } 16901 if (element.hasNumberOfInstancesElement()) { 16902 composeUnsignedInt("numberOfInstances", element.getNumberOfInstancesElement()); 16903 } 16904 if (element.hasAvailabilityElement()) 16905 composeEnumeration("availability", element.getAvailabilityElement(), new ImagingStudy.InstanceAvailabilityEnumFactory()); 16906 if (element.hasUrlElement()) { 16907 composeUri("url", element.getUrlElement()); 16908 } 16909 if (element.hasBodySite()) { 16910 composeCoding("bodySite", element.getBodySite()); 16911 } 16912 if (element.hasLaterality()) { 16913 composeCoding("laterality", element.getLaterality()); 16914 } 16915 if (element.hasStartedElement()) { 16916 composeDateTime("started", element.getStartedElement()); 16917 } 16918 if (element.hasInstance()) { 16919 for (ImagingStudy.ImagingStudySeriesInstanceComponent e : element.getInstance()) 16920 composeImagingStudyImagingStudySeriesInstanceComponent("instance", e); 16921 } 16922 composeElementClose(element); 16923 xml.exit(FHIR_NS, name); 16924 } 16925 } 16926 16927 protected void composeImagingStudyImagingStudySeriesInstanceComponent(String name, ImagingStudy.ImagingStudySeriesInstanceComponent element) throws IOException { 16928 if (element != null) { 16929 composeElementAttributes(element); 16930 xml.enter(FHIR_NS, name); 16931 composeBackboneElements(element); 16932 if (element.hasNumberElement()) { 16933 composeUnsignedInt("number", element.getNumberElement()); 16934 } 16935 if (element.hasUidElement()) { 16936 composeOid("uid", element.getUidElement()); 16937 } 16938 if (element.hasSopClassElement()) { 16939 composeOid("sopClass", element.getSopClassElement()); 16940 } 16941 if (element.hasTypeElement()) { 16942 composeString("type", element.getTypeElement()); 16943 } 16944 if (element.hasTitleElement()) { 16945 composeString("title", element.getTitleElement()); 16946 } 16947 if (element.hasContent()) { 16948 for (Attachment e : element.getContent()) 16949 composeAttachment("content", e); 16950 } 16951 composeElementClose(element); 16952 xml.exit(FHIR_NS, name); 16953 } 16954 } 16955 16956 protected void composeImmunization(String name, Immunization element) throws IOException { 16957 if (element != null) { 16958 composeDomainResourceAttributes(element); 16959 xml.enter(FHIR_NS, name); 16960 composeDomainResourceElements(element); 16961 if (element.hasIdentifier()) { 16962 for (Identifier e : element.getIdentifier()) 16963 composeIdentifier("identifier", e); 16964 } 16965 if (element.hasStatusElement()) { 16966 composeCode("status", element.getStatusElement()); 16967 } 16968 if (element.hasDateElement()) { 16969 composeDateTime("date", element.getDateElement()); 16970 } 16971 if (element.hasVaccineCode()) { 16972 composeCodeableConcept("vaccineCode", element.getVaccineCode()); 16973 } 16974 if (element.hasPatient()) { 16975 composeReference("patient", element.getPatient()); 16976 } 16977 if (element.hasWasNotGivenElement()) { 16978 composeBoolean("wasNotGiven", element.getWasNotGivenElement()); 16979 } 16980 if (element.hasReportedElement()) { 16981 composeBoolean("reported", element.getReportedElement()); 16982 } 16983 if (element.hasPerformer()) { 16984 composeReference("performer", element.getPerformer()); 16985 } 16986 if (element.hasRequester()) { 16987 composeReference("requester", element.getRequester()); 16988 } 16989 if (element.hasEncounter()) { 16990 composeReference("encounter", element.getEncounter()); 16991 } 16992 if (element.hasManufacturer()) { 16993 composeReference("manufacturer", element.getManufacturer()); 16994 } 16995 if (element.hasLocation()) { 16996 composeReference("location", element.getLocation()); 16997 } 16998 if (element.hasLotNumberElement()) { 16999 composeString("lotNumber", element.getLotNumberElement()); 17000 } 17001 if (element.hasExpirationDateElement()) { 17002 composeDate("expirationDate", element.getExpirationDateElement()); 17003 } 17004 if (element.hasSite()) { 17005 composeCodeableConcept("site", element.getSite()); 17006 } 17007 if (element.hasRoute()) { 17008 composeCodeableConcept("route", element.getRoute()); 17009 } 17010 if (element.hasDoseQuantity()) { 17011 composeSimpleQuantity("doseQuantity", element.getDoseQuantity()); 17012 } 17013 if (element.hasNote()) { 17014 for (Annotation e : element.getNote()) 17015 composeAnnotation("note", e); 17016 } 17017 if (element.hasExplanation()) { 17018 composeImmunizationImmunizationExplanationComponent("explanation", element.getExplanation()); 17019 } 17020 if (element.hasReaction()) { 17021 for (Immunization.ImmunizationReactionComponent e : element.getReaction()) 17022 composeImmunizationImmunizationReactionComponent("reaction", e); 17023 } 17024 if (element.hasVaccinationProtocol()) { 17025 for (Immunization.ImmunizationVaccinationProtocolComponent e : element.getVaccinationProtocol()) 17026 composeImmunizationImmunizationVaccinationProtocolComponent("vaccinationProtocol", e); 17027 } 17028 composeElementClose(element); 17029 xml.exit(FHIR_NS, name); 17030 } 17031 } 17032 17033 protected void composeImmunizationImmunizationExplanationComponent(String name, Immunization.ImmunizationExplanationComponent element) throws IOException { 17034 if (element != null) { 17035 composeElementAttributes(element); 17036 xml.enter(FHIR_NS, name); 17037 composeBackboneElements(element); 17038 if (element.hasReason()) { 17039 for (CodeableConcept e : element.getReason()) 17040 composeCodeableConcept("reason", e); 17041 } 17042 if (element.hasReasonNotGiven()) { 17043 for (CodeableConcept e : element.getReasonNotGiven()) 17044 composeCodeableConcept("reasonNotGiven", e); 17045 } 17046 composeElementClose(element); 17047 xml.exit(FHIR_NS, name); 17048 } 17049 } 17050 17051 protected void composeImmunizationImmunizationReactionComponent(String name, Immunization.ImmunizationReactionComponent element) throws IOException { 17052 if (element != null) { 17053 composeElementAttributes(element); 17054 xml.enter(FHIR_NS, name); 17055 composeBackboneElements(element); 17056 if (element.hasDateElement()) { 17057 composeDateTime("date", element.getDateElement()); 17058 } 17059 if (element.hasDetail()) { 17060 composeReference("detail", element.getDetail()); 17061 } 17062 if (element.hasReportedElement()) { 17063 composeBoolean("reported", element.getReportedElement()); 17064 } 17065 composeElementClose(element); 17066 xml.exit(FHIR_NS, name); 17067 } 17068 } 17069 17070 protected void composeImmunizationImmunizationVaccinationProtocolComponent(String name, Immunization.ImmunizationVaccinationProtocolComponent element) throws IOException { 17071 if (element != null) { 17072 composeElementAttributes(element); 17073 xml.enter(FHIR_NS, name); 17074 composeBackboneElements(element); 17075 if (element.hasDoseSequenceElement()) { 17076 composePositiveInt("doseSequence", element.getDoseSequenceElement()); 17077 } 17078 if (element.hasDescriptionElement()) { 17079 composeString("description", element.getDescriptionElement()); 17080 } 17081 if (element.hasAuthority()) { 17082 composeReference("authority", element.getAuthority()); 17083 } 17084 if (element.hasSeriesElement()) { 17085 composeString("series", element.getSeriesElement()); 17086 } 17087 if (element.hasSeriesDosesElement()) { 17088 composePositiveInt("seriesDoses", element.getSeriesDosesElement()); 17089 } 17090 if (element.hasTargetDisease()) { 17091 for (CodeableConcept e : element.getTargetDisease()) 17092 composeCodeableConcept("targetDisease", e); 17093 } 17094 if (element.hasDoseStatus()) { 17095 composeCodeableConcept("doseStatus", element.getDoseStatus()); 17096 } 17097 if (element.hasDoseStatusReason()) { 17098 composeCodeableConcept("doseStatusReason", element.getDoseStatusReason()); 17099 } 17100 composeElementClose(element); 17101 xml.exit(FHIR_NS, name); 17102 } 17103 } 17104 17105 protected void composeImmunizationRecommendation(String name, ImmunizationRecommendation element) throws IOException { 17106 if (element != null) { 17107 composeDomainResourceAttributes(element); 17108 xml.enter(FHIR_NS, name); 17109 composeDomainResourceElements(element); 17110 if (element.hasIdentifier()) { 17111 for (Identifier e : element.getIdentifier()) 17112 composeIdentifier("identifier", e); 17113 } 17114 if (element.hasPatient()) { 17115 composeReference("patient", element.getPatient()); 17116 } 17117 if (element.hasRecommendation()) { 17118 for (ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent e : element.getRecommendation()) 17119 composeImmunizationRecommendationImmunizationRecommendationRecommendationComponent("recommendation", e); 17120 } 17121 composeElementClose(element); 17122 xml.exit(FHIR_NS, name); 17123 } 17124 } 17125 17126 protected void composeImmunizationRecommendationImmunizationRecommendationRecommendationComponent(String name, ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent element) throws IOException { 17127 if (element != null) { 17128 composeElementAttributes(element); 17129 xml.enter(FHIR_NS, name); 17130 composeBackboneElements(element); 17131 if (element.hasDateElement()) { 17132 composeDateTime("date", element.getDateElement()); 17133 } 17134 if (element.hasVaccineCode()) { 17135 composeCodeableConcept("vaccineCode", element.getVaccineCode()); 17136 } 17137 if (element.hasDoseNumberElement()) { 17138 composePositiveInt("doseNumber", element.getDoseNumberElement()); 17139 } 17140 if (element.hasForecastStatus()) { 17141 composeCodeableConcept("forecastStatus", element.getForecastStatus()); 17142 } 17143 if (element.hasDateCriterion()) { 17144 for (ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent e : element.getDateCriterion()) 17145 composeImmunizationRecommendationImmunizationRecommendationRecommendationDateCriterionComponent("dateCriterion", e); 17146 } 17147 if (element.hasProtocol()) { 17148 composeImmunizationRecommendationImmunizationRecommendationRecommendationProtocolComponent("protocol", element.getProtocol()); 17149 } 17150 if (element.hasSupportingImmunization()) { 17151 for (Reference e : element.getSupportingImmunization()) 17152 composeReference("supportingImmunization", e); 17153 } 17154 if (element.hasSupportingPatientInformation()) { 17155 for (Reference e : element.getSupportingPatientInformation()) 17156 composeReference("supportingPatientInformation", e); 17157 } 17158 composeElementClose(element); 17159 xml.exit(FHIR_NS, name); 17160 } 17161 } 17162 17163 protected void composeImmunizationRecommendationImmunizationRecommendationRecommendationDateCriterionComponent(String name, ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent element) throws IOException { 17164 if (element != null) { 17165 composeElementAttributes(element); 17166 xml.enter(FHIR_NS, name); 17167 composeBackboneElements(element); 17168 if (element.hasCode()) { 17169 composeCodeableConcept("code", element.getCode()); 17170 } 17171 if (element.hasValueElement()) { 17172 composeDateTime("value", element.getValueElement()); 17173 } 17174 composeElementClose(element); 17175 xml.exit(FHIR_NS, name); 17176 } 17177 } 17178 17179 protected void composeImmunizationRecommendationImmunizationRecommendationRecommendationProtocolComponent(String name, ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent element) throws IOException { 17180 if (element != null) { 17181 composeElementAttributes(element); 17182 xml.enter(FHIR_NS, name); 17183 composeBackboneElements(element); 17184 if (element.hasDoseSequenceElement()) { 17185 composeInteger("doseSequence", element.getDoseSequenceElement()); 17186 } 17187 if (element.hasDescriptionElement()) { 17188 composeString("description", element.getDescriptionElement()); 17189 } 17190 if (element.hasAuthority()) { 17191 composeReference("authority", element.getAuthority()); 17192 } 17193 if (element.hasSeriesElement()) { 17194 composeString("series", element.getSeriesElement()); 17195 } 17196 composeElementClose(element); 17197 xml.exit(FHIR_NS, name); 17198 } 17199 } 17200 17201 protected void composeImplementationGuide(String name, ImplementationGuide element) throws IOException { 17202 if (element != null) { 17203 composeDomainResourceAttributes(element); 17204 xml.enter(FHIR_NS, name); 17205 composeDomainResourceElements(element); 17206 if (element.hasUrlElement()) { 17207 composeUri("url", element.getUrlElement()); 17208 } 17209 if (element.hasVersionElement()) { 17210 composeString("version", element.getVersionElement()); 17211 } 17212 if (element.hasNameElement()) { 17213 composeString("name", element.getNameElement()); 17214 } 17215 if (element.hasStatusElement()) 17216 composeEnumeration("status", element.getStatusElement(), new Enumerations.ConformanceResourceStatusEnumFactory()); 17217 if (element.hasExperimentalElement()) { 17218 composeBoolean("experimental", element.getExperimentalElement()); 17219 } 17220 if (element.hasPublisherElement()) { 17221 composeString("publisher", element.getPublisherElement()); 17222 } 17223 if (element.hasContact()) { 17224 for (ImplementationGuide.ImplementationGuideContactComponent e : element.getContact()) 17225 composeImplementationGuideImplementationGuideContactComponent("contact", e); 17226 } 17227 if (element.hasDateElement()) { 17228 composeDateTime("date", element.getDateElement()); 17229 } 17230 if (element.hasDescriptionElement()) { 17231 composeString("description", element.getDescriptionElement()); 17232 } 17233 if (element.hasUseContext()) { 17234 for (CodeableConcept e : element.getUseContext()) 17235 composeCodeableConcept("useContext", e); 17236 } 17237 if (element.hasCopyrightElement()) { 17238 composeString("copyright", element.getCopyrightElement()); 17239 } 17240 if (element.hasFhirVersionElement()) { 17241 composeId("fhirVersion", element.getFhirVersionElement()); 17242 } 17243 if (element.hasDependency()) { 17244 for (ImplementationGuide.ImplementationGuideDependencyComponent e : element.getDependency()) 17245 composeImplementationGuideImplementationGuideDependencyComponent("dependency", e); 17246 } 17247 if (element.hasPackage()) { 17248 for (ImplementationGuide.ImplementationGuidePackageComponent e : element.getPackage()) 17249 composeImplementationGuideImplementationGuidePackageComponent("package", e); 17250 } 17251 if (element.hasGlobal()) { 17252 for (ImplementationGuide.ImplementationGuideGlobalComponent e : element.getGlobal()) 17253 composeImplementationGuideImplementationGuideGlobalComponent("global", e); 17254 } 17255 if (element.hasBinary()) { 17256 for (UriType e : element.getBinary()) 17257 composeUri("binary", e); 17258 } 17259 if (element.hasPage()) { 17260 composeImplementationGuideImplementationGuidePageComponent("page", element.getPage()); 17261 } 17262 composeElementClose(element); 17263 xml.exit(FHIR_NS, name); 17264 } 17265 } 17266 17267 protected void composeImplementationGuideImplementationGuideContactComponent(String name, ImplementationGuide.ImplementationGuideContactComponent element) throws IOException { 17268 if (element != null) { 17269 composeElementAttributes(element); 17270 xml.enter(FHIR_NS, name); 17271 composeBackboneElements(element); 17272 if (element.hasNameElement()) { 17273 composeString("name", element.getNameElement()); 17274 } 17275 if (element.hasTelecom()) { 17276 for (ContactPoint e : element.getTelecom()) 17277 composeContactPoint("telecom", e); 17278 } 17279 composeElementClose(element); 17280 xml.exit(FHIR_NS, name); 17281 } 17282 } 17283 17284 protected void composeImplementationGuideImplementationGuideDependencyComponent(String name, ImplementationGuide.ImplementationGuideDependencyComponent element) throws IOException { 17285 if (element != null) { 17286 composeElementAttributes(element); 17287 xml.enter(FHIR_NS, name); 17288 composeBackboneElements(element); 17289 if (element.hasTypeElement()) 17290 composeEnumeration("type", element.getTypeElement(), new ImplementationGuide.GuideDependencyTypeEnumFactory()); 17291 if (element.hasUriElement()) { 17292 composeUri("uri", element.getUriElement()); 17293 } 17294 composeElementClose(element); 17295 xml.exit(FHIR_NS, name); 17296 } 17297 } 17298 17299 protected void composeImplementationGuideImplementationGuidePackageComponent(String name, ImplementationGuide.ImplementationGuidePackageComponent element) throws IOException { 17300 if (element != null) { 17301 composeElementAttributes(element); 17302 xml.enter(FHIR_NS, name); 17303 composeBackboneElements(element); 17304 if (element.hasNameElement()) { 17305 composeString("name", element.getNameElement()); 17306 } 17307 if (element.hasDescriptionElement()) { 17308 composeString("description", element.getDescriptionElement()); 17309 } 17310 if (element.hasResource()) { 17311 for (ImplementationGuide.ImplementationGuidePackageResourceComponent e : element.getResource()) 17312 composeImplementationGuideImplementationGuidePackageResourceComponent("resource", e); 17313 } 17314 composeElementClose(element); 17315 xml.exit(FHIR_NS, name); 17316 } 17317 } 17318 17319 protected void composeImplementationGuideImplementationGuidePackageResourceComponent(String name, ImplementationGuide.ImplementationGuidePackageResourceComponent element) throws IOException { 17320 if (element != null) { 17321 composeElementAttributes(element); 17322 xml.enter(FHIR_NS, name); 17323 composeBackboneElements(element); 17324 if (element.hasPurposeElement()) 17325 composeEnumeration("purpose", element.getPurposeElement(), new ImplementationGuide.GuideResourcePurposeEnumFactory()); 17326 if (element.hasNameElement()) { 17327 composeString("name", element.getNameElement()); 17328 } 17329 if (element.hasDescriptionElement()) { 17330 composeString("description", element.getDescriptionElement()); 17331 } 17332 if (element.hasAcronymElement()) { 17333 composeString("acronym", element.getAcronymElement()); 17334 } 17335 if (element.hasSource()) { 17336 composeType("source", element.getSource()); 17337 } if (element.hasExampleFor()) { 17338 composeReference("exampleFor", element.getExampleFor()); 17339 } 17340 composeElementClose(element); 17341 xml.exit(FHIR_NS, name); 17342 } 17343 } 17344 17345 protected void composeImplementationGuideImplementationGuideGlobalComponent(String name, ImplementationGuide.ImplementationGuideGlobalComponent element) throws IOException { 17346 if (element != null) { 17347 composeElementAttributes(element); 17348 xml.enter(FHIR_NS, name); 17349 composeBackboneElements(element); 17350 if (element.hasTypeElement()) { 17351 composeCode("type", element.getTypeElement()); 17352 } 17353 if (element.hasProfile()) { 17354 composeReference("profile", element.getProfile()); 17355 } 17356 composeElementClose(element); 17357 xml.exit(FHIR_NS, name); 17358 } 17359 } 17360 17361 protected void composeImplementationGuideImplementationGuidePageComponent(String name, ImplementationGuide.ImplementationGuidePageComponent element) throws IOException { 17362 if (element != null) { 17363 composeElementAttributes(element); 17364 xml.enter(FHIR_NS, name); 17365 composeBackboneElements(element); 17366 if (element.hasSourceElement()) { 17367 composeUri("source", element.getSourceElement()); 17368 } 17369 if (element.hasNameElement()) { 17370 composeString("name", element.getNameElement()); 17371 } 17372 if (element.hasKindElement()) 17373 composeEnumeration("kind", element.getKindElement(), new ImplementationGuide.GuidePageKindEnumFactory()); 17374 if (element.hasType()) { 17375 for (CodeType e : element.getType()) 17376 composeCode("type", e); 17377 } 17378 if (element.hasPackage()) { 17379 for (StringType e : element.getPackage()) 17380 composeString("package", e); 17381 } 17382 if (element.hasFormatElement()) { 17383 composeCode("format", element.getFormatElement()); 17384 } 17385 if (element.hasPage()) { 17386 for (ImplementationGuide.ImplementationGuidePageComponent e : element.getPage()) 17387 composeImplementationGuideImplementationGuidePageComponent("page", e); 17388 } 17389 composeElementClose(element); 17390 xml.exit(FHIR_NS, name); 17391 } 17392 } 17393 17394 protected void composeList_(String name, List_ element) throws IOException { 17395 if (element != null) { 17396 composeDomainResourceAttributes(element); 17397 xml.enter(FHIR_NS, name); 17398 composeDomainResourceElements(element); 17399 if (element.hasIdentifier()) { 17400 for (Identifier e : element.getIdentifier()) 17401 composeIdentifier("identifier", e); 17402 } 17403 if (element.hasTitleElement()) { 17404 composeString("title", element.getTitleElement()); 17405 } 17406 if (element.hasCode()) { 17407 composeCodeableConcept("code", element.getCode()); 17408 } 17409 if (element.hasSubject()) { 17410 composeReference("subject", element.getSubject()); 17411 } 17412 if (element.hasSource()) { 17413 composeReference("source", element.getSource()); 17414 } 17415 if (element.hasEncounter()) { 17416 composeReference("encounter", element.getEncounter()); 17417 } 17418 if (element.hasStatusElement()) 17419 composeEnumeration("status", element.getStatusElement(), new List_.ListStatusEnumFactory()); 17420 if (element.hasDateElement()) { 17421 composeDateTime("date", element.getDateElement()); 17422 } 17423 if (element.hasOrderedBy()) { 17424 composeCodeableConcept("orderedBy", element.getOrderedBy()); 17425 } 17426 if (element.hasModeElement()) 17427 composeEnumeration("mode", element.getModeElement(), new List_.ListModeEnumFactory()); 17428 if (element.hasNoteElement()) { 17429 composeString("note", element.getNoteElement()); 17430 } 17431 if (element.hasEntry()) { 17432 for (List_.ListEntryComponent e : element.getEntry()) 17433 composeList_ListEntryComponent("entry", e); 17434 } 17435 if (element.hasEmptyReason()) { 17436 composeCodeableConcept("emptyReason", element.getEmptyReason()); 17437 } 17438 composeElementClose(element); 17439 xml.exit(FHIR_NS, name); 17440 } 17441 } 17442 17443 protected void composeList_ListEntryComponent(String name, List_.ListEntryComponent element) throws IOException { 17444 if (element != null) { 17445 composeElementAttributes(element); 17446 xml.enter(FHIR_NS, name); 17447 composeBackboneElements(element); 17448 if (element.hasFlag()) { 17449 composeCodeableConcept("flag", element.getFlag()); 17450 } 17451 if (element.hasDeletedElement()) { 17452 composeBoolean("deleted", element.getDeletedElement()); 17453 } 17454 if (element.hasDateElement()) { 17455 composeDateTime("date", element.getDateElement()); 17456 } 17457 if (element.hasItem()) { 17458 composeReference("item", element.getItem()); 17459 } 17460 composeElementClose(element); 17461 xml.exit(FHIR_NS, name); 17462 } 17463 } 17464 17465 protected void composeLocation(String name, Location element) throws IOException { 17466 if (element != null) { 17467 composeDomainResourceAttributes(element); 17468 xml.enter(FHIR_NS, name); 17469 composeDomainResourceElements(element); 17470 if (element.hasIdentifier()) { 17471 for (Identifier e : element.getIdentifier()) 17472 composeIdentifier("identifier", e); 17473 } 17474 if (element.hasStatusElement()) 17475 composeEnumeration("status", element.getStatusElement(), new Location.LocationStatusEnumFactory()); 17476 if (element.hasNameElement()) { 17477 composeString("name", element.getNameElement()); 17478 } 17479 if (element.hasDescriptionElement()) { 17480 composeString("description", element.getDescriptionElement()); 17481 } 17482 if (element.hasModeElement()) 17483 composeEnumeration("mode", element.getModeElement(), new Location.LocationModeEnumFactory()); 17484 if (element.hasType()) { 17485 composeCodeableConcept("type", element.getType()); 17486 } 17487 if (element.hasTelecom()) { 17488 for (ContactPoint e : element.getTelecom()) 17489 composeContactPoint("telecom", e); 17490 } 17491 if (element.hasAddress()) { 17492 composeAddress("address", element.getAddress()); 17493 } 17494 if (element.hasPhysicalType()) { 17495 composeCodeableConcept("physicalType", element.getPhysicalType()); 17496 } 17497 if (element.hasPosition()) { 17498 composeLocationLocationPositionComponent("position", element.getPosition()); 17499 } 17500 if (element.hasManagingOrganization()) { 17501 composeReference("managingOrganization", element.getManagingOrganization()); 17502 } 17503 if (element.hasPartOf()) { 17504 composeReference("partOf", element.getPartOf()); 17505 } 17506 composeElementClose(element); 17507 xml.exit(FHIR_NS, name); 17508 } 17509 } 17510 17511 protected void composeLocationLocationPositionComponent(String name, Location.LocationPositionComponent element) throws IOException { 17512 if (element != null) { 17513 composeElementAttributes(element); 17514 xml.enter(FHIR_NS, name); 17515 composeBackboneElements(element); 17516 if (element.hasLongitudeElement()) { 17517 composeDecimal("longitude", element.getLongitudeElement()); 17518 } 17519 if (element.hasLatitudeElement()) { 17520 composeDecimal("latitude", element.getLatitudeElement()); 17521 } 17522 if (element.hasAltitudeElement()) { 17523 composeDecimal("altitude", element.getAltitudeElement()); 17524 } 17525 composeElementClose(element); 17526 xml.exit(FHIR_NS, name); 17527 } 17528 } 17529 17530 protected void composeMedia(String name, Media element) throws IOException { 17531 if (element != null) { 17532 composeDomainResourceAttributes(element); 17533 xml.enter(FHIR_NS, name); 17534 composeDomainResourceElements(element); 17535 if (element.hasTypeElement()) 17536 composeEnumeration("type", element.getTypeElement(), new Media.DigitalMediaTypeEnumFactory()); 17537 if (element.hasSubtype()) { 17538 composeCodeableConcept("subtype", element.getSubtype()); 17539 } 17540 if (element.hasIdentifier()) { 17541 for (Identifier e : element.getIdentifier()) 17542 composeIdentifier("identifier", e); 17543 } 17544 if (element.hasSubject()) { 17545 composeReference("subject", element.getSubject()); 17546 } 17547 if (element.hasOperator()) { 17548 composeReference("operator", element.getOperator()); 17549 } 17550 if (element.hasView()) { 17551 composeCodeableConcept("view", element.getView()); 17552 } 17553 if (element.hasDeviceNameElement()) { 17554 composeString("deviceName", element.getDeviceNameElement()); 17555 } 17556 if (element.hasHeightElement()) { 17557 composePositiveInt("height", element.getHeightElement()); 17558 } 17559 if (element.hasWidthElement()) { 17560 composePositiveInt("width", element.getWidthElement()); 17561 } 17562 if (element.hasFramesElement()) { 17563 composePositiveInt("frames", element.getFramesElement()); 17564 } 17565 if (element.hasDurationElement()) { 17566 composeUnsignedInt("duration", element.getDurationElement()); 17567 } 17568 if (element.hasContent()) { 17569 composeAttachment("content", element.getContent()); 17570 } 17571 composeElementClose(element); 17572 xml.exit(FHIR_NS, name); 17573 } 17574 } 17575 17576 protected void composeMedication(String name, Medication element) throws IOException { 17577 if (element != null) { 17578 composeDomainResourceAttributes(element); 17579 xml.enter(FHIR_NS, name); 17580 composeDomainResourceElements(element); 17581 if (element.hasCode()) { 17582 composeCodeableConcept("code", element.getCode()); 17583 } 17584 if (element.hasIsBrandElement()) { 17585 composeBoolean("isBrand", element.getIsBrandElement()); 17586 } 17587 if (element.hasManufacturer()) { 17588 composeReference("manufacturer", element.getManufacturer()); 17589 } 17590 if (element.hasProduct()) { 17591 composeMedicationMedicationProductComponent("product", element.getProduct()); 17592 } 17593 if (element.hasPackage()) { 17594 composeMedicationMedicationPackageComponent("package", element.getPackage()); 17595 } 17596 composeElementClose(element); 17597 xml.exit(FHIR_NS, name); 17598 } 17599 } 17600 17601 protected void composeMedicationMedicationProductComponent(String name, Medication.MedicationProductComponent element) throws IOException { 17602 if (element != null) { 17603 composeElementAttributes(element); 17604 xml.enter(FHIR_NS, name); 17605 composeBackboneElements(element); 17606 if (element.hasForm()) { 17607 composeCodeableConcept("form", element.getForm()); 17608 } 17609 if (element.hasIngredient()) { 17610 for (Medication.MedicationProductIngredientComponent e : element.getIngredient()) 17611 composeMedicationMedicationProductIngredientComponent("ingredient", e); 17612 } 17613 if (element.hasBatch()) { 17614 for (Medication.MedicationProductBatchComponent e : element.getBatch()) 17615 composeMedicationMedicationProductBatchComponent("batch", e); 17616 } 17617 composeElementClose(element); 17618 xml.exit(FHIR_NS, name); 17619 } 17620 } 17621 17622 protected void composeMedicationMedicationProductIngredientComponent(String name, Medication.MedicationProductIngredientComponent element) throws IOException { 17623 if (element != null) { 17624 composeElementAttributes(element); 17625 xml.enter(FHIR_NS, name); 17626 composeBackboneElements(element); 17627 if (element.hasItem()) { 17628 composeReference("item", element.getItem()); 17629 } 17630 if (element.hasAmount()) { 17631 composeRatio("amount", element.getAmount()); 17632 } 17633 composeElementClose(element); 17634 xml.exit(FHIR_NS, name); 17635 } 17636 } 17637 17638 protected void composeMedicationMedicationProductBatchComponent(String name, Medication.MedicationProductBatchComponent element) throws IOException { 17639 if (element != null) { 17640 composeElementAttributes(element); 17641 xml.enter(FHIR_NS, name); 17642 composeBackboneElements(element); 17643 if (element.hasLotNumberElement()) { 17644 composeString("lotNumber", element.getLotNumberElement()); 17645 } 17646 if (element.hasExpirationDateElement()) { 17647 composeDateTime("expirationDate", element.getExpirationDateElement()); 17648 } 17649 composeElementClose(element); 17650 xml.exit(FHIR_NS, name); 17651 } 17652 } 17653 17654 protected void composeMedicationMedicationPackageComponent(String name, Medication.MedicationPackageComponent element) throws IOException { 17655 if (element != null) { 17656 composeElementAttributes(element); 17657 xml.enter(FHIR_NS, name); 17658 composeBackboneElements(element); 17659 if (element.hasContainer()) { 17660 composeCodeableConcept("container", element.getContainer()); 17661 } 17662 if (element.hasContent()) { 17663 for (Medication.MedicationPackageContentComponent e : element.getContent()) 17664 composeMedicationMedicationPackageContentComponent("content", e); 17665 } 17666 composeElementClose(element); 17667 xml.exit(FHIR_NS, name); 17668 } 17669 } 17670 17671 protected void composeMedicationMedicationPackageContentComponent(String name, Medication.MedicationPackageContentComponent element) throws IOException { 17672 if (element != null) { 17673 composeElementAttributes(element); 17674 xml.enter(FHIR_NS, name); 17675 composeBackboneElements(element); 17676 if (element.hasItem()) { 17677 composeReference("item", element.getItem()); 17678 } 17679 if (element.hasAmount()) { 17680 composeSimpleQuantity("amount", element.getAmount()); 17681 } 17682 composeElementClose(element); 17683 xml.exit(FHIR_NS, name); 17684 } 17685 } 17686 17687 protected void composeMedicationAdministration(String name, MedicationAdministration element) throws IOException { 17688 if (element != null) { 17689 composeDomainResourceAttributes(element); 17690 xml.enter(FHIR_NS, name); 17691 composeDomainResourceElements(element); 17692 if (element.hasIdentifier()) { 17693 for (Identifier e : element.getIdentifier()) 17694 composeIdentifier("identifier", e); 17695 } 17696 if (element.hasStatusElement()) 17697 composeEnumeration("status", element.getStatusElement(), new MedicationAdministration.MedicationAdministrationStatusEnumFactory()); 17698 if (element.hasPatient()) { 17699 composeReference("patient", element.getPatient()); 17700 } 17701 if (element.hasPractitioner()) { 17702 composeReference("practitioner", element.getPractitioner()); 17703 } 17704 if (element.hasEncounter()) { 17705 composeReference("encounter", element.getEncounter()); 17706 } 17707 if (element.hasPrescription()) { 17708 composeReference("prescription", element.getPrescription()); 17709 } 17710 if (element.hasWasNotGivenElement()) { 17711 composeBoolean("wasNotGiven", element.getWasNotGivenElement()); 17712 } 17713 if (element.hasReasonNotGiven()) { 17714 for (CodeableConcept e : element.getReasonNotGiven()) 17715 composeCodeableConcept("reasonNotGiven", e); 17716 } 17717 if (element.hasReasonGiven()) { 17718 for (CodeableConcept e : element.getReasonGiven()) 17719 composeCodeableConcept("reasonGiven", e); 17720 } 17721 if (element.hasEffectiveTime()) { 17722 composeType("effectiveTime", element.getEffectiveTime()); 17723 } if (element.hasMedication()) { 17724 composeType("medication", element.getMedication()); 17725 } if (element.hasDevice()) { 17726 for (Reference e : element.getDevice()) 17727 composeReference("device", e); 17728 } 17729 if (element.hasNoteElement()) { 17730 composeString("note", element.getNoteElement()); 17731 } 17732 if (element.hasDosage()) { 17733 composeMedicationAdministrationMedicationAdministrationDosageComponent("dosage", element.getDosage()); 17734 } 17735 composeElementClose(element); 17736 xml.exit(FHIR_NS, name); 17737 } 17738 } 17739 17740 protected void composeMedicationAdministrationMedicationAdministrationDosageComponent(String name, MedicationAdministration.MedicationAdministrationDosageComponent element) throws IOException { 17741 if (element != null) { 17742 composeElementAttributes(element); 17743 xml.enter(FHIR_NS, name); 17744 composeBackboneElements(element); 17745 if (element.hasTextElement()) { 17746 composeString("text", element.getTextElement()); 17747 } 17748 if (element.hasSite()) { 17749 composeType("site", element.getSite()); 17750 } if (element.hasRoute()) { 17751 composeCodeableConcept("route", element.getRoute()); 17752 } 17753 if (element.hasMethod()) { 17754 composeCodeableConcept("method", element.getMethod()); 17755 } 17756 if (element.hasQuantity()) { 17757 composeSimpleQuantity("quantity", element.getQuantity()); 17758 } 17759 if (element.hasRate()) { 17760 composeType("rate", element.getRate()); 17761 } composeElementClose(element); 17762 xml.exit(FHIR_NS, name); 17763 } 17764 } 17765 17766 protected void composeMedicationDispense(String name, MedicationDispense element) throws IOException { 17767 if (element != null) { 17768 composeDomainResourceAttributes(element); 17769 xml.enter(FHIR_NS, name); 17770 composeDomainResourceElements(element); 17771 if (element.hasIdentifier()) { 17772 composeIdentifier("identifier", element.getIdentifier()); 17773 } 17774 if (element.hasStatusElement()) 17775 composeEnumeration("status", element.getStatusElement(), new MedicationDispense.MedicationDispenseStatusEnumFactory()); 17776 if (element.hasPatient()) { 17777 composeReference("patient", element.getPatient()); 17778 } 17779 if (element.hasDispenser()) { 17780 composeReference("dispenser", element.getDispenser()); 17781 } 17782 if (element.hasAuthorizingPrescription()) { 17783 for (Reference e : element.getAuthorizingPrescription()) 17784 composeReference("authorizingPrescription", e); 17785 } 17786 if (element.hasType()) { 17787 composeCodeableConcept("type", element.getType()); 17788 } 17789 if (element.hasQuantity()) { 17790 composeSimpleQuantity("quantity", element.getQuantity()); 17791 } 17792 if (element.hasDaysSupply()) { 17793 composeSimpleQuantity("daysSupply", element.getDaysSupply()); 17794 } 17795 if (element.hasMedication()) { 17796 composeType("medication", element.getMedication()); 17797 } if (element.hasWhenPreparedElement()) { 17798 composeDateTime("whenPrepared", element.getWhenPreparedElement()); 17799 } 17800 if (element.hasWhenHandedOverElement()) { 17801 composeDateTime("whenHandedOver", element.getWhenHandedOverElement()); 17802 } 17803 if (element.hasDestination()) { 17804 composeReference("destination", element.getDestination()); 17805 } 17806 if (element.hasReceiver()) { 17807 for (Reference e : element.getReceiver()) 17808 composeReference("receiver", e); 17809 } 17810 if (element.hasNoteElement()) { 17811 composeString("note", element.getNoteElement()); 17812 } 17813 if (element.hasDosageInstruction()) { 17814 for (MedicationDispense.MedicationDispenseDosageInstructionComponent e : element.getDosageInstruction()) 17815 composeMedicationDispenseMedicationDispenseDosageInstructionComponent("dosageInstruction", e); 17816 } 17817 if (element.hasSubstitution()) { 17818 composeMedicationDispenseMedicationDispenseSubstitutionComponent("substitution", element.getSubstitution()); 17819 } 17820 composeElementClose(element); 17821 xml.exit(FHIR_NS, name); 17822 } 17823 } 17824 17825 protected void composeMedicationDispenseMedicationDispenseDosageInstructionComponent(String name, MedicationDispense.MedicationDispenseDosageInstructionComponent element) throws IOException { 17826 if (element != null) { 17827 composeElementAttributes(element); 17828 xml.enter(FHIR_NS, name); 17829 composeBackboneElements(element); 17830 if (element.hasTextElement()) { 17831 composeString("text", element.getTextElement()); 17832 } 17833 if (element.hasAdditionalInstructions()) { 17834 composeCodeableConcept("additionalInstructions", element.getAdditionalInstructions()); 17835 } 17836 if (element.hasTiming()) { 17837 composeTiming("timing", element.getTiming()); 17838 } 17839 if (element.hasAsNeeded()) { 17840 composeType("asNeeded", element.getAsNeeded()); 17841 } if (element.hasSite()) { 17842 composeType("site", element.getSite()); 17843 } if (element.hasRoute()) { 17844 composeCodeableConcept("route", element.getRoute()); 17845 } 17846 if (element.hasMethod()) { 17847 composeCodeableConcept("method", element.getMethod()); 17848 } 17849 if (element.hasDose()) { 17850 composeType("dose", element.getDose()); 17851 } if (element.hasRate()) { 17852 composeType("rate", element.getRate()); 17853 } if (element.hasMaxDosePerPeriod()) { 17854 composeRatio("maxDosePerPeriod", element.getMaxDosePerPeriod()); 17855 } 17856 composeElementClose(element); 17857 xml.exit(FHIR_NS, name); 17858 } 17859 } 17860 17861 protected void composeMedicationDispenseMedicationDispenseSubstitutionComponent(String name, MedicationDispense.MedicationDispenseSubstitutionComponent element) throws IOException { 17862 if (element != null) { 17863 composeElementAttributes(element); 17864 xml.enter(FHIR_NS, name); 17865 composeBackboneElements(element); 17866 if (element.hasType()) { 17867 composeCodeableConcept("type", element.getType()); 17868 } 17869 if (element.hasReason()) { 17870 for (CodeableConcept e : element.getReason()) 17871 composeCodeableConcept("reason", e); 17872 } 17873 if (element.hasResponsibleParty()) { 17874 for (Reference e : element.getResponsibleParty()) 17875 composeReference("responsibleParty", e); 17876 } 17877 composeElementClose(element); 17878 xml.exit(FHIR_NS, name); 17879 } 17880 } 17881 17882 protected void composeMedicationOrder(String name, MedicationOrder element) throws IOException { 17883 if (element != null) { 17884 composeDomainResourceAttributes(element); 17885 xml.enter(FHIR_NS, name); 17886 composeDomainResourceElements(element); 17887 if (element.hasIdentifier()) { 17888 for (Identifier e : element.getIdentifier()) 17889 composeIdentifier("identifier", e); 17890 } 17891 if (element.hasDateWrittenElement()) { 17892 composeDateTime("dateWritten", element.getDateWrittenElement()); 17893 } 17894 if (element.hasStatusElement()) 17895 composeEnumeration("status", element.getStatusElement(), new MedicationOrder.MedicationOrderStatusEnumFactory()); 17896 if (element.hasDateEndedElement()) { 17897 composeDateTime("dateEnded", element.getDateEndedElement()); 17898 } 17899 if (element.hasReasonEnded()) { 17900 composeCodeableConcept("reasonEnded", element.getReasonEnded()); 17901 } 17902 if (element.hasPatient()) { 17903 composeReference("patient", element.getPatient()); 17904 } 17905 if (element.hasPrescriber()) { 17906 composeReference("prescriber", element.getPrescriber()); 17907 } 17908 if (element.hasEncounter()) { 17909 composeReference("encounter", element.getEncounter()); 17910 } 17911 if (element.hasReason()) { 17912 composeType("reason", element.getReason()); 17913 } if (element.hasNoteElement()) { 17914 composeString("note", element.getNoteElement()); 17915 } 17916 if (element.hasMedication()) { 17917 composeType("medication", element.getMedication()); 17918 } if (element.hasDosageInstruction()) { 17919 for (MedicationOrder.MedicationOrderDosageInstructionComponent e : element.getDosageInstruction()) 17920 composeMedicationOrderMedicationOrderDosageInstructionComponent("dosageInstruction", e); 17921 } 17922 if (element.hasDispenseRequest()) { 17923 composeMedicationOrderMedicationOrderDispenseRequestComponent("dispenseRequest", element.getDispenseRequest()); 17924 } 17925 if (element.hasSubstitution()) { 17926 composeMedicationOrderMedicationOrderSubstitutionComponent("substitution", element.getSubstitution()); 17927 } 17928 if (element.hasPriorPrescription()) { 17929 composeReference("priorPrescription", element.getPriorPrescription()); 17930 } 17931 composeElementClose(element); 17932 xml.exit(FHIR_NS, name); 17933 } 17934 } 17935 17936 protected void composeMedicationOrderMedicationOrderDosageInstructionComponent(String name, MedicationOrder.MedicationOrderDosageInstructionComponent element) throws IOException { 17937 if (element != null) { 17938 composeElementAttributes(element); 17939 xml.enter(FHIR_NS, name); 17940 composeBackboneElements(element); 17941 if (element.hasTextElement()) { 17942 composeString("text", element.getTextElement()); 17943 } 17944 if (element.hasAdditionalInstructions()) { 17945 composeCodeableConcept("additionalInstructions", element.getAdditionalInstructions()); 17946 } 17947 if (element.hasTiming()) { 17948 composeTiming("timing", element.getTiming()); 17949 } 17950 if (element.hasAsNeeded()) { 17951 composeType("asNeeded", element.getAsNeeded()); 17952 } if (element.hasSite()) { 17953 composeType("site", element.getSite()); 17954 } if (element.hasRoute()) { 17955 composeCodeableConcept("route", element.getRoute()); 17956 } 17957 if (element.hasMethod()) { 17958 composeCodeableConcept("method", element.getMethod()); 17959 } 17960 if (element.hasDose()) { 17961 composeType("dose", element.getDose()); 17962 } if (element.hasRate()) { 17963 composeType("rate", element.getRate()); 17964 } if (element.hasMaxDosePerPeriod()) { 17965 composeRatio("maxDosePerPeriod", element.getMaxDosePerPeriod()); 17966 } 17967 composeElementClose(element); 17968 xml.exit(FHIR_NS, name); 17969 } 17970 } 17971 17972 protected void composeMedicationOrderMedicationOrderDispenseRequestComponent(String name, MedicationOrder.MedicationOrderDispenseRequestComponent element) throws IOException { 17973 if (element != null) { 17974 composeElementAttributes(element); 17975 xml.enter(FHIR_NS, name); 17976 composeBackboneElements(element); 17977 if (element.hasMedication()) { 17978 composeType("medication", element.getMedication()); 17979 } if (element.hasValidityPeriod()) { 17980 composePeriod("validityPeriod", element.getValidityPeriod()); 17981 } 17982 if (element.hasNumberOfRepeatsAllowedElement()) { 17983 composePositiveInt("numberOfRepeatsAllowed", element.getNumberOfRepeatsAllowedElement()); 17984 } 17985 if (element.hasQuantity()) { 17986 composeSimpleQuantity("quantity", element.getQuantity()); 17987 } 17988 if (element.hasExpectedSupplyDuration()) { 17989 composeDuration("expectedSupplyDuration", element.getExpectedSupplyDuration()); 17990 } 17991 composeElementClose(element); 17992 xml.exit(FHIR_NS, name); 17993 } 17994 } 17995 17996 protected void composeMedicationOrderMedicationOrderSubstitutionComponent(String name, MedicationOrder.MedicationOrderSubstitutionComponent element) throws IOException { 17997 if (element != null) { 17998 composeElementAttributes(element); 17999 xml.enter(FHIR_NS, name); 18000 composeBackboneElements(element); 18001 if (element.hasType()) { 18002 composeCodeableConcept("type", element.getType()); 18003 } 18004 if (element.hasReason()) { 18005 composeCodeableConcept("reason", element.getReason()); 18006 } 18007 composeElementClose(element); 18008 xml.exit(FHIR_NS, name); 18009 } 18010 } 18011 18012 protected void composeMedicationStatement(String name, MedicationStatement element) throws IOException { 18013 if (element != null) { 18014 composeDomainResourceAttributes(element); 18015 xml.enter(FHIR_NS, name); 18016 composeDomainResourceElements(element); 18017 if (element.hasIdentifier()) { 18018 for (Identifier e : element.getIdentifier()) 18019 composeIdentifier("identifier", e); 18020 } 18021 if (element.hasPatient()) { 18022 composeReference("patient", element.getPatient()); 18023 } 18024 if (element.hasInformationSource()) { 18025 composeReference("informationSource", element.getInformationSource()); 18026 } 18027 if (element.hasDateAssertedElement()) { 18028 composeDateTime("dateAsserted", element.getDateAssertedElement()); 18029 } 18030 if (element.hasStatusElement()) 18031 composeEnumeration("status", element.getStatusElement(), new MedicationStatement.MedicationStatementStatusEnumFactory()); 18032 if (element.hasWasNotTakenElement()) { 18033 composeBoolean("wasNotTaken", element.getWasNotTakenElement()); 18034 } 18035 if (element.hasReasonNotTaken()) { 18036 for (CodeableConcept e : element.getReasonNotTaken()) 18037 composeCodeableConcept("reasonNotTaken", e); 18038 } 18039 if (element.hasReasonForUse()) { 18040 composeType("reasonForUse", element.getReasonForUse()); 18041 } if (element.hasEffective()) { 18042 composeType("effective", element.getEffective()); 18043 } if (element.hasNoteElement()) { 18044 composeString("note", element.getNoteElement()); 18045 } 18046 if (element.hasSupportingInformation()) { 18047 for (Reference e : element.getSupportingInformation()) 18048 composeReference("supportingInformation", e); 18049 } 18050 if (element.hasMedication()) { 18051 composeType("medication", element.getMedication()); 18052 } if (element.hasDosage()) { 18053 for (MedicationStatement.MedicationStatementDosageComponent e : element.getDosage()) 18054 composeMedicationStatementMedicationStatementDosageComponent("dosage", e); 18055 } 18056 composeElementClose(element); 18057 xml.exit(FHIR_NS, name); 18058 } 18059 } 18060 18061 protected void composeMedicationStatementMedicationStatementDosageComponent(String name, MedicationStatement.MedicationStatementDosageComponent element) throws IOException { 18062 if (element != null) { 18063 composeElementAttributes(element); 18064 xml.enter(FHIR_NS, name); 18065 composeBackboneElements(element); 18066 if (element.hasTextElement()) { 18067 composeString("text", element.getTextElement()); 18068 } 18069 if (element.hasTiming()) { 18070 composeTiming("timing", element.getTiming()); 18071 } 18072 if (element.hasAsNeeded()) { 18073 composeType("asNeeded", element.getAsNeeded()); 18074 } if (element.hasSite()) { 18075 composeType("site", element.getSite()); 18076 } if (element.hasRoute()) { 18077 composeCodeableConcept("route", element.getRoute()); 18078 } 18079 if (element.hasMethod()) { 18080 composeCodeableConcept("method", element.getMethod()); 18081 } 18082 if (element.hasQuantity()) { 18083 composeType("quantity", element.getQuantity()); 18084 } if (element.hasRate()) { 18085 composeType("rate", element.getRate()); 18086 } if (element.hasMaxDosePerPeriod()) { 18087 composeRatio("maxDosePerPeriod", element.getMaxDosePerPeriod()); 18088 } 18089 composeElementClose(element); 18090 xml.exit(FHIR_NS, name); 18091 } 18092 } 18093 18094 protected void composeMessageHeader(String name, MessageHeader element) throws IOException { 18095 if (element != null) { 18096 composeDomainResourceAttributes(element); 18097 xml.enter(FHIR_NS, name); 18098 composeDomainResourceElements(element); 18099 if (element.hasTimestampElement()) { 18100 composeInstant("timestamp", element.getTimestampElement()); 18101 } 18102 if (element.hasEvent()) { 18103 composeCoding("event", element.getEvent()); 18104 } 18105 if (element.hasResponse()) { 18106 composeMessageHeaderMessageHeaderResponseComponent("response", element.getResponse()); 18107 } 18108 if (element.hasSource()) { 18109 composeMessageHeaderMessageSourceComponent("source", element.getSource()); 18110 } 18111 if (element.hasDestination()) { 18112 for (MessageHeader.MessageDestinationComponent e : element.getDestination()) 18113 composeMessageHeaderMessageDestinationComponent("destination", e); 18114 } 18115 if (element.hasEnterer()) { 18116 composeReference("enterer", element.getEnterer()); 18117 } 18118 if (element.hasAuthor()) { 18119 composeReference("author", element.getAuthor()); 18120 } 18121 if (element.hasReceiver()) { 18122 composeReference("receiver", element.getReceiver()); 18123 } 18124 if (element.hasResponsible()) { 18125 composeReference("responsible", element.getResponsible()); 18126 } 18127 if (element.hasReason()) { 18128 composeCodeableConcept("reason", element.getReason()); 18129 } 18130 if (element.hasData()) { 18131 for (Reference e : element.getData()) 18132 composeReference("data", e); 18133 } 18134 composeElementClose(element); 18135 xml.exit(FHIR_NS, name); 18136 } 18137 } 18138 18139 protected void composeMessageHeaderMessageHeaderResponseComponent(String name, MessageHeader.MessageHeaderResponseComponent element) throws IOException { 18140 if (element != null) { 18141 composeElementAttributes(element); 18142 xml.enter(FHIR_NS, name); 18143 composeBackboneElements(element); 18144 if (element.hasIdentifierElement()) { 18145 composeId("identifier", element.getIdentifierElement()); 18146 } 18147 if (element.hasCodeElement()) 18148 composeEnumeration("code", element.getCodeElement(), new MessageHeader.ResponseTypeEnumFactory()); 18149 if (element.hasDetails()) { 18150 composeReference("details", element.getDetails()); 18151 } 18152 composeElementClose(element); 18153 xml.exit(FHIR_NS, name); 18154 } 18155 } 18156 18157 protected void composeMessageHeaderMessageSourceComponent(String name, MessageHeader.MessageSourceComponent element) throws IOException { 18158 if (element != null) { 18159 composeElementAttributes(element); 18160 xml.enter(FHIR_NS, name); 18161 composeBackboneElements(element); 18162 if (element.hasNameElement()) { 18163 composeString("name", element.getNameElement()); 18164 } 18165 if (element.hasSoftwareElement()) { 18166 composeString("software", element.getSoftwareElement()); 18167 } 18168 if (element.hasVersionElement()) { 18169 composeString("version", element.getVersionElement()); 18170 } 18171 if (element.hasContact()) { 18172 composeContactPoint("contact", element.getContact()); 18173 } 18174 if (element.hasEndpointElement()) { 18175 composeUri("endpoint", element.getEndpointElement()); 18176 } 18177 composeElementClose(element); 18178 xml.exit(FHIR_NS, name); 18179 } 18180 } 18181 18182 protected void composeMessageHeaderMessageDestinationComponent(String name, MessageHeader.MessageDestinationComponent element) throws IOException { 18183 if (element != null) { 18184 composeElementAttributes(element); 18185 xml.enter(FHIR_NS, name); 18186 composeBackboneElements(element); 18187 if (element.hasNameElement()) { 18188 composeString("name", element.getNameElement()); 18189 } 18190 if (element.hasTarget()) { 18191 composeReference("target", element.getTarget()); 18192 } 18193 if (element.hasEndpointElement()) { 18194 composeUri("endpoint", element.getEndpointElement()); 18195 } 18196 composeElementClose(element); 18197 xml.exit(FHIR_NS, name); 18198 } 18199 } 18200 18201 protected void composeNamingSystem(String name, NamingSystem element) throws IOException { 18202 if (element != null) { 18203 composeDomainResourceAttributes(element); 18204 xml.enter(FHIR_NS, name); 18205 composeDomainResourceElements(element); 18206 if (element.hasNameElement()) { 18207 composeString("name", element.getNameElement()); 18208 } 18209 if (element.hasStatusElement()) 18210 composeEnumeration("status", element.getStatusElement(), new Enumerations.ConformanceResourceStatusEnumFactory()); 18211 if (element.hasKindElement()) 18212 composeEnumeration("kind", element.getKindElement(), new NamingSystem.NamingSystemTypeEnumFactory()); 18213 if (element.hasPublisherElement()) { 18214 composeString("publisher", element.getPublisherElement()); 18215 } 18216 if (element.hasContact()) { 18217 for (NamingSystem.NamingSystemContactComponent e : element.getContact()) 18218 composeNamingSystemNamingSystemContactComponent("contact", e); 18219 } 18220 if (element.hasResponsibleElement()) { 18221 composeString("responsible", element.getResponsibleElement()); 18222 } 18223 if (element.hasDateElement()) { 18224 composeDateTime("date", element.getDateElement()); 18225 } 18226 if (element.hasType()) { 18227 composeCodeableConcept("type", element.getType()); 18228 } 18229 if (element.hasDescriptionElement()) { 18230 composeString("description", element.getDescriptionElement()); 18231 } 18232 if (element.hasUseContext()) { 18233 for (CodeableConcept e : element.getUseContext()) 18234 composeCodeableConcept("useContext", e); 18235 } 18236 if (element.hasUsageElement()) { 18237 composeString("usage", element.getUsageElement()); 18238 } 18239 if (element.hasUniqueId()) { 18240 for (NamingSystem.NamingSystemUniqueIdComponent e : element.getUniqueId()) 18241 composeNamingSystemNamingSystemUniqueIdComponent("uniqueId", e); 18242 } 18243 if (element.hasReplacedBy()) { 18244 composeReference("replacedBy", element.getReplacedBy()); 18245 } 18246 composeElementClose(element); 18247 xml.exit(FHIR_NS, name); 18248 } 18249 } 18250 18251 protected void composeNamingSystemNamingSystemContactComponent(String name, NamingSystem.NamingSystemContactComponent element) throws IOException { 18252 if (element != null) { 18253 composeElementAttributes(element); 18254 xml.enter(FHIR_NS, name); 18255 composeBackboneElements(element); 18256 if (element.hasNameElement()) { 18257 composeString("name", element.getNameElement()); 18258 } 18259 if (element.hasTelecom()) { 18260 for (ContactPoint e : element.getTelecom()) 18261 composeContactPoint("telecom", e); 18262 } 18263 composeElementClose(element); 18264 xml.exit(FHIR_NS, name); 18265 } 18266 } 18267 18268 protected void composeNamingSystemNamingSystemUniqueIdComponent(String name, NamingSystem.NamingSystemUniqueIdComponent element) throws IOException { 18269 if (element != null) { 18270 composeElementAttributes(element); 18271 xml.enter(FHIR_NS, name); 18272 composeBackboneElements(element); 18273 if (element.hasTypeElement()) 18274 composeEnumeration("type", element.getTypeElement(), new NamingSystem.NamingSystemIdentifierTypeEnumFactory()); 18275 if (element.hasValueElement()) { 18276 composeString("value", element.getValueElement()); 18277 } 18278 if (element.hasPreferredElement()) { 18279 composeBoolean("preferred", element.getPreferredElement()); 18280 } 18281 if (element.hasPeriod()) { 18282 composePeriod("period", element.getPeriod()); 18283 } 18284 composeElementClose(element); 18285 xml.exit(FHIR_NS, name); 18286 } 18287 } 18288 18289 protected void composeNutritionOrder(String name, NutritionOrder element) throws IOException { 18290 if (element != null) { 18291 composeDomainResourceAttributes(element); 18292 xml.enter(FHIR_NS, name); 18293 composeDomainResourceElements(element); 18294 if (element.hasPatient()) { 18295 composeReference("patient", element.getPatient()); 18296 } 18297 if (element.hasOrderer()) { 18298 composeReference("orderer", element.getOrderer()); 18299 } 18300 if (element.hasIdentifier()) { 18301 for (Identifier e : element.getIdentifier()) 18302 composeIdentifier("identifier", e); 18303 } 18304 if (element.hasEncounter()) { 18305 composeReference("encounter", element.getEncounter()); 18306 } 18307 if (element.hasDateTimeElement()) { 18308 composeDateTime("dateTime", element.getDateTimeElement()); 18309 } 18310 if (element.hasStatusElement()) 18311 composeEnumeration("status", element.getStatusElement(), new NutritionOrder.NutritionOrderStatusEnumFactory()); 18312 if (element.hasAllergyIntolerance()) { 18313 for (Reference e : element.getAllergyIntolerance()) 18314 composeReference("allergyIntolerance", e); 18315 } 18316 if (element.hasFoodPreferenceModifier()) { 18317 for (CodeableConcept e : element.getFoodPreferenceModifier()) 18318 composeCodeableConcept("foodPreferenceModifier", e); 18319 } 18320 if (element.hasExcludeFoodModifier()) { 18321 for (CodeableConcept e : element.getExcludeFoodModifier()) 18322 composeCodeableConcept("excludeFoodModifier", e); 18323 } 18324 if (element.hasOralDiet()) { 18325 composeNutritionOrderNutritionOrderOralDietComponent("oralDiet", element.getOralDiet()); 18326 } 18327 if (element.hasSupplement()) { 18328 for (NutritionOrder.NutritionOrderSupplementComponent e : element.getSupplement()) 18329 composeNutritionOrderNutritionOrderSupplementComponent("supplement", e); 18330 } 18331 if (element.hasEnteralFormula()) { 18332 composeNutritionOrderNutritionOrderEnteralFormulaComponent("enteralFormula", element.getEnteralFormula()); 18333 } 18334 composeElementClose(element); 18335 xml.exit(FHIR_NS, name); 18336 } 18337 } 18338 18339 protected void composeNutritionOrderNutritionOrderOralDietComponent(String name, NutritionOrder.NutritionOrderOralDietComponent element) throws IOException { 18340 if (element != null) { 18341 composeElementAttributes(element); 18342 xml.enter(FHIR_NS, name); 18343 composeBackboneElements(element); 18344 if (element.hasType()) { 18345 for (CodeableConcept e : element.getType()) 18346 composeCodeableConcept("type", e); 18347 } 18348 if (element.hasSchedule()) { 18349 for (Timing e : element.getSchedule()) 18350 composeTiming("schedule", e); 18351 } 18352 if (element.hasNutrient()) { 18353 for (NutritionOrder.NutritionOrderOralDietNutrientComponent e : element.getNutrient()) 18354 composeNutritionOrderNutritionOrderOralDietNutrientComponent("nutrient", e); 18355 } 18356 if (element.hasTexture()) { 18357 for (NutritionOrder.NutritionOrderOralDietTextureComponent e : element.getTexture()) 18358 composeNutritionOrderNutritionOrderOralDietTextureComponent("texture", e); 18359 } 18360 if (element.hasFluidConsistencyType()) { 18361 for (CodeableConcept e : element.getFluidConsistencyType()) 18362 composeCodeableConcept("fluidConsistencyType", e); 18363 } 18364 if (element.hasInstructionElement()) { 18365 composeString("instruction", element.getInstructionElement()); 18366 } 18367 composeElementClose(element); 18368 xml.exit(FHIR_NS, name); 18369 } 18370 } 18371 18372 protected void composeNutritionOrderNutritionOrderOralDietNutrientComponent(String name, NutritionOrder.NutritionOrderOralDietNutrientComponent element) throws IOException { 18373 if (element != null) { 18374 composeElementAttributes(element); 18375 xml.enter(FHIR_NS, name); 18376 composeBackboneElements(element); 18377 if (element.hasModifier()) { 18378 composeCodeableConcept("modifier", element.getModifier()); 18379 } 18380 if (element.hasAmount()) { 18381 composeSimpleQuantity("amount", element.getAmount()); 18382 } 18383 composeElementClose(element); 18384 xml.exit(FHIR_NS, name); 18385 } 18386 } 18387 18388 protected void composeNutritionOrderNutritionOrderOralDietTextureComponent(String name, NutritionOrder.NutritionOrderOralDietTextureComponent element) throws IOException { 18389 if (element != null) { 18390 composeElementAttributes(element); 18391 xml.enter(FHIR_NS, name); 18392 composeBackboneElements(element); 18393 if (element.hasModifier()) { 18394 composeCodeableConcept("modifier", element.getModifier()); 18395 } 18396 if (element.hasFoodType()) { 18397 composeCodeableConcept("foodType", element.getFoodType()); 18398 } 18399 composeElementClose(element); 18400 xml.exit(FHIR_NS, name); 18401 } 18402 } 18403 18404 protected void composeNutritionOrderNutritionOrderSupplementComponent(String name, NutritionOrder.NutritionOrderSupplementComponent element) throws IOException { 18405 if (element != null) { 18406 composeElementAttributes(element); 18407 xml.enter(FHIR_NS, name); 18408 composeBackboneElements(element); 18409 if (element.hasType()) { 18410 composeCodeableConcept("type", element.getType()); 18411 } 18412 if (element.hasProductNameElement()) { 18413 composeString("productName", element.getProductNameElement()); 18414 } 18415 if (element.hasSchedule()) { 18416 for (Timing e : element.getSchedule()) 18417 composeTiming("schedule", e); 18418 } 18419 if (element.hasQuantity()) { 18420 composeSimpleQuantity("quantity", element.getQuantity()); 18421 } 18422 if (element.hasInstructionElement()) { 18423 composeString("instruction", element.getInstructionElement()); 18424 } 18425 composeElementClose(element); 18426 xml.exit(FHIR_NS, name); 18427 } 18428 } 18429 18430 protected void composeNutritionOrderNutritionOrderEnteralFormulaComponent(String name, NutritionOrder.NutritionOrderEnteralFormulaComponent element) throws IOException { 18431 if (element != null) { 18432 composeElementAttributes(element); 18433 xml.enter(FHIR_NS, name); 18434 composeBackboneElements(element); 18435 if (element.hasBaseFormulaType()) { 18436 composeCodeableConcept("baseFormulaType", element.getBaseFormulaType()); 18437 } 18438 if (element.hasBaseFormulaProductNameElement()) { 18439 composeString("baseFormulaProductName", element.getBaseFormulaProductNameElement()); 18440 } 18441 if (element.hasAdditiveType()) { 18442 composeCodeableConcept("additiveType", element.getAdditiveType()); 18443 } 18444 if (element.hasAdditiveProductNameElement()) { 18445 composeString("additiveProductName", element.getAdditiveProductNameElement()); 18446 } 18447 if (element.hasCaloricDensity()) { 18448 composeSimpleQuantity("caloricDensity", element.getCaloricDensity()); 18449 } 18450 if (element.hasRouteofAdministration()) { 18451 composeCodeableConcept("routeofAdministration", element.getRouteofAdministration()); 18452 } 18453 if (element.hasAdministration()) { 18454 for (NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent e : element.getAdministration()) 18455 composeNutritionOrderNutritionOrderEnteralFormulaAdministrationComponent("administration", e); 18456 } 18457 if (element.hasMaxVolumeToDeliver()) { 18458 composeSimpleQuantity("maxVolumeToDeliver", element.getMaxVolumeToDeliver()); 18459 } 18460 if (element.hasAdministrationInstructionElement()) { 18461 composeString("administrationInstruction", element.getAdministrationInstructionElement()); 18462 } 18463 composeElementClose(element); 18464 xml.exit(FHIR_NS, name); 18465 } 18466 } 18467 18468 protected void composeNutritionOrderNutritionOrderEnteralFormulaAdministrationComponent(String name, NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent element) throws IOException { 18469 if (element != null) { 18470 composeElementAttributes(element); 18471 xml.enter(FHIR_NS, name); 18472 composeBackboneElements(element); 18473 if (element.hasSchedule()) { 18474 composeTiming("schedule", element.getSchedule()); 18475 } 18476 if (element.hasQuantity()) { 18477 composeSimpleQuantity("quantity", element.getQuantity()); 18478 } 18479 if (element.hasRate()) { 18480 composeType("rate", element.getRate()); 18481 } composeElementClose(element); 18482 xml.exit(FHIR_NS, name); 18483 } 18484 } 18485 18486 protected void composeObservation(String name, Observation element) throws IOException { 18487 if (element != null) { 18488 composeDomainResourceAttributes(element); 18489 xml.enter(FHIR_NS, name); 18490 composeDomainResourceElements(element); 18491 if (element.hasIdentifier()) { 18492 for (Identifier e : element.getIdentifier()) 18493 composeIdentifier("identifier", e); 18494 } 18495 if (element.hasStatusElement()) 18496 composeEnumeration("status", element.getStatusElement(), new Observation.ObservationStatusEnumFactory()); 18497 if (element.hasCategory()) { 18498 composeCodeableConcept("category", element.getCategory()); 18499 } 18500 if (element.hasCode()) { 18501 composeCodeableConcept("code", element.getCode()); 18502 } 18503 if (element.hasSubject()) { 18504 composeReference("subject", element.getSubject()); 18505 } 18506 if (element.hasEncounter()) { 18507 composeReference("encounter", element.getEncounter()); 18508 } 18509 if (element.hasEffective()) { 18510 composeType("effective", element.getEffective()); 18511 } if (element.hasIssuedElement()) { 18512 composeInstant("issued", element.getIssuedElement()); 18513 } 18514 if (element.hasPerformer()) { 18515 for (Reference e : element.getPerformer()) 18516 composeReference("performer", e); 18517 } 18518 if (element.hasValue()) { 18519 composeType("value", element.getValue()); 18520 } if (element.hasDataAbsentReason()) { 18521 composeCodeableConcept("dataAbsentReason", element.getDataAbsentReason()); 18522 } 18523 if (element.hasInterpretation()) { 18524 composeCodeableConcept("interpretation", element.getInterpretation()); 18525 } 18526 if (element.hasCommentsElement()) { 18527 composeString("comments", element.getCommentsElement()); 18528 } 18529 if (element.hasBodySite()) { 18530 composeCodeableConcept("bodySite", element.getBodySite()); 18531 } 18532 if (element.hasMethod()) { 18533 composeCodeableConcept("method", element.getMethod()); 18534 } 18535 if (element.hasSpecimen()) { 18536 composeReference("specimen", element.getSpecimen()); 18537 } 18538 if (element.hasDevice()) { 18539 composeReference("device", element.getDevice()); 18540 } 18541 if (element.hasReferenceRange()) { 18542 for (Observation.ObservationReferenceRangeComponent e : element.getReferenceRange()) 18543 composeObservationObservationReferenceRangeComponent("referenceRange", e); 18544 } 18545 if (element.hasRelated()) { 18546 for (Observation.ObservationRelatedComponent e : element.getRelated()) 18547 composeObservationObservationRelatedComponent("related", e); 18548 } 18549 if (element.hasComponent()) { 18550 for (Observation.ObservationComponentComponent e : element.getComponent()) 18551 composeObservationObservationComponentComponent("component", e); 18552 } 18553 composeElementClose(element); 18554 xml.exit(FHIR_NS, name); 18555 } 18556 } 18557 18558 protected void composeObservationObservationReferenceRangeComponent(String name, Observation.ObservationReferenceRangeComponent element) throws IOException { 18559 if (element != null) { 18560 composeElementAttributes(element); 18561 xml.enter(FHIR_NS, name); 18562 composeBackboneElements(element); 18563 if (element.hasLow()) { 18564 composeSimpleQuantity("low", element.getLow()); 18565 } 18566 if (element.hasHigh()) { 18567 composeSimpleQuantity("high", element.getHigh()); 18568 } 18569 if (element.hasMeaning()) { 18570 composeCodeableConcept("meaning", element.getMeaning()); 18571 } 18572 if (element.hasAge()) { 18573 composeRange("age", element.getAge()); 18574 } 18575 if (element.hasTextElement()) { 18576 composeString("text", element.getTextElement()); 18577 } 18578 composeElementClose(element); 18579 xml.exit(FHIR_NS, name); 18580 } 18581 } 18582 18583 protected void composeObservationObservationRelatedComponent(String name, Observation.ObservationRelatedComponent element) throws IOException { 18584 if (element != null) { 18585 composeElementAttributes(element); 18586 xml.enter(FHIR_NS, name); 18587 composeBackboneElements(element); 18588 if (element.hasTypeElement()) 18589 composeEnumeration("type", element.getTypeElement(), new Observation.ObservationRelationshipTypeEnumFactory()); 18590 if (element.hasTarget()) { 18591 composeReference("target", element.getTarget()); 18592 } 18593 composeElementClose(element); 18594 xml.exit(FHIR_NS, name); 18595 } 18596 } 18597 18598 protected void composeObservationObservationComponentComponent(String name, Observation.ObservationComponentComponent element) throws IOException { 18599 if (element != null) { 18600 composeElementAttributes(element); 18601 xml.enter(FHIR_NS, name); 18602 composeBackboneElements(element); 18603 if (element.hasCode()) { 18604 composeCodeableConcept("code", element.getCode()); 18605 } 18606 if (element.hasValue()) { 18607 composeType("value", element.getValue()); 18608 } if (element.hasDataAbsentReason()) { 18609 composeCodeableConcept("dataAbsentReason", element.getDataAbsentReason()); 18610 } 18611 if (element.hasReferenceRange()) { 18612 for (Observation.ObservationReferenceRangeComponent e : element.getReferenceRange()) 18613 composeObservationObservationReferenceRangeComponent("referenceRange", e); 18614 } 18615 composeElementClose(element); 18616 xml.exit(FHIR_NS, name); 18617 } 18618 } 18619 18620 protected void composeOperationDefinition(String name, OperationDefinition element) throws IOException { 18621 if (element != null) { 18622 composeDomainResourceAttributes(element); 18623 xml.enter(FHIR_NS, name); 18624 composeDomainResourceElements(element); 18625 if (element.hasUrlElement()) { 18626 composeUri("url", element.getUrlElement()); 18627 } 18628 if (element.hasVersionElement()) { 18629 composeString("version", element.getVersionElement()); 18630 } 18631 if (element.hasNameElement()) { 18632 composeString("name", element.getNameElement()); 18633 } 18634 if (element.hasStatusElement()) 18635 composeEnumeration("status", element.getStatusElement(), new Enumerations.ConformanceResourceStatusEnumFactory()); 18636 if (element.hasKindElement()) 18637 composeEnumeration("kind", element.getKindElement(), new OperationDefinition.OperationKindEnumFactory()); 18638 if (element.hasExperimentalElement()) { 18639 composeBoolean("experimental", element.getExperimentalElement()); 18640 } 18641 if (element.hasPublisherElement()) { 18642 composeString("publisher", element.getPublisherElement()); 18643 } 18644 if (element.hasContact()) { 18645 for (OperationDefinition.OperationDefinitionContactComponent e : element.getContact()) 18646 composeOperationDefinitionOperationDefinitionContactComponent("contact", e); 18647 } 18648 if (element.hasDateElement()) { 18649 composeDateTime("date", element.getDateElement()); 18650 } 18651 if (element.hasDescriptionElement()) { 18652 composeString("description", element.getDescriptionElement()); 18653 } 18654 if (element.hasRequirementsElement()) { 18655 composeString("requirements", element.getRequirementsElement()); 18656 } 18657 if (element.hasIdempotentElement()) { 18658 composeBoolean("idempotent", element.getIdempotentElement()); 18659 } 18660 if (element.hasCodeElement()) { 18661 composeCode("code", element.getCodeElement()); 18662 } 18663 if (element.hasNotesElement()) { 18664 composeString("notes", element.getNotesElement()); 18665 } 18666 if (element.hasBase()) { 18667 composeReference("base", element.getBase()); 18668 } 18669 if (element.hasSystemElement()) { 18670 composeBoolean("system", element.getSystemElement()); 18671 } 18672 if (element.hasType()) { 18673 for (CodeType e : element.getType()) 18674 composeCode("type", e); 18675 } 18676 if (element.hasInstanceElement()) { 18677 composeBoolean("instance", element.getInstanceElement()); 18678 } 18679 if (element.hasParameter()) { 18680 for (OperationDefinition.OperationDefinitionParameterComponent e : element.getParameter()) 18681 composeOperationDefinitionOperationDefinitionParameterComponent("parameter", e); 18682 } 18683 composeElementClose(element); 18684 xml.exit(FHIR_NS, name); 18685 } 18686 } 18687 18688 protected void composeOperationDefinitionOperationDefinitionContactComponent(String name, OperationDefinition.OperationDefinitionContactComponent element) throws IOException { 18689 if (element != null) { 18690 composeElementAttributes(element); 18691 xml.enter(FHIR_NS, name); 18692 composeBackboneElements(element); 18693 if (element.hasNameElement()) { 18694 composeString("name", element.getNameElement()); 18695 } 18696 if (element.hasTelecom()) { 18697 for (ContactPoint e : element.getTelecom()) 18698 composeContactPoint("telecom", e); 18699 } 18700 composeElementClose(element); 18701 xml.exit(FHIR_NS, name); 18702 } 18703 } 18704 18705 protected void composeOperationDefinitionOperationDefinitionParameterComponent(String name, OperationDefinition.OperationDefinitionParameterComponent element) throws IOException { 18706 if (element != null) { 18707 composeElementAttributes(element); 18708 xml.enter(FHIR_NS, name); 18709 composeBackboneElements(element); 18710 if (element.hasNameElement()) { 18711 composeCode("name", element.getNameElement()); 18712 } 18713 if (element.hasUseElement()) 18714 composeEnumeration("use", element.getUseElement(), new OperationDefinition.OperationParameterUseEnumFactory()); 18715 if (element.hasMinElement()) { 18716 composeInteger("min", element.getMinElement()); 18717 } 18718 if (element.hasMaxElement()) { 18719 composeString("max", element.getMaxElement()); 18720 } 18721 if (element.hasDocumentationElement()) { 18722 composeString("documentation", element.getDocumentationElement()); 18723 } 18724 if (element.hasTypeElement()) { 18725 composeCode("type", element.getTypeElement()); 18726 } 18727 if (element.hasProfile()) { 18728 composeReference("profile", element.getProfile()); 18729 } 18730 if (element.hasBinding()) { 18731 composeOperationDefinitionOperationDefinitionParameterBindingComponent("binding", element.getBinding()); 18732 } 18733 if (element.hasPart()) { 18734 for (OperationDefinition.OperationDefinitionParameterComponent e : element.getPart()) 18735 composeOperationDefinitionOperationDefinitionParameterComponent("part", e); 18736 } 18737 composeElementClose(element); 18738 xml.exit(FHIR_NS, name); 18739 } 18740 } 18741 18742 protected void composeOperationDefinitionOperationDefinitionParameterBindingComponent(String name, OperationDefinition.OperationDefinitionParameterBindingComponent element) throws IOException { 18743 if (element != null) { 18744 composeElementAttributes(element); 18745 xml.enter(FHIR_NS, name); 18746 composeBackboneElements(element); 18747 if (element.hasStrengthElement()) 18748 composeEnumeration("strength", element.getStrengthElement(), new Enumerations.BindingStrengthEnumFactory()); 18749 if (element.hasValueSet()) { 18750 composeType("valueSet", element.getValueSet()); 18751 } composeElementClose(element); 18752 xml.exit(FHIR_NS, name); 18753 } 18754 } 18755 18756 protected void composeOperationOutcome(String name, OperationOutcome element) throws IOException { 18757 if (element != null) { 18758 composeDomainResourceAttributes(element); 18759 xml.enter(FHIR_NS, name); 18760 composeDomainResourceElements(element); 18761 if (element.hasIssue()) { 18762 for (OperationOutcome.OperationOutcomeIssueComponent e : element.getIssue()) 18763 composeOperationOutcomeOperationOutcomeIssueComponent("issue", e); 18764 } 18765 composeElementClose(element); 18766 xml.exit(FHIR_NS, name); 18767 } 18768 } 18769 18770 protected void composeOperationOutcomeOperationOutcomeIssueComponent(String name, OperationOutcome.OperationOutcomeIssueComponent element) throws IOException { 18771 if (element != null) { 18772 composeElementAttributes(element); 18773 xml.enter(FHIR_NS, name); 18774 composeBackboneElements(element); 18775 if (element.hasSeverityElement()) 18776 composeEnumeration("severity", element.getSeverityElement(), new OperationOutcome.IssueSeverityEnumFactory()); 18777 if (element.hasCodeElement()) 18778 composeEnumeration("code", element.getCodeElement(), new OperationOutcome.IssueTypeEnumFactory()); 18779 if (element.hasDetails()) { 18780 composeCodeableConcept("details", element.getDetails()); 18781 } 18782 if (element.hasDiagnosticsElement()) { 18783 composeString("diagnostics", element.getDiagnosticsElement()); 18784 } 18785 if (element.hasLocation()) { 18786 for (StringType e : element.getLocation()) 18787 composeString("location", e); 18788 } 18789 composeElementClose(element); 18790 xml.exit(FHIR_NS, name); 18791 } 18792 } 18793 18794 protected void composeOrder(String name, Order element) throws IOException { 18795 if (element != null) { 18796 composeDomainResourceAttributes(element); 18797 xml.enter(FHIR_NS, name); 18798 composeDomainResourceElements(element); 18799 if (element.hasIdentifier()) { 18800 for (Identifier e : element.getIdentifier()) 18801 composeIdentifier("identifier", e); 18802 } 18803 if (element.hasDateElement()) { 18804 composeDateTime("date", element.getDateElement()); 18805 } 18806 if (element.hasSubject()) { 18807 composeReference("subject", element.getSubject()); 18808 } 18809 if (element.hasSource()) { 18810 composeReference("source", element.getSource()); 18811 } 18812 if (element.hasTarget()) { 18813 composeReference("target", element.getTarget()); 18814 } 18815 if (element.hasReason()) { 18816 composeType("reason", element.getReason()); 18817 } if (element.hasWhen()) { 18818 composeOrderOrderWhenComponent("when", element.getWhen()); 18819 } 18820 if (element.hasDetail()) { 18821 for (Reference e : element.getDetail()) 18822 composeReference("detail", e); 18823 } 18824 composeElementClose(element); 18825 xml.exit(FHIR_NS, name); 18826 } 18827 } 18828 18829 protected void composeOrderOrderWhenComponent(String name, Order.OrderWhenComponent element) throws IOException { 18830 if (element != null) { 18831 composeElementAttributes(element); 18832 xml.enter(FHIR_NS, name); 18833 composeBackboneElements(element); 18834 if (element.hasCode()) { 18835 composeCodeableConcept("code", element.getCode()); 18836 } 18837 if (element.hasSchedule()) { 18838 composeTiming("schedule", element.getSchedule()); 18839 } 18840 composeElementClose(element); 18841 xml.exit(FHIR_NS, name); 18842 } 18843 } 18844 18845 protected void composeOrderResponse(String name, OrderResponse element) throws IOException { 18846 if (element != null) { 18847 composeDomainResourceAttributes(element); 18848 xml.enter(FHIR_NS, name); 18849 composeDomainResourceElements(element); 18850 if (element.hasIdentifier()) { 18851 for (Identifier e : element.getIdentifier()) 18852 composeIdentifier("identifier", e); 18853 } 18854 if (element.hasRequest()) { 18855 composeReference("request", element.getRequest()); 18856 } 18857 if (element.hasDateElement()) { 18858 composeDateTime("date", element.getDateElement()); 18859 } 18860 if (element.hasWho()) { 18861 composeReference("who", element.getWho()); 18862 } 18863 if (element.hasOrderStatusElement()) 18864 composeEnumeration("orderStatus", element.getOrderStatusElement(), new OrderResponse.OrderStatusEnumFactory()); 18865 if (element.hasDescriptionElement()) { 18866 composeString("description", element.getDescriptionElement()); 18867 } 18868 if (element.hasFulfillment()) { 18869 for (Reference e : element.getFulfillment()) 18870 composeReference("fulfillment", e); 18871 } 18872 composeElementClose(element); 18873 xml.exit(FHIR_NS, name); 18874 } 18875 } 18876 18877 protected void composeOrganization(String name, Organization element) throws IOException { 18878 if (element != null) { 18879 composeDomainResourceAttributes(element); 18880 xml.enter(FHIR_NS, name); 18881 composeDomainResourceElements(element); 18882 if (element.hasIdentifier()) { 18883 for (Identifier e : element.getIdentifier()) 18884 composeIdentifier("identifier", e); 18885 } 18886 if (element.hasActiveElement()) { 18887 composeBoolean("active", element.getActiveElement()); 18888 } 18889 if (element.hasType()) { 18890 composeCodeableConcept("type", element.getType()); 18891 } 18892 if (element.hasNameElement()) { 18893 composeString("name", element.getNameElement()); 18894 } 18895 if (element.hasTelecom()) { 18896 for (ContactPoint e : element.getTelecom()) 18897 composeContactPoint("telecom", e); 18898 } 18899 if (element.hasAddress()) { 18900 for (Address e : element.getAddress()) 18901 composeAddress("address", e); 18902 } 18903 if (element.hasPartOf()) { 18904 composeReference("partOf", element.getPartOf()); 18905 } 18906 if (element.hasContact()) { 18907 for (Organization.OrganizationContactComponent e : element.getContact()) 18908 composeOrganizationOrganizationContactComponent("contact", e); 18909 } 18910 composeElementClose(element); 18911 xml.exit(FHIR_NS, name); 18912 } 18913 } 18914 18915 protected void composeOrganizationOrganizationContactComponent(String name, Organization.OrganizationContactComponent element) throws IOException { 18916 if (element != null) { 18917 composeElementAttributes(element); 18918 xml.enter(FHIR_NS, name); 18919 composeBackboneElements(element); 18920 if (element.hasPurpose()) { 18921 composeCodeableConcept("purpose", element.getPurpose()); 18922 } 18923 if (element.hasName()) { 18924 composeHumanName("name", element.getName()); 18925 } 18926 if (element.hasTelecom()) { 18927 for (ContactPoint e : element.getTelecom()) 18928 composeContactPoint("telecom", e); 18929 } 18930 if (element.hasAddress()) { 18931 composeAddress("address", element.getAddress()); 18932 } 18933 composeElementClose(element); 18934 xml.exit(FHIR_NS, name); 18935 } 18936 } 18937 18938 protected void composePatient(String name, Patient element) throws IOException { 18939 if (element != null) { 18940 composeDomainResourceAttributes(element); 18941 xml.enter(FHIR_NS, name); 18942 composeDomainResourceElements(element); 18943 if (element.hasIdentifier()) { 18944 for (Identifier e : element.getIdentifier()) 18945 composeIdentifier("identifier", e); 18946 } 18947 if (element.hasActiveElement()) { 18948 composeBoolean("active", element.getActiveElement()); 18949 } 18950 if (element.hasName()) { 18951 for (HumanName e : element.getName()) 18952 composeHumanName("name", e); 18953 } 18954 if (element.hasTelecom()) { 18955 for (ContactPoint e : element.getTelecom()) 18956 composeContactPoint("telecom", e); 18957 } 18958 if (element.hasGenderElement()) 18959 composeEnumeration("gender", element.getGenderElement(), new Enumerations.AdministrativeGenderEnumFactory()); 18960 if (element.hasBirthDateElement()) { 18961 composeDate("birthDate", element.getBirthDateElement()); 18962 } 18963 if (element.hasDeceased()) { 18964 composeType("deceased", element.getDeceased()); 18965 } if (element.hasAddress()) { 18966 for (Address e : element.getAddress()) 18967 composeAddress("address", e); 18968 } 18969 if (element.hasMaritalStatus()) { 18970 composeCodeableConcept("maritalStatus", element.getMaritalStatus()); 18971 } 18972 if (element.hasMultipleBirth()) { 18973 composeType("multipleBirth", element.getMultipleBirth()); 18974 } if (element.hasPhoto()) { 18975 for (Attachment e : element.getPhoto()) 18976 composeAttachment("photo", e); 18977 } 18978 if (element.hasContact()) { 18979 for (Patient.ContactComponent e : element.getContact()) 18980 composePatientContactComponent("contact", e); 18981 } 18982 if (element.hasAnimal()) { 18983 composePatientAnimalComponent("animal", element.getAnimal()); 18984 } 18985 if (element.hasCommunication()) { 18986 for (Patient.PatientCommunicationComponent e : element.getCommunication()) 18987 composePatientPatientCommunicationComponent("communication", e); 18988 } 18989 if (element.hasCareProvider()) { 18990 for (Reference e : element.getCareProvider()) 18991 composeReference("careProvider", e); 18992 } 18993 if (element.hasManagingOrganization()) { 18994 composeReference("managingOrganization", element.getManagingOrganization()); 18995 } 18996 if (element.hasLink()) { 18997 for (Patient.PatientLinkComponent e : element.getLink()) 18998 composePatientPatientLinkComponent("link", e); 18999 } 19000 composeElementClose(element); 19001 xml.exit(FHIR_NS, name); 19002 } 19003 } 19004 19005 protected void composePatientContactComponent(String name, Patient.ContactComponent element) throws IOException { 19006 if (element != null) { 19007 composeElementAttributes(element); 19008 xml.enter(FHIR_NS, name); 19009 composeBackboneElements(element); 19010 if (element.hasRelationship()) { 19011 for (CodeableConcept e : element.getRelationship()) 19012 composeCodeableConcept("relationship", e); 19013 } 19014 if (element.hasName()) { 19015 composeHumanName("name", element.getName()); 19016 } 19017 if (element.hasTelecom()) { 19018 for (ContactPoint e : element.getTelecom()) 19019 composeContactPoint("telecom", e); 19020 } 19021 if (element.hasAddress()) { 19022 composeAddress("address", element.getAddress()); 19023 } 19024 if (element.hasGenderElement()) 19025 composeEnumeration("gender", element.getGenderElement(), new Enumerations.AdministrativeGenderEnumFactory()); 19026 if (element.hasOrganization()) { 19027 composeReference("organization", element.getOrganization()); 19028 } 19029 if (element.hasPeriod()) { 19030 composePeriod("period", element.getPeriod()); 19031 } 19032 composeElementClose(element); 19033 xml.exit(FHIR_NS, name); 19034 } 19035 } 19036 19037 protected void composePatientAnimalComponent(String name, Patient.AnimalComponent element) throws IOException { 19038 if (element != null) { 19039 composeElementAttributes(element); 19040 xml.enter(FHIR_NS, name); 19041 composeBackboneElements(element); 19042 if (element.hasSpecies()) { 19043 composeCodeableConcept("species", element.getSpecies()); 19044 } 19045 if (element.hasBreed()) { 19046 composeCodeableConcept("breed", element.getBreed()); 19047 } 19048 if (element.hasGenderStatus()) { 19049 composeCodeableConcept("genderStatus", element.getGenderStatus()); 19050 } 19051 composeElementClose(element); 19052 xml.exit(FHIR_NS, name); 19053 } 19054 } 19055 19056 protected void composePatientPatientCommunicationComponent(String name, Patient.PatientCommunicationComponent element) throws IOException { 19057 if (element != null) { 19058 composeElementAttributes(element); 19059 xml.enter(FHIR_NS, name); 19060 composeBackboneElements(element); 19061 if (element.hasLanguage()) { 19062 composeCodeableConcept("language", element.getLanguage()); 19063 } 19064 if (element.hasPreferredElement()) { 19065 composeBoolean("preferred", element.getPreferredElement()); 19066 } 19067 composeElementClose(element); 19068 xml.exit(FHIR_NS, name); 19069 } 19070 } 19071 19072 protected void composePatientPatientLinkComponent(String name, Patient.PatientLinkComponent element) throws IOException { 19073 if (element != null) { 19074 composeElementAttributes(element); 19075 xml.enter(FHIR_NS, name); 19076 composeBackboneElements(element); 19077 if (element.hasOther()) { 19078 composeReference("other", element.getOther()); 19079 } 19080 if (element.hasTypeElement()) 19081 composeEnumeration("type", element.getTypeElement(), new Patient.LinkTypeEnumFactory()); 19082 composeElementClose(element); 19083 xml.exit(FHIR_NS, name); 19084 } 19085 } 19086 19087 protected void composePaymentNotice(String name, PaymentNotice element) throws IOException { 19088 if (element != null) { 19089 composeDomainResourceAttributes(element); 19090 xml.enter(FHIR_NS, name); 19091 composeDomainResourceElements(element); 19092 if (element.hasIdentifier()) { 19093 for (Identifier e : element.getIdentifier()) 19094 composeIdentifier("identifier", e); 19095 } 19096 if (element.hasRuleset()) { 19097 composeCoding("ruleset", element.getRuleset()); 19098 } 19099 if (element.hasOriginalRuleset()) { 19100 composeCoding("originalRuleset", element.getOriginalRuleset()); 19101 } 19102 if (element.hasCreatedElement()) { 19103 composeDateTime("created", element.getCreatedElement()); 19104 } 19105 if (element.hasTarget()) { 19106 composeReference("target", element.getTarget()); 19107 } 19108 if (element.hasProvider()) { 19109 composeReference("provider", element.getProvider()); 19110 } 19111 if (element.hasOrganization()) { 19112 composeReference("organization", element.getOrganization()); 19113 } 19114 if (element.hasRequest()) { 19115 composeReference("request", element.getRequest()); 19116 } 19117 if (element.hasResponse()) { 19118 composeReference("response", element.getResponse()); 19119 } 19120 if (element.hasPaymentStatus()) { 19121 composeCoding("paymentStatus", element.getPaymentStatus()); 19122 } 19123 composeElementClose(element); 19124 xml.exit(FHIR_NS, name); 19125 } 19126 } 19127 19128 protected void composePaymentReconciliation(String name, PaymentReconciliation element) throws IOException { 19129 if (element != null) { 19130 composeDomainResourceAttributes(element); 19131 xml.enter(FHIR_NS, name); 19132 composeDomainResourceElements(element); 19133 if (element.hasIdentifier()) { 19134 for (Identifier e : element.getIdentifier()) 19135 composeIdentifier("identifier", e); 19136 } 19137 if (element.hasRequest()) { 19138 composeReference("request", element.getRequest()); 19139 } 19140 if (element.hasOutcomeElement()) 19141 composeEnumeration("outcome", element.getOutcomeElement(), new Enumerations.RemittanceOutcomeEnumFactory()); 19142 if (element.hasDispositionElement()) { 19143 composeString("disposition", element.getDispositionElement()); 19144 } 19145 if (element.hasRuleset()) { 19146 composeCoding("ruleset", element.getRuleset()); 19147 } 19148 if (element.hasOriginalRuleset()) { 19149 composeCoding("originalRuleset", element.getOriginalRuleset()); 19150 } 19151 if (element.hasCreatedElement()) { 19152 composeDateTime("created", element.getCreatedElement()); 19153 } 19154 if (element.hasPeriod()) { 19155 composePeriod("period", element.getPeriod()); 19156 } 19157 if (element.hasOrganization()) { 19158 composeReference("organization", element.getOrganization()); 19159 } 19160 if (element.hasRequestProvider()) { 19161 composeReference("requestProvider", element.getRequestProvider()); 19162 } 19163 if (element.hasRequestOrganization()) { 19164 composeReference("requestOrganization", element.getRequestOrganization()); 19165 } 19166 if (element.hasDetail()) { 19167 for (PaymentReconciliation.DetailsComponent e : element.getDetail()) 19168 composePaymentReconciliationDetailsComponent("detail", e); 19169 } 19170 if (element.hasForm()) { 19171 composeCoding("form", element.getForm()); 19172 } 19173 if (element.hasTotal()) { 19174 composeMoney("total", element.getTotal()); 19175 } 19176 if (element.hasNote()) { 19177 for (PaymentReconciliation.NotesComponent e : element.getNote()) 19178 composePaymentReconciliationNotesComponent("note", e); 19179 } 19180 composeElementClose(element); 19181 xml.exit(FHIR_NS, name); 19182 } 19183 } 19184 19185 protected void composePaymentReconciliationDetailsComponent(String name, PaymentReconciliation.DetailsComponent element) throws IOException { 19186 if (element != null) { 19187 composeElementAttributes(element); 19188 xml.enter(FHIR_NS, name); 19189 composeBackboneElements(element); 19190 if (element.hasType()) { 19191 composeCoding("type", element.getType()); 19192 } 19193 if (element.hasRequest()) { 19194 composeReference("request", element.getRequest()); 19195 } 19196 if (element.hasResponce()) { 19197 composeReference("responce", element.getResponce()); 19198 } 19199 if (element.hasSubmitter()) { 19200 composeReference("submitter", element.getSubmitter()); 19201 } 19202 if (element.hasPayee()) { 19203 composeReference("payee", element.getPayee()); 19204 } 19205 if (element.hasDateElement()) { 19206 composeDate("date", element.getDateElement()); 19207 } 19208 if (element.hasAmount()) { 19209 composeMoney("amount", element.getAmount()); 19210 } 19211 composeElementClose(element); 19212 xml.exit(FHIR_NS, name); 19213 } 19214 } 19215 19216 protected void composePaymentReconciliationNotesComponent(String name, PaymentReconciliation.NotesComponent element) throws IOException { 19217 if (element != null) { 19218 composeElementAttributes(element); 19219 xml.enter(FHIR_NS, name); 19220 composeBackboneElements(element); 19221 if (element.hasType()) { 19222 composeCoding("type", element.getType()); 19223 } 19224 if (element.hasTextElement()) { 19225 composeString("text", element.getTextElement()); 19226 } 19227 composeElementClose(element); 19228 xml.exit(FHIR_NS, name); 19229 } 19230 } 19231 19232 protected void composePerson(String name, Person element) throws IOException { 19233 if (element != null) { 19234 composeDomainResourceAttributes(element); 19235 xml.enter(FHIR_NS, name); 19236 composeDomainResourceElements(element); 19237 if (element.hasIdentifier()) { 19238 for (Identifier e : element.getIdentifier()) 19239 composeIdentifier("identifier", e); 19240 } 19241 if (element.hasName()) { 19242 for (HumanName e : element.getName()) 19243 composeHumanName("name", e); 19244 } 19245 if (element.hasTelecom()) { 19246 for (ContactPoint e : element.getTelecom()) 19247 composeContactPoint("telecom", e); 19248 } 19249 if (element.hasGenderElement()) 19250 composeEnumeration("gender", element.getGenderElement(), new Enumerations.AdministrativeGenderEnumFactory()); 19251 if (element.hasBirthDateElement()) { 19252 composeDate("birthDate", element.getBirthDateElement()); 19253 } 19254 if (element.hasAddress()) { 19255 for (Address e : element.getAddress()) 19256 composeAddress("address", e); 19257 } 19258 if (element.hasPhoto()) { 19259 composeAttachment("photo", element.getPhoto()); 19260 } 19261 if (element.hasManagingOrganization()) { 19262 composeReference("managingOrganization", element.getManagingOrganization()); 19263 } 19264 if (element.hasActiveElement()) { 19265 composeBoolean("active", element.getActiveElement()); 19266 } 19267 if (element.hasLink()) { 19268 for (Person.PersonLinkComponent e : element.getLink()) 19269 composePersonPersonLinkComponent("link", e); 19270 } 19271 composeElementClose(element); 19272 xml.exit(FHIR_NS, name); 19273 } 19274 } 19275 19276 protected void composePersonPersonLinkComponent(String name, Person.PersonLinkComponent element) throws IOException { 19277 if (element != null) { 19278 composeElementAttributes(element); 19279 xml.enter(FHIR_NS, name); 19280 composeBackboneElements(element); 19281 if (element.hasTarget()) { 19282 composeReference("target", element.getTarget()); 19283 } 19284 if (element.hasAssuranceElement()) 19285 composeEnumeration("assurance", element.getAssuranceElement(), new Person.IdentityAssuranceLevelEnumFactory()); 19286 composeElementClose(element); 19287 xml.exit(FHIR_NS, name); 19288 } 19289 } 19290 19291 protected void composePractitioner(String name, Practitioner element) throws IOException { 19292 if (element != null) { 19293 composeDomainResourceAttributes(element); 19294 xml.enter(FHIR_NS, name); 19295 composeDomainResourceElements(element); 19296 if (element.hasIdentifier()) { 19297 for (Identifier e : element.getIdentifier()) 19298 composeIdentifier("identifier", e); 19299 } 19300 if (element.hasActiveElement()) { 19301 composeBoolean("active", element.getActiveElement()); 19302 } 19303 if (element.hasName()) { 19304 composeHumanName("name", element.getName()); 19305 } 19306 if (element.hasTelecom()) { 19307 for (ContactPoint e : element.getTelecom()) 19308 composeContactPoint("telecom", e); 19309 } 19310 if (element.hasAddress()) { 19311 for (Address e : element.getAddress()) 19312 composeAddress("address", e); 19313 } 19314 if (element.hasGenderElement()) 19315 composeEnumeration("gender", element.getGenderElement(), new Enumerations.AdministrativeGenderEnumFactory()); 19316 if (element.hasBirthDateElement()) { 19317 composeDate("birthDate", element.getBirthDateElement()); 19318 } 19319 if (element.hasPhoto()) { 19320 for (Attachment e : element.getPhoto()) 19321 composeAttachment("photo", e); 19322 } 19323 if (element.hasPractitionerRole()) { 19324 for (Practitioner.PractitionerPractitionerRoleComponent e : element.getPractitionerRole()) 19325 composePractitionerPractitionerPractitionerRoleComponent("practitionerRole", e); 19326 } 19327 if (element.hasQualification()) { 19328 for (Practitioner.PractitionerQualificationComponent e : element.getQualification()) 19329 composePractitionerPractitionerQualificationComponent("qualification", e); 19330 } 19331 if (element.hasCommunication()) { 19332 for (CodeableConcept e : element.getCommunication()) 19333 composeCodeableConcept("communication", e); 19334 } 19335 composeElementClose(element); 19336 xml.exit(FHIR_NS, name); 19337 } 19338 } 19339 19340 protected void composePractitionerPractitionerPractitionerRoleComponent(String name, Practitioner.PractitionerPractitionerRoleComponent element) throws IOException { 19341 if (element != null) { 19342 composeElementAttributes(element); 19343 xml.enter(FHIR_NS, name); 19344 composeBackboneElements(element); 19345 if (element.hasManagingOrganization()) { 19346 composeReference("managingOrganization", element.getManagingOrganization()); 19347 } 19348 if (element.hasRole()) { 19349 composeCodeableConcept("role", element.getRole()); 19350 } 19351 if (element.hasSpecialty()) { 19352 for (CodeableConcept e : element.getSpecialty()) 19353 composeCodeableConcept("specialty", e); 19354 } 19355 if (element.hasPeriod()) { 19356 composePeriod("period", element.getPeriod()); 19357 } 19358 if (element.hasLocation()) { 19359 for (Reference e : element.getLocation()) 19360 composeReference("location", e); 19361 } 19362 if (element.hasHealthcareService()) { 19363 for (Reference e : element.getHealthcareService()) 19364 composeReference("healthcareService", e); 19365 } 19366 composeElementClose(element); 19367 xml.exit(FHIR_NS, name); 19368 } 19369 } 19370 19371 protected void composePractitionerPractitionerQualificationComponent(String name, Practitioner.PractitionerQualificationComponent element) throws IOException { 19372 if (element != null) { 19373 composeElementAttributes(element); 19374 xml.enter(FHIR_NS, name); 19375 composeBackboneElements(element); 19376 if (element.hasIdentifier()) { 19377 for (Identifier e : element.getIdentifier()) 19378 composeIdentifier("identifier", e); 19379 } 19380 if (element.hasCode()) { 19381 composeCodeableConcept("code", element.getCode()); 19382 } 19383 if (element.hasPeriod()) { 19384 composePeriod("period", element.getPeriod()); 19385 } 19386 if (element.hasIssuer()) { 19387 composeReference("issuer", element.getIssuer()); 19388 } 19389 composeElementClose(element); 19390 xml.exit(FHIR_NS, name); 19391 } 19392 } 19393 19394 protected void composeProcedure(String name, Procedure element) throws IOException { 19395 if (element != null) { 19396 composeDomainResourceAttributes(element); 19397 xml.enter(FHIR_NS, name); 19398 composeDomainResourceElements(element); 19399 if (element.hasIdentifier()) { 19400 for (Identifier e : element.getIdentifier()) 19401 composeIdentifier("identifier", e); 19402 } 19403 if (element.hasSubject()) { 19404 composeReference("subject", element.getSubject()); 19405 } 19406 if (element.hasStatusElement()) 19407 composeEnumeration("status", element.getStatusElement(), new Procedure.ProcedureStatusEnumFactory()); 19408 if (element.hasCategory()) { 19409 composeCodeableConcept("category", element.getCategory()); 19410 } 19411 if (element.hasCode()) { 19412 composeCodeableConcept("code", element.getCode()); 19413 } 19414 if (element.hasNotPerformedElement()) { 19415 composeBoolean("notPerformed", element.getNotPerformedElement()); 19416 } 19417 if (element.hasReasonNotPerformed()) { 19418 for (CodeableConcept e : element.getReasonNotPerformed()) 19419 composeCodeableConcept("reasonNotPerformed", e); 19420 } 19421 if (element.hasBodySite()) { 19422 for (CodeableConcept e : element.getBodySite()) 19423 composeCodeableConcept("bodySite", e); 19424 } 19425 if (element.hasReason()) { 19426 composeType("reason", element.getReason()); 19427 } if (element.hasPerformer()) { 19428 for (Procedure.ProcedurePerformerComponent e : element.getPerformer()) 19429 composeProcedureProcedurePerformerComponent("performer", e); 19430 } 19431 if (element.hasPerformed()) { 19432 composeType("performed", element.getPerformed()); 19433 } if (element.hasEncounter()) { 19434 composeReference("encounter", element.getEncounter()); 19435 } 19436 if (element.hasLocation()) { 19437 composeReference("location", element.getLocation()); 19438 } 19439 if (element.hasOutcome()) { 19440 composeCodeableConcept("outcome", element.getOutcome()); 19441 } 19442 if (element.hasReport()) { 19443 for (Reference e : element.getReport()) 19444 composeReference("report", e); 19445 } 19446 if (element.hasComplication()) { 19447 for (CodeableConcept e : element.getComplication()) 19448 composeCodeableConcept("complication", e); 19449 } 19450 if (element.hasFollowUp()) { 19451 for (CodeableConcept e : element.getFollowUp()) 19452 composeCodeableConcept("followUp", e); 19453 } 19454 if (element.hasRequest()) { 19455 composeReference("request", element.getRequest()); 19456 } 19457 if (element.hasNotes()) { 19458 for (Annotation e : element.getNotes()) 19459 composeAnnotation("notes", e); 19460 } 19461 if (element.hasFocalDevice()) { 19462 for (Procedure.ProcedureFocalDeviceComponent e : element.getFocalDevice()) 19463 composeProcedureProcedureFocalDeviceComponent("focalDevice", e); 19464 } 19465 if (element.hasUsed()) { 19466 for (Reference e : element.getUsed()) 19467 composeReference("used", e); 19468 } 19469 composeElementClose(element); 19470 xml.exit(FHIR_NS, name); 19471 } 19472 } 19473 19474 protected void composeProcedureProcedurePerformerComponent(String name, Procedure.ProcedurePerformerComponent element) throws IOException { 19475 if (element != null) { 19476 composeElementAttributes(element); 19477 xml.enter(FHIR_NS, name); 19478 composeBackboneElements(element); 19479 if (element.hasActor()) { 19480 composeReference("actor", element.getActor()); 19481 } 19482 if (element.hasRole()) { 19483 composeCodeableConcept("role", element.getRole()); 19484 } 19485 composeElementClose(element); 19486 xml.exit(FHIR_NS, name); 19487 } 19488 } 19489 19490 protected void composeProcedureProcedureFocalDeviceComponent(String name, Procedure.ProcedureFocalDeviceComponent element) throws IOException { 19491 if (element != null) { 19492 composeElementAttributes(element); 19493 xml.enter(FHIR_NS, name); 19494 composeBackboneElements(element); 19495 if (element.hasAction()) { 19496 composeCodeableConcept("action", element.getAction()); 19497 } 19498 if (element.hasManipulated()) { 19499 composeReference("manipulated", element.getManipulated()); 19500 } 19501 composeElementClose(element); 19502 xml.exit(FHIR_NS, name); 19503 } 19504 } 19505 19506 protected void composeProcedureRequest(String name, ProcedureRequest element) throws IOException { 19507 if (element != null) { 19508 composeDomainResourceAttributes(element); 19509 xml.enter(FHIR_NS, name); 19510 composeDomainResourceElements(element); 19511 if (element.hasIdentifier()) { 19512 for (Identifier e : element.getIdentifier()) 19513 composeIdentifier("identifier", e); 19514 } 19515 if (element.hasSubject()) { 19516 composeReference("subject", element.getSubject()); 19517 } 19518 if (element.hasCode()) { 19519 composeCodeableConcept("code", element.getCode()); 19520 } 19521 if (element.hasBodySite()) { 19522 for (CodeableConcept e : element.getBodySite()) 19523 composeCodeableConcept("bodySite", e); 19524 } 19525 if (element.hasReason()) { 19526 composeType("reason", element.getReason()); 19527 } if (element.hasScheduled()) { 19528 composeType("scheduled", element.getScheduled()); 19529 } if (element.hasEncounter()) { 19530 composeReference("encounter", element.getEncounter()); 19531 } 19532 if (element.hasPerformer()) { 19533 composeReference("performer", element.getPerformer()); 19534 } 19535 if (element.hasStatusElement()) 19536 composeEnumeration("status", element.getStatusElement(), new ProcedureRequest.ProcedureRequestStatusEnumFactory()); 19537 if (element.hasNotes()) { 19538 for (Annotation e : element.getNotes()) 19539 composeAnnotation("notes", e); 19540 } 19541 if (element.hasAsNeeded()) { 19542 composeType("asNeeded", element.getAsNeeded()); 19543 } if (element.hasOrderedOnElement()) { 19544 composeDateTime("orderedOn", element.getOrderedOnElement()); 19545 } 19546 if (element.hasOrderer()) { 19547 composeReference("orderer", element.getOrderer()); 19548 } 19549 if (element.hasPriorityElement()) 19550 composeEnumeration("priority", element.getPriorityElement(), new ProcedureRequest.ProcedureRequestPriorityEnumFactory()); 19551 composeElementClose(element); 19552 xml.exit(FHIR_NS, name); 19553 } 19554 } 19555 19556 protected void composeProcessRequest(String name, ProcessRequest element) throws IOException { 19557 if (element != null) { 19558 composeDomainResourceAttributes(element); 19559 xml.enter(FHIR_NS, name); 19560 composeDomainResourceElements(element); 19561 if (element.hasActionElement()) 19562 composeEnumeration("action", element.getActionElement(), new ProcessRequest.ActionListEnumFactory()); 19563 if (element.hasIdentifier()) { 19564 for (Identifier e : element.getIdentifier()) 19565 composeIdentifier("identifier", e); 19566 } 19567 if (element.hasRuleset()) { 19568 composeCoding("ruleset", element.getRuleset()); 19569 } 19570 if (element.hasOriginalRuleset()) { 19571 composeCoding("originalRuleset", element.getOriginalRuleset()); 19572 } 19573 if (element.hasCreatedElement()) { 19574 composeDateTime("created", element.getCreatedElement()); 19575 } 19576 if (element.hasTarget()) { 19577 composeReference("target", element.getTarget()); 19578 } 19579 if (element.hasProvider()) { 19580 composeReference("provider", element.getProvider()); 19581 } 19582 if (element.hasOrganization()) { 19583 composeReference("organization", element.getOrganization()); 19584 } 19585 if (element.hasRequest()) { 19586 composeReference("request", element.getRequest()); 19587 } 19588 if (element.hasResponse()) { 19589 composeReference("response", element.getResponse()); 19590 } 19591 if (element.hasNullifyElement()) { 19592 composeBoolean("nullify", element.getNullifyElement()); 19593 } 19594 if (element.hasReferenceElement()) { 19595 composeString("reference", element.getReferenceElement()); 19596 } 19597 if (element.hasItem()) { 19598 for (ProcessRequest.ItemsComponent e : element.getItem()) 19599 composeProcessRequestItemsComponent("item", e); 19600 } 19601 if (element.hasInclude()) { 19602 for (StringType e : element.getInclude()) 19603 composeString("include", e); 19604 } 19605 if (element.hasExclude()) { 19606 for (StringType e : element.getExclude()) 19607 composeString("exclude", e); 19608 } 19609 if (element.hasPeriod()) { 19610 composePeriod("period", element.getPeriod()); 19611 } 19612 composeElementClose(element); 19613 xml.exit(FHIR_NS, name); 19614 } 19615 } 19616 19617 protected void composeProcessRequestItemsComponent(String name, ProcessRequest.ItemsComponent element) throws IOException { 19618 if (element != null) { 19619 composeElementAttributes(element); 19620 xml.enter(FHIR_NS, name); 19621 composeBackboneElements(element); 19622 if (element.hasSequenceLinkIdElement()) { 19623 composeInteger("sequenceLinkId", element.getSequenceLinkIdElement()); 19624 } 19625 composeElementClose(element); 19626 xml.exit(FHIR_NS, name); 19627 } 19628 } 19629 19630 protected void composeProcessResponse(String name, ProcessResponse element) throws IOException { 19631 if (element != null) { 19632 composeDomainResourceAttributes(element); 19633 xml.enter(FHIR_NS, name); 19634 composeDomainResourceElements(element); 19635 if (element.hasIdentifier()) { 19636 for (Identifier e : element.getIdentifier()) 19637 composeIdentifier("identifier", e); 19638 } 19639 if (element.hasRequest()) { 19640 composeReference("request", element.getRequest()); 19641 } 19642 if (element.hasOutcome()) { 19643 composeCoding("outcome", element.getOutcome()); 19644 } 19645 if (element.hasDispositionElement()) { 19646 composeString("disposition", element.getDispositionElement()); 19647 } 19648 if (element.hasRuleset()) { 19649 composeCoding("ruleset", element.getRuleset()); 19650 } 19651 if (element.hasOriginalRuleset()) { 19652 composeCoding("originalRuleset", element.getOriginalRuleset()); 19653 } 19654 if (element.hasCreatedElement()) { 19655 composeDateTime("created", element.getCreatedElement()); 19656 } 19657 if (element.hasOrganization()) { 19658 composeReference("organization", element.getOrganization()); 19659 } 19660 if (element.hasRequestProvider()) { 19661 composeReference("requestProvider", element.getRequestProvider()); 19662 } 19663 if (element.hasRequestOrganization()) { 19664 composeReference("requestOrganization", element.getRequestOrganization()); 19665 } 19666 if (element.hasForm()) { 19667 composeCoding("form", element.getForm()); 19668 } 19669 if (element.hasNotes()) { 19670 for (ProcessResponse.ProcessResponseNotesComponent e : element.getNotes()) 19671 composeProcessResponseProcessResponseNotesComponent("notes", e); 19672 } 19673 if (element.hasError()) { 19674 for (Coding e : element.getError()) 19675 composeCoding("error", e); 19676 } 19677 composeElementClose(element); 19678 xml.exit(FHIR_NS, name); 19679 } 19680 } 19681 19682 protected void composeProcessResponseProcessResponseNotesComponent(String name, ProcessResponse.ProcessResponseNotesComponent element) throws IOException { 19683 if (element != null) { 19684 composeElementAttributes(element); 19685 xml.enter(FHIR_NS, name); 19686 composeBackboneElements(element); 19687 if (element.hasType()) { 19688 composeCoding("type", element.getType()); 19689 } 19690 if (element.hasTextElement()) { 19691 composeString("text", element.getTextElement()); 19692 } 19693 composeElementClose(element); 19694 xml.exit(FHIR_NS, name); 19695 } 19696 } 19697 19698 protected void composeProvenance(String name, Provenance element) throws IOException { 19699 if (element != null) { 19700 composeDomainResourceAttributes(element); 19701 xml.enter(FHIR_NS, name); 19702 composeDomainResourceElements(element); 19703 if (element.hasTarget()) { 19704 for (Reference e : element.getTarget()) 19705 composeReference("target", e); 19706 } 19707 if (element.hasPeriod()) { 19708 composePeriod("period", element.getPeriod()); 19709 } 19710 if (element.hasRecordedElement()) { 19711 composeInstant("recorded", element.getRecordedElement()); 19712 } 19713 if (element.hasReason()) { 19714 for (CodeableConcept e : element.getReason()) 19715 composeCodeableConcept("reason", e); 19716 } 19717 if (element.hasActivity()) { 19718 composeCodeableConcept("activity", element.getActivity()); 19719 } 19720 if (element.hasLocation()) { 19721 composeReference("location", element.getLocation()); 19722 } 19723 if (element.hasPolicy()) { 19724 for (UriType e : element.getPolicy()) 19725 composeUri("policy", e); 19726 } 19727 if (element.hasAgent()) { 19728 for (Provenance.ProvenanceAgentComponent e : element.getAgent()) 19729 composeProvenanceProvenanceAgentComponent("agent", e); 19730 } 19731 if (element.hasEntity()) { 19732 for (Provenance.ProvenanceEntityComponent e : element.getEntity()) 19733 composeProvenanceProvenanceEntityComponent("entity", e); 19734 } 19735 if (element.hasSignature()) { 19736 for (Signature e : element.getSignature()) 19737 composeSignature("signature", e); 19738 } 19739 composeElementClose(element); 19740 xml.exit(FHIR_NS, name); 19741 } 19742 } 19743 19744 protected void composeProvenanceProvenanceAgentComponent(String name, Provenance.ProvenanceAgentComponent element) throws IOException { 19745 if (element != null) { 19746 composeElementAttributes(element); 19747 xml.enter(FHIR_NS, name); 19748 composeBackboneElements(element); 19749 if (element.hasRole()) { 19750 composeCoding("role", element.getRole()); 19751 } 19752 if (element.hasActor()) { 19753 composeReference("actor", element.getActor()); 19754 } 19755 if (element.hasUserId()) { 19756 composeIdentifier("userId", element.getUserId()); 19757 } 19758 if (element.hasRelatedAgent()) { 19759 for (Provenance.ProvenanceAgentRelatedAgentComponent e : element.getRelatedAgent()) 19760 composeProvenanceProvenanceAgentRelatedAgentComponent("relatedAgent", e); 19761 } 19762 composeElementClose(element); 19763 xml.exit(FHIR_NS, name); 19764 } 19765 } 19766 19767 protected void composeProvenanceProvenanceAgentRelatedAgentComponent(String name, Provenance.ProvenanceAgentRelatedAgentComponent element) throws IOException { 19768 if (element != null) { 19769 composeElementAttributes(element); 19770 xml.enter(FHIR_NS, name); 19771 composeBackboneElements(element); 19772 if (element.hasType()) { 19773 composeCodeableConcept("type", element.getType()); 19774 } 19775 if (element.hasTargetElement()) { 19776 composeUri("target", element.getTargetElement()); 19777 } 19778 composeElementClose(element); 19779 xml.exit(FHIR_NS, name); 19780 } 19781 } 19782 19783 protected void composeProvenanceProvenanceEntityComponent(String name, Provenance.ProvenanceEntityComponent element) throws IOException { 19784 if (element != null) { 19785 composeElementAttributes(element); 19786 xml.enter(FHIR_NS, name); 19787 composeBackboneElements(element); 19788 if (element.hasRoleElement()) 19789 composeEnumeration("role", element.getRoleElement(), new Provenance.ProvenanceEntityRoleEnumFactory()); 19790 if (element.hasType()) { 19791 composeCoding("type", element.getType()); 19792 } 19793 if (element.hasReferenceElement()) { 19794 composeUri("reference", element.getReferenceElement()); 19795 } 19796 if (element.hasDisplayElement()) { 19797 composeString("display", element.getDisplayElement()); 19798 } 19799 if (element.hasAgent()) { 19800 composeProvenanceProvenanceAgentComponent("agent", element.getAgent()); 19801 } 19802 composeElementClose(element); 19803 xml.exit(FHIR_NS, name); 19804 } 19805 } 19806 19807 protected void composeQuestionnaire(String name, Questionnaire element) throws IOException { 19808 if (element != null) { 19809 composeDomainResourceAttributes(element); 19810 xml.enter(FHIR_NS, name); 19811 composeDomainResourceElements(element); 19812 if (element.hasIdentifier()) { 19813 for (Identifier e : element.getIdentifier()) 19814 composeIdentifier("identifier", e); 19815 } 19816 if (element.hasVersionElement()) { 19817 composeString("version", element.getVersionElement()); 19818 } 19819 if (element.hasStatusElement()) 19820 composeEnumeration("status", element.getStatusElement(), new Questionnaire.QuestionnaireStatusEnumFactory()); 19821 if (element.hasDateElement()) { 19822 composeDateTime("date", element.getDateElement()); 19823 } 19824 if (element.hasPublisherElement()) { 19825 composeString("publisher", element.getPublisherElement()); 19826 } 19827 if (element.hasTelecom()) { 19828 for (ContactPoint e : element.getTelecom()) 19829 composeContactPoint("telecom", e); 19830 } 19831 if (element.hasSubjectType()) { 19832 for (CodeType e : element.getSubjectType()) 19833 composeCode("subjectType", e); 19834 } 19835 if (element.hasGroup()) { 19836 composeQuestionnaireGroupComponent("group", element.getGroup()); 19837 } 19838 composeElementClose(element); 19839 xml.exit(FHIR_NS, name); 19840 } 19841 } 19842 19843 protected void composeQuestionnaireGroupComponent(String name, Questionnaire.GroupComponent element) throws IOException { 19844 if (element != null) { 19845 composeElementAttributes(element); 19846 xml.enter(FHIR_NS, name); 19847 composeBackboneElements(element); 19848 if (element.hasLinkIdElement()) { 19849 composeString("linkId", element.getLinkIdElement()); 19850 } 19851 if (element.hasTitleElement()) { 19852 composeString("title", element.getTitleElement()); 19853 } 19854 if (element.hasConcept()) { 19855 for (Coding e : element.getConcept()) 19856 composeCoding("concept", e); 19857 } 19858 if (element.hasTextElement()) { 19859 composeString("text", element.getTextElement()); 19860 } 19861 if (element.hasRequiredElement()) { 19862 composeBoolean("required", element.getRequiredElement()); 19863 } 19864 if (element.hasRepeatsElement()) { 19865 composeBoolean("repeats", element.getRepeatsElement()); 19866 } 19867 if (element.hasGroup()) { 19868 for (Questionnaire.GroupComponent e : element.getGroup()) 19869 composeQuestionnaireGroupComponent("group", e); 19870 } 19871 if (element.hasQuestion()) { 19872 for (Questionnaire.QuestionComponent e : element.getQuestion()) 19873 composeQuestionnaireQuestionComponent("question", e); 19874 } 19875 composeElementClose(element); 19876 xml.exit(FHIR_NS, name); 19877 } 19878 } 19879 19880 protected void composeQuestionnaireQuestionComponent(String name, Questionnaire.QuestionComponent element) throws IOException { 19881 if (element != null) { 19882 composeElementAttributes(element); 19883 xml.enter(FHIR_NS, name); 19884 composeBackboneElements(element); 19885 if (element.hasLinkIdElement()) { 19886 composeString("linkId", element.getLinkIdElement()); 19887 } 19888 if (element.hasConcept()) { 19889 for (Coding e : element.getConcept()) 19890 composeCoding("concept", e); 19891 } 19892 if (element.hasTextElement()) { 19893 composeString("text", element.getTextElement()); 19894 } 19895 if (element.hasTypeElement()) 19896 composeEnumeration("type", element.getTypeElement(), new Questionnaire.AnswerFormatEnumFactory()); 19897 if (element.hasRequiredElement()) { 19898 composeBoolean("required", element.getRequiredElement()); 19899 } 19900 if (element.hasRepeatsElement()) { 19901 composeBoolean("repeats", element.getRepeatsElement()); 19902 } 19903 if (element.hasOptions()) { 19904 composeReference("options", element.getOptions()); 19905 } 19906 if (element.hasOption()) { 19907 for (Coding e : element.getOption()) 19908 composeCoding("option", e); 19909 } 19910 if (element.hasGroup()) { 19911 for (Questionnaire.GroupComponent e : element.getGroup()) 19912 composeQuestionnaireGroupComponent("group", e); 19913 } 19914 composeElementClose(element); 19915 xml.exit(FHIR_NS, name); 19916 } 19917 } 19918 19919 protected void composeQuestionnaireResponse(String name, QuestionnaireResponse element) throws IOException { 19920 if (element != null) { 19921 composeDomainResourceAttributes(element); 19922 xml.enter(FHIR_NS, name); 19923 composeDomainResourceElements(element); 19924 if (element.hasIdentifier()) { 19925 composeIdentifier("identifier", element.getIdentifier()); 19926 } 19927 if (element.hasQuestionnaire()) { 19928 composeReference("questionnaire", element.getQuestionnaire()); 19929 } 19930 if (element.hasStatusElement()) 19931 composeEnumeration("status", element.getStatusElement(), new QuestionnaireResponse.QuestionnaireResponseStatusEnumFactory()); 19932 if (element.hasSubject()) { 19933 composeReference("subject", element.getSubject()); 19934 } 19935 if (element.hasAuthor()) { 19936 composeReference("author", element.getAuthor()); 19937 } 19938 if (element.hasAuthoredElement()) { 19939 composeDateTime("authored", element.getAuthoredElement()); 19940 } 19941 if (element.hasSource()) { 19942 composeReference("source", element.getSource()); 19943 } 19944 if (element.hasEncounter()) { 19945 composeReference("encounter", element.getEncounter()); 19946 } 19947 if (element.hasGroup()) { 19948 composeQuestionnaireResponseGroupComponent("group", element.getGroup()); 19949 } 19950 composeElementClose(element); 19951 xml.exit(FHIR_NS, name); 19952 } 19953 } 19954 19955 protected void composeQuestionnaireResponseGroupComponent(String name, QuestionnaireResponse.GroupComponent element) throws IOException { 19956 if (element != null) { 19957 composeElementAttributes(element); 19958 xml.enter(FHIR_NS, name); 19959 composeBackboneElements(element); 19960 if (element.hasLinkIdElement()) { 19961 composeString("linkId", element.getLinkIdElement()); 19962 } 19963 if (element.hasTitleElement()) { 19964 composeString("title", element.getTitleElement()); 19965 } 19966 if (element.hasTextElement()) { 19967 composeString("text", element.getTextElement()); 19968 } 19969 if (element.hasSubject()) { 19970 composeReference("subject", element.getSubject()); 19971 } 19972 if (element.hasGroup()) { 19973 for (QuestionnaireResponse.GroupComponent e : element.getGroup()) 19974 composeQuestionnaireResponseGroupComponent("group", e); 19975 } 19976 if (element.hasQuestion()) { 19977 for (QuestionnaireResponse.QuestionComponent e : element.getQuestion()) 19978 composeQuestionnaireResponseQuestionComponent("question", e); 19979 } 19980 composeElementClose(element); 19981 xml.exit(FHIR_NS, name); 19982 } 19983 } 19984 19985 protected void composeQuestionnaireResponseQuestionComponent(String name, QuestionnaireResponse.QuestionComponent element) throws IOException { 19986 if (element != null) { 19987 composeElementAttributes(element); 19988 xml.enter(FHIR_NS, name); 19989 composeBackboneElements(element); 19990 if (element.hasLinkIdElement()) { 19991 composeString("linkId", element.getLinkIdElement()); 19992 } 19993 if (element.hasTextElement()) { 19994 composeString("text", element.getTextElement()); 19995 } 19996 if (element.hasAnswer()) { 19997 for (QuestionnaireResponse.QuestionAnswerComponent e : element.getAnswer()) 19998 composeQuestionnaireResponseQuestionAnswerComponent("answer", e); 19999 } 20000 composeElementClose(element); 20001 xml.exit(FHIR_NS, name); 20002 } 20003 } 20004 20005 protected void composeQuestionnaireResponseQuestionAnswerComponent(String name, QuestionnaireResponse.QuestionAnswerComponent element) throws IOException { 20006 if (element != null) { 20007 composeElementAttributes(element); 20008 xml.enter(FHIR_NS, name); 20009 composeBackboneElements(element); 20010 if (element.hasValue()) { 20011 composeType("value", element.getValue()); 20012 } if (element.hasGroup()) { 20013 for (QuestionnaireResponse.GroupComponent e : element.getGroup()) 20014 composeQuestionnaireResponseGroupComponent("group", e); 20015 } 20016 composeElementClose(element); 20017 xml.exit(FHIR_NS, name); 20018 } 20019 } 20020 20021 protected void composeReferralRequest(String name, ReferralRequest element) throws IOException { 20022 if (element != null) { 20023 composeDomainResourceAttributes(element); 20024 xml.enter(FHIR_NS, name); 20025 composeDomainResourceElements(element); 20026 if (element.hasStatusElement()) 20027 composeEnumeration("status", element.getStatusElement(), new ReferralRequest.ReferralStatusEnumFactory()); 20028 if (element.hasIdentifier()) { 20029 for (Identifier e : element.getIdentifier()) 20030 composeIdentifier("identifier", e); 20031 } 20032 if (element.hasDateElement()) { 20033 composeDateTime("date", element.getDateElement()); 20034 } 20035 if (element.hasType()) { 20036 composeCodeableConcept("type", element.getType()); 20037 } 20038 if (element.hasSpecialty()) { 20039 composeCodeableConcept("specialty", element.getSpecialty()); 20040 } 20041 if (element.hasPriority()) { 20042 composeCodeableConcept("priority", element.getPriority()); 20043 } 20044 if (element.hasPatient()) { 20045 composeReference("patient", element.getPatient()); 20046 } 20047 if (element.hasRequester()) { 20048 composeReference("requester", element.getRequester()); 20049 } 20050 if (element.hasRecipient()) { 20051 for (Reference e : element.getRecipient()) 20052 composeReference("recipient", e); 20053 } 20054 if (element.hasEncounter()) { 20055 composeReference("encounter", element.getEncounter()); 20056 } 20057 if (element.hasDateSentElement()) { 20058 composeDateTime("dateSent", element.getDateSentElement()); 20059 } 20060 if (element.hasReason()) { 20061 composeCodeableConcept("reason", element.getReason()); 20062 } 20063 if (element.hasDescriptionElement()) { 20064 composeString("description", element.getDescriptionElement()); 20065 } 20066 if (element.hasServiceRequested()) { 20067 for (CodeableConcept e : element.getServiceRequested()) 20068 composeCodeableConcept("serviceRequested", e); 20069 } 20070 if (element.hasSupportingInformation()) { 20071 for (Reference e : element.getSupportingInformation()) 20072 composeReference("supportingInformation", e); 20073 } 20074 if (element.hasFulfillmentTime()) { 20075 composePeriod("fulfillmentTime", element.getFulfillmentTime()); 20076 } 20077 composeElementClose(element); 20078 xml.exit(FHIR_NS, name); 20079 } 20080 } 20081 20082 protected void composeRelatedPerson(String name, RelatedPerson element) throws IOException { 20083 if (element != null) { 20084 composeDomainResourceAttributes(element); 20085 xml.enter(FHIR_NS, name); 20086 composeDomainResourceElements(element); 20087 if (element.hasIdentifier()) { 20088 for (Identifier e : element.getIdentifier()) 20089 composeIdentifier("identifier", e); 20090 } 20091 if (element.hasPatient()) { 20092 composeReference("patient", element.getPatient()); 20093 } 20094 if (element.hasRelationship()) { 20095 composeCodeableConcept("relationship", element.getRelationship()); 20096 } 20097 if (element.hasName()) { 20098 composeHumanName("name", element.getName()); 20099 } 20100 if (element.hasTelecom()) { 20101 for (ContactPoint e : element.getTelecom()) 20102 composeContactPoint("telecom", e); 20103 } 20104 if (element.hasGenderElement()) 20105 composeEnumeration("gender", element.getGenderElement(), new Enumerations.AdministrativeGenderEnumFactory()); 20106 if (element.hasBirthDateElement()) { 20107 composeDate("birthDate", element.getBirthDateElement()); 20108 } 20109 if (element.hasAddress()) { 20110 for (Address e : element.getAddress()) 20111 composeAddress("address", e); 20112 } 20113 if (element.hasPhoto()) { 20114 for (Attachment e : element.getPhoto()) 20115 composeAttachment("photo", e); 20116 } 20117 if (element.hasPeriod()) { 20118 composePeriod("period", element.getPeriod()); 20119 } 20120 composeElementClose(element); 20121 xml.exit(FHIR_NS, name); 20122 } 20123 } 20124 20125 protected void composeRiskAssessment(String name, RiskAssessment element) throws IOException { 20126 if (element != null) { 20127 composeDomainResourceAttributes(element); 20128 xml.enter(FHIR_NS, name); 20129 composeDomainResourceElements(element); 20130 if (element.hasSubject()) { 20131 composeReference("subject", element.getSubject()); 20132 } 20133 if (element.hasDateElement()) { 20134 composeDateTime("date", element.getDateElement()); 20135 } 20136 if (element.hasCondition()) { 20137 composeReference("condition", element.getCondition()); 20138 } 20139 if (element.hasEncounter()) { 20140 composeReference("encounter", element.getEncounter()); 20141 } 20142 if (element.hasPerformer()) { 20143 composeReference("performer", element.getPerformer()); 20144 } 20145 if (element.hasIdentifier()) { 20146 composeIdentifier("identifier", element.getIdentifier()); 20147 } 20148 if (element.hasMethod()) { 20149 composeCodeableConcept("method", element.getMethod()); 20150 } 20151 if (element.hasBasis()) { 20152 for (Reference e : element.getBasis()) 20153 composeReference("basis", e); 20154 } 20155 if (element.hasPrediction()) { 20156 for (RiskAssessment.RiskAssessmentPredictionComponent e : element.getPrediction()) 20157 composeRiskAssessmentRiskAssessmentPredictionComponent("prediction", e); 20158 } 20159 if (element.hasMitigationElement()) { 20160 composeString("mitigation", element.getMitigationElement()); 20161 } 20162 composeElementClose(element); 20163 xml.exit(FHIR_NS, name); 20164 } 20165 } 20166 20167 protected void composeRiskAssessmentRiskAssessmentPredictionComponent(String name, RiskAssessment.RiskAssessmentPredictionComponent element) throws IOException { 20168 if (element != null) { 20169 composeElementAttributes(element); 20170 xml.enter(FHIR_NS, name); 20171 composeBackboneElements(element); 20172 if (element.hasOutcome()) { 20173 composeCodeableConcept("outcome", element.getOutcome()); 20174 } 20175 if (element.hasProbability()) { 20176 composeType("probability", element.getProbability()); 20177 } if (element.hasRelativeRiskElement()) { 20178 composeDecimal("relativeRisk", element.getRelativeRiskElement()); 20179 } 20180 if (element.hasWhen()) { 20181 composeType("when", element.getWhen()); 20182 } if (element.hasRationaleElement()) { 20183 composeString("rationale", element.getRationaleElement()); 20184 } 20185 composeElementClose(element); 20186 xml.exit(FHIR_NS, name); 20187 } 20188 } 20189 20190 protected void composeSchedule(String name, Schedule element) throws IOException { 20191 if (element != null) { 20192 composeDomainResourceAttributes(element); 20193 xml.enter(FHIR_NS, name); 20194 composeDomainResourceElements(element); 20195 if (element.hasIdentifier()) { 20196 for (Identifier e : element.getIdentifier()) 20197 composeIdentifier("identifier", e); 20198 } 20199 if (element.hasType()) { 20200 for (CodeableConcept e : element.getType()) 20201 composeCodeableConcept("type", e); 20202 } 20203 if (element.hasActor()) { 20204 composeReference("actor", element.getActor()); 20205 } 20206 if (element.hasPlanningHorizon()) { 20207 composePeriod("planningHorizon", element.getPlanningHorizon()); 20208 } 20209 if (element.hasCommentElement()) { 20210 composeString("comment", element.getCommentElement()); 20211 } 20212 composeElementClose(element); 20213 xml.exit(FHIR_NS, name); 20214 } 20215 } 20216 20217 protected void composeSearchParameter(String name, SearchParameter element) throws IOException { 20218 if (element != null) { 20219 composeDomainResourceAttributes(element); 20220 xml.enter(FHIR_NS, name); 20221 composeDomainResourceElements(element); 20222 if (element.hasUrlElement()) { 20223 composeUri("url", element.getUrlElement()); 20224 } 20225 if (element.hasNameElement()) { 20226 composeString("name", element.getNameElement()); 20227 } 20228 if (element.hasStatusElement()) 20229 composeEnumeration("status", element.getStatusElement(), new Enumerations.ConformanceResourceStatusEnumFactory()); 20230 if (element.hasExperimentalElement()) { 20231 composeBoolean("experimental", element.getExperimentalElement()); 20232 } 20233 if (element.hasPublisherElement()) { 20234 composeString("publisher", element.getPublisherElement()); 20235 } 20236 if (element.hasContact()) { 20237 for (SearchParameter.SearchParameterContactComponent e : element.getContact()) 20238 composeSearchParameterSearchParameterContactComponent("contact", e); 20239 } 20240 if (element.hasDateElement()) { 20241 composeDateTime("date", element.getDateElement()); 20242 } 20243 if (element.hasRequirementsElement()) { 20244 composeString("requirements", element.getRequirementsElement()); 20245 } 20246 if (element.hasCodeElement()) { 20247 composeCode("code", element.getCodeElement()); 20248 } 20249 if (element.hasBaseElement()) { 20250 composeCode("base", element.getBaseElement()); 20251 } 20252 if (element.hasTypeElement()) 20253 composeEnumeration("type", element.getTypeElement(), new Enumerations.SearchParamTypeEnumFactory()); 20254 if (element.hasDescriptionElement()) { 20255 composeString("description", element.getDescriptionElement()); 20256 } 20257 if (element.hasXpathElement()) { 20258 composeString("xpath", element.getXpathElement()); 20259 } 20260 if (element.hasXpathUsageElement()) 20261 composeEnumeration("xpathUsage", element.getXpathUsageElement(), new SearchParameter.XPathUsageTypeEnumFactory()); 20262 if (element.hasTarget()) { 20263 for (CodeType e : element.getTarget()) 20264 composeCode("target", e); 20265 } 20266 composeElementClose(element); 20267 xml.exit(FHIR_NS, name); 20268 } 20269 } 20270 20271 protected void composeSearchParameterSearchParameterContactComponent(String name, SearchParameter.SearchParameterContactComponent element) throws IOException { 20272 if (element != null) { 20273 composeElementAttributes(element); 20274 xml.enter(FHIR_NS, name); 20275 composeBackboneElements(element); 20276 if (element.hasNameElement()) { 20277 composeString("name", element.getNameElement()); 20278 } 20279 if (element.hasTelecom()) { 20280 for (ContactPoint e : element.getTelecom()) 20281 composeContactPoint("telecom", e); 20282 } 20283 composeElementClose(element); 20284 xml.exit(FHIR_NS, name); 20285 } 20286 } 20287 20288 protected void composeSlot(String name, Slot element) throws IOException { 20289 if (element != null) { 20290 composeDomainResourceAttributes(element); 20291 xml.enter(FHIR_NS, name); 20292 composeDomainResourceElements(element); 20293 if (element.hasIdentifier()) { 20294 for (Identifier e : element.getIdentifier()) 20295 composeIdentifier("identifier", e); 20296 } 20297 if (element.hasType()) { 20298 composeCodeableConcept("type", element.getType()); 20299 } 20300 if (element.hasSchedule()) { 20301 composeReference("schedule", element.getSchedule()); 20302 } 20303 if (element.hasFreeBusyTypeElement()) 20304 composeEnumeration("freeBusyType", element.getFreeBusyTypeElement(), new Slot.SlotStatusEnumFactory()); 20305 if (element.hasStartElement()) { 20306 composeInstant("start", element.getStartElement()); 20307 } 20308 if (element.hasEndElement()) { 20309 composeInstant("end", element.getEndElement()); 20310 } 20311 if (element.hasOverbookedElement()) { 20312 composeBoolean("overbooked", element.getOverbookedElement()); 20313 } 20314 if (element.hasCommentElement()) { 20315 composeString("comment", element.getCommentElement()); 20316 } 20317 composeElementClose(element); 20318 xml.exit(FHIR_NS, name); 20319 } 20320 } 20321 20322 protected void composeSpecimen(String name, Specimen element) throws IOException { 20323 if (element != null) { 20324 composeDomainResourceAttributes(element); 20325 xml.enter(FHIR_NS, name); 20326 composeDomainResourceElements(element); 20327 if (element.hasIdentifier()) { 20328 for (Identifier e : element.getIdentifier()) 20329 composeIdentifier("identifier", e); 20330 } 20331 if (element.hasStatusElement()) 20332 composeEnumeration("status", element.getStatusElement(), new Specimen.SpecimenStatusEnumFactory()); 20333 if (element.hasType()) { 20334 composeCodeableConcept("type", element.getType()); 20335 } 20336 if (element.hasParent()) { 20337 for (Reference e : element.getParent()) 20338 composeReference("parent", e); 20339 } 20340 if (element.hasSubject()) { 20341 composeReference("subject", element.getSubject()); 20342 } 20343 if (element.hasAccessionIdentifier()) { 20344 composeIdentifier("accessionIdentifier", element.getAccessionIdentifier()); 20345 } 20346 if (element.hasReceivedTimeElement()) { 20347 composeDateTime("receivedTime", element.getReceivedTimeElement()); 20348 } 20349 if (element.hasCollection()) { 20350 composeSpecimenSpecimenCollectionComponent("collection", element.getCollection()); 20351 } 20352 if (element.hasTreatment()) { 20353 for (Specimen.SpecimenTreatmentComponent e : element.getTreatment()) 20354 composeSpecimenSpecimenTreatmentComponent("treatment", e); 20355 } 20356 if (element.hasContainer()) { 20357 for (Specimen.SpecimenContainerComponent e : element.getContainer()) 20358 composeSpecimenSpecimenContainerComponent("container", e); 20359 } 20360 composeElementClose(element); 20361 xml.exit(FHIR_NS, name); 20362 } 20363 } 20364 20365 protected void composeSpecimenSpecimenCollectionComponent(String name, Specimen.SpecimenCollectionComponent element) throws IOException { 20366 if (element != null) { 20367 composeElementAttributes(element); 20368 xml.enter(FHIR_NS, name); 20369 composeBackboneElements(element); 20370 if (element.hasCollector()) { 20371 composeReference("collector", element.getCollector()); 20372 } 20373 if (element.hasComment()) { 20374 for (StringType e : element.getComment()) 20375 composeString("comment", e); 20376 } 20377 if (element.hasCollected()) { 20378 composeType("collected", element.getCollected()); 20379 } if (element.hasQuantity()) { 20380 composeSimpleQuantity("quantity", element.getQuantity()); 20381 } 20382 if (element.hasMethod()) { 20383 composeCodeableConcept("method", element.getMethod()); 20384 } 20385 if (element.hasBodySite()) { 20386 composeCodeableConcept("bodySite", element.getBodySite()); 20387 } 20388 composeElementClose(element); 20389 xml.exit(FHIR_NS, name); 20390 } 20391 } 20392 20393 protected void composeSpecimenSpecimenTreatmentComponent(String name, Specimen.SpecimenTreatmentComponent element) throws IOException { 20394 if (element != null) { 20395 composeElementAttributes(element); 20396 xml.enter(FHIR_NS, name); 20397 composeBackboneElements(element); 20398 if (element.hasDescriptionElement()) { 20399 composeString("description", element.getDescriptionElement()); 20400 } 20401 if (element.hasProcedure()) { 20402 composeCodeableConcept("procedure", element.getProcedure()); 20403 } 20404 if (element.hasAdditive()) { 20405 for (Reference e : element.getAdditive()) 20406 composeReference("additive", e); 20407 } 20408 composeElementClose(element); 20409 xml.exit(FHIR_NS, name); 20410 } 20411 } 20412 20413 protected void composeSpecimenSpecimenContainerComponent(String name, Specimen.SpecimenContainerComponent element) throws IOException { 20414 if (element != null) { 20415 composeElementAttributes(element); 20416 xml.enter(FHIR_NS, name); 20417 composeBackboneElements(element); 20418 if (element.hasIdentifier()) { 20419 for (Identifier e : element.getIdentifier()) 20420 composeIdentifier("identifier", e); 20421 } 20422 if (element.hasDescriptionElement()) { 20423 composeString("description", element.getDescriptionElement()); 20424 } 20425 if (element.hasType()) { 20426 composeCodeableConcept("type", element.getType()); 20427 } 20428 if (element.hasCapacity()) { 20429 composeSimpleQuantity("capacity", element.getCapacity()); 20430 } 20431 if (element.hasSpecimenQuantity()) { 20432 composeSimpleQuantity("specimenQuantity", element.getSpecimenQuantity()); 20433 } 20434 if (element.hasAdditive()) { 20435 composeType("additive", element.getAdditive()); 20436 } composeElementClose(element); 20437 xml.exit(FHIR_NS, name); 20438 } 20439 } 20440 20441 protected void composeStructureDefinition(String name, StructureDefinition element) throws IOException { 20442 if (element != null) { 20443 composeDomainResourceAttributes(element); 20444 xml.enter(FHIR_NS, name); 20445 composeDomainResourceElements(element); 20446 if (element.hasUrlElement()) { 20447 composeUri("url", element.getUrlElement()); 20448 } 20449 if (element.hasIdentifier()) { 20450 for (Identifier e : element.getIdentifier()) 20451 composeIdentifier("identifier", e); 20452 } 20453 if (element.hasVersionElement()) { 20454 composeString("version", element.getVersionElement()); 20455 } 20456 if (element.hasNameElement()) { 20457 composeString("name", element.getNameElement()); 20458 } 20459 if (element.hasDisplayElement()) { 20460 composeString("display", element.getDisplayElement()); 20461 } 20462 if (element.hasStatusElement()) 20463 composeEnumeration("status", element.getStatusElement(), new Enumerations.ConformanceResourceStatusEnumFactory()); 20464 if (element.hasExperimentalElement()) { 20465 composeBoolean("experimental", element.getExperimentalElement()); 20466 } 20467 if (element.hasPublisherElement()) { 20468 composeString("publisher", element.getPublisherElement()); 20469 } 20470 if (element.hasContact()) { 20471 for (StructureDefinition.StructureDefinitionContactComponent e : element.getContact()) 20472 composeStructureDefinitionStructureDefinitionContactComponent("contact", e); 20473 } 20474 if (element.hasDateElement()) { 20475 composeDateTime("date", element.getDateElement()); 20476 } 20477 if (element.hasDescriptionElement()) { 20478 composeString("description", element.getDescriptionElement()); 20479 } 20480 if (element.hasUseContext()) { 20481 for (CodeableConcept e : element.getUseContext()) 20482 composeCodeableConcept("useContext", e); 20483 } 20484 if (element.hasRequirementsElement()) { 20485 composeString("requirements", element.getRequirementsElement()); 20486 } 20487 if (element.hasCopyrightElement()) { 20488 composeString("copyright", element.getCopyrightElement()); 20489 } 20490 if (element.hasCode()) { 20491 for (Coding e : element.getCode()) 20492 composeCoding("code", e); 20493 } 20494 if (element.hasFhirVersionElement()) { 20495 composeId("fhirVersion", element.getFhirVersionElement()); 20496 } 20497 if (element.hasMapping()) { 20498 for (StructureDefinition.StructureDefinitionMappingComponent e : element.getMapping()) 20499 composeStructureDefinitionStructureDefinitionMappingComponent("mapping", e); 20500 } 20501 if (element.hasKindElement()) 20502 composeEnumeration("kind", element.getKindElement(), new StructureDefinition.StructureDefinitionKindEnumFactory()); 20503 if (element.hasConstrainedTypeElement()) { 20504 composeCode("constrainedType", element.getConstrainedTypeElement()); 20505 } 20506 if (element.hasAbstractElement()) { 20507 composeBoolean("abstract", element.getAbstractElement()); 20508 } 20509 if (element.hasContextTypeElement()) 20510 composeEnumeration("contextType", element.getContextTypeElement(), new StructureDefinition.ExtensionContextEnumFactory()); 20511 if (element.hasContext()) { 20512 for (StringType e : element.getContext()) 20513 composeString("context", e); 20514 } 20515 if (element.hasBaseElement()) { 20516 composeUri("base", element.getBaseElement()); 20517 } 20518 if (element.hasSnapshot()) { 20519 composeStructureDefinitionStructureDefinitionSnapshotComponent("snapshot", element.getSnapshot()); 20520 } 20521 if (element.hasDifferential()) { 20522 composeStructureDefinitionStructureDefinitionDifferentialComponent("differential", element.getDifferential()); 20523 } 20524 composeElementClose(element); 20525 xml.exit(FHIR_NS, name); 20526 } 20527 } 20528 20529 protected void composeStructureDefinitionStructureDefinitionContactComponent(String name, StructureDefinition.StructureDefinitionContactComponent element) throws IOException { 20530 if (element != null) { 20531 composeElementAttributes(element); 20532 xml.enter(FHIR_NS, name); 20533 composeBackboneElements(element); 20534 if (element.hasNameElement()) { 20535 composeString("name", element.getNameElement()); 20536 } 20537 if (element.hasTelecom()) { 20538 for (ContactPoint e : element.getTelecom()) 20539 composeContactPoint("telecom", e); 20540 } 20541 composeElementClose(element); 20542 xml.exit(FHIR_NS, name); 20543 } 20544 } 20545 20546 protected void composeStructureDefinitionStructureDefinitionMappingComponent(String name, StructureDefinition.StructureDefinitionMappingComponent element) throws IOException { 20547 if (element != null) { 20548 composeElementAttributes(element); 20549 xml.enter(FHIR_NS, name); 20550 composeBackboneElements(element); 20551 if (element.hasIdentityElement()) { 20552 composeId("identity", element.getIdentityElement()); 20553 } 20554 if (element.hasUriElement()) { 20555 composeUri("uri", element.getUriElement()); 20556 } 20557 if (element.hasNameElement()) { 20558 composeString("name", element.getNameElement()); 20559 } 20560 if (element.hasCommentsElement()) { 20561 composeString("comments", element.getCommentsElement()); 20562 } 20563 composeElementClose(element); 20564 xml.exit(FHIR_NS, name); 20565 } 20566 } 20567 20568 protected void composeStructureDefinitionStructureDefinitionSnapshotComponent(String name, StructureDefinition.StructureDefinitionSnapshotComponent element) throws IOException { 20569 if (element != null) { 20570 composeElementAttributes(element); 20571 xml.enter(FHIR_NS, name); 20572 composeBackboneElements(element); 20573 if (element.hasElement()) { 20574 for (ElementDefinition e : element.getElement()) 20575 composeElementDefinition("element", e); 20576 } 20577 composeElementClose(element); 20578 xml.exit(FHIR_NS, name); 20579 } 20580 } 20581 20582 protected void composeStructureDefinitionStructureDefinitionDifferentialComponent(String name, StructureDefinition.StructureDefinitionDifferentialComponent element) throws IOException { 20583 if (element != null) { 20584 composeElementAttributes(element); 20585 xml.enter(FHIR_NS, name); 20586 composeBackboneElements(element); 20587 if (element.hasElement()) { 20588 for (ElementDefinition e : element.getElement()) 20589 composeElementDefinition("element", e); 20590 } 20591 composeElementClose(element); 20592 xml.exit(FHIR_NS, name); 20593 } 20594 } 20595 20596 protected void composeSubscription(String name, Subscription element) throws IOException { 20597 if (element != null) { 20598 composeDomainResourceAttributes(element); 20599 xml.enter(FHIR_NS, name); 20600 composeDomainResourceElements(element); 20601 if (element.hasCriteriaElement()) { 20602 composeString("criteria", element.getCriteriaElement()); 20603 } 20604 if (element.hasContact()) { 20605 for (ContactPoint e : element.getContact()) 20606 composeContactPoint("contact", e); 20607 } 20608 if (element.hasReasonElement()) { 20609 composeString("reason", element.getReasonElement()); 20610 } 20611 if (element.hasStatusElement()) 20612 composeEnumeration("status", element.getStatusElement(), new Subscription.SubscriptionStatusEnumFactory()); 20613 if (element.hasErrorElement()) { 20614 composeString("error", element.getErrorElement()); 20615 } 20616 if (element.hasChannel()) { 20617 composeSubscriptionSubscriptionChannelComponent("channel", element.getChannel()); 20618 } 20619 if (element.hasEndElement()) { 20620 composeInstant("end", element.getEndElement()); 20621 } 20622 if (element.hasTag()) { 20623 for (Coding e : element.getTag()) 20624 composeCoding("tag", e); 20625 } 20626 composeElementClose(element); 20627 xml.exit(FHIR_NS, name); 20628 } 20629 } 20630 20631 protected void composeSubscriptionSubscriptionChannelComponent(String name, Subscription.SubscriptionChannelComponent element) throws IOException { 20632 if (element != null) { 20633 composeElementAttributes(element); 20634 xml.enter(FHIR_NS, name); 20635 composeBackboneElements(element); 20636 if (element.hasTypeElement()) 20637 composeEnumeration("type", element.getTypeElement(), new Subscription.SubscriptionChannelTypeEnumFactory()); 20638 if (element.hasEndpointElement()) { 20639 composeUri("endpoint", element.getEndpointElement()); 20640 } 20641 if (element.hasPayloadElement()) { 20642 composeString("payload", element.getPayloadElement()); 20643 } 20644 if (element.hasHeaderElement()) { 20645 composeString("header", element.getHeaderElement()); 20646 } 20647 composeElementClose(element); 20648 xml.exit(FHIR_NS, name); 20649 } 20650 } 20651 20652 protected void composeSubstance(String name, Substance element) throws IOException { 20653 if (element != null) { 20654 composeDomainResourceAttributes(element); 20655 xml.enter(FHIR_NS, name); 20656 composeDomainResourceElements(element); 20657 if (element.hasIdentifier()) { 20658 for (Identifier e : element.getIdentifier()) 20659 composeIdentifier("identifier", e); 20660 } 20661 if (element.hasCategory()) { 20662 for (CodeableConcept e : element.getCategory()) 20663 composeCodeableConcept("category", e); 20664 } 20665 if (element.hasCode()) { 20666 composeCodeableConcept("code", element.getCode()); 20667 } 20668 if (element.hasDescriptionElement()) { 20669 composeString("description", element.getDescriptionElement()); 20670 } 20671 if (element.hasInstance()) { 20672 for (Substance.SubstanceInstanceComponent e : element.getInstance()) 20673 composeSubstanceSubstanceInstanceComponent("instance", e); 20674 } 20675 if (element.hasIngredient()) { 20676 for (Substance.SubstanceIngredientComponent e : element.getIngredient()) 20677 composeSubstanceSubstanceIngredientComponent("ingredient", e); 20678 } 20679 composeElementClose(element); 20680 xml.exit(FHIR_NS, name); 20681 } 20682 } 20683 20684 protected void composeSubstanceSubstanceInstanceComponent(String name, Substance.SubstanceInstanceComponent element) throws IOException { 20685 if (element != null) { 20686 composeElementAttributes(element); 20687 xml.enter(FHIR_NS, name); 20688 composeBackboneElements(element); 20689 if (element.hasIdentifier()) { 20690 composeIdentifier("identifier", element.getIdentifier()); 20691 } 20692 if (element.hasExpiryElement()) { 20693 composeDateTime("expiry", element.getExpiryElement()); 20694 } 20695 if (element.hasQuantity()) { 20696 composeSimpleQuantity("quantity", element.getQuantity()); 20697 } 20698 composeElementClose(element); 20699 xml.exit(FHIR_NS, name); 20700 } 20701 } 20702 20703 protected void composeSubstanceSubstanceIngredientComponent(String name, Substance.SubstanceIngredientComponent element) throws IOException { 20704 if (element != null) { 20705 composeElementAttributes(element); 20706 xml.enter(FHIR_NS, name); 20707 composeBackboneElements(element); 20708 if (element.hasQuantity()) { 20709 composeRatio("quantity", element.getQuantity()); 20710 } 20711 if (element.hasSubstance()) { 20712 composeReference("substance", element.getSubstance()); 20713 } 20714 composeElementClose(element); 20715 xml.exit(FHIR_NS, name); 20716 } 20717 } 20718 20719 protected void composeSupplyDelivery(String name, SupplyDelivery element) throws IOException { 20720 if (element != null) { 20721 composeDomainResourceAttributes(element); 20722 xml.enter(FHIR_NS, name); 20723 composeDomainResourceElements(element); 20724 if (element.hasIdentifier()) { 20725 composeIdentifier("identifier", element.getIdentifier()); 20726 } 20727 if (element.hasStatusElement()) 20728 composeEnumeration("status", element.getStatusElement(), new SupplyDelivery.SupplyDeliveryStatusEnumFactory()); 20729 if (element.hasPatient()) { 20730 composeReference("patient", element.getPatient()); 20731 } 20732 if (element.hasType()) { 20733 composeCodeableConcept("type", element.getType()); 20734 } 20735 if (element.hasQuantity()) { 20736 composeSimpleQuantity("quantity", element.getQuantity()); 20737 } 20738 if (element.hasSuppliedItem()) { 20739 composeReference("suppliedItem", element.getSuppliedItem()); 20740 } 20741 if (element.hasSupplier()) { 20742 composeReference("supplier", element.getSupplier()); 20743 } 20744 if (element.hasWhenPrepared()) { 20745 composePeriod("whenPrepared", element.getWhenPrepared()); 20746 } 20747 if (element.hasTimeElement()) { 20748 composeDateTime("time", element.getTimeElement()); 20749 } 20750 if (element.hasDestination()) { 20751 composeReference("destination", element.getDestination()); 20752 } 20753 if (element.hasReceiver()) { 20754 for (Reference e : element.getReceiver()) 20755 composeReference("receiver", e); 20756 } 20757 composeElementClose(element); 20758 xml.exit(FHIR_NS, name); 20759 } 20760 } 20761 20762 protected void composeSupplyRequest(String name, SupplyRequest element) throws IOException { 20763 if (element != null) { 20764 composeDomainResourceAttributes(element); 20765 xml.enter(FHIR_NS, name); 20766 composeDomainResourceElements(element); 20767 if (element.hasPatient()) { 20768 composeReference("patient", element.getPatient()); 20769 } 20770 if (element.hasSource()) { 20771 composeReference("source", element.getSource()); 20772 } 20773 if (element.hasDateElement()) { 20774 composeDateTime("date", element.getDateElement()); 20775 } 20776 if (element.hasIdentifier()) { 20777 composeIdentifier("identifier", element.getIdentifier()); 20778 } 20779 if (element.hasStatusElement()) 20780 composeEnumeration("status", element.getStatusElement(), new SupplyRequest.SupplyRequestStatusEnumFactory()); 20781 if (element.hasKind()) { 20782 composeCodeableConcept("kind", element.getKind()); 20783 } 20784 if (element.hasOrderedItem()) { 20785 composeReference("orderedItem", element.getOrderedItem()); 20786 } 20787 if (element.hasSupplier()) { 20788 for (Reference e : element.getSupplier()) 20789 composeReference("supplier", e); 20790 } 20791 if (element.hasReason()) { 20792 composeType("reason", element.getReason()); 20793 } if (element.hasWhen()) { 20794 composeSupplyRequestSupplyRequestWhenComponent("when", element.getWhen()); 20795 } 20796 composeElementClose(element); 20797 xml.exit(FHIR_NS, name); 20798 } 20799 } 20800 20801 protected void composeSupplyRequestSupplyRequestWhenComponent(String name, SupplyRequest.SupplyRequestWhenComponent element) throws IOException { 20802 if (element != null) { 20803 composeElementAttributes(element); 20804 xml.enter(FHIR_NS, name); 20805 composeBackboneElements(element); 20806 if (element.hasCode()) { 20807 composeCodeableConcept("code", element.getCode()); 20808 } 20809 if (element.hasSchedule()) { 20810 composeTiming("schedule", element.getSchedule()); 20811 } 20812 composeElementClose(element); 20813 xml.exit(FHIR_NS, name); 20814 } 20815 } 20816 20817 protected void composeTestScript(String name, TestScript element) throws IOException { 20818 if (element != null) { 20819 composeDomainResourceAttributes(element); 20820 xml.enter(FHIR_NS, name); 20821 composeDomainResourceElements(element); 20822 if (element.hasUrlElement()) { 20823 composeUri("url", element.getUrlElement()); 20824 } 20825 if (element.hasVersionElement()) { 20826 composeString("version", element.getVersionElement()); 20827 } 20828 if (element.hasNameElement()) { 20829 composeString("name", element.getNameElement()); 20830 } 20831 if (element.hasStatusElement()) 20832 composeEnumeration("status", element.getStatusElement(), new Enumerations.ConformanceResourceStatusEnumFactory()); 20833 if (element.hasIdentifier()) { 20834 composeIdentifier("identifier", element.getIdentifier()); 20835 } 20836 if (element.hasExperimentalElement()) { 20837 composeBoolean("experimental", element.getExperimentalElement()); 20838 } 20839 if (element.hasPublisherElement()) { 20840 composeString("publisher", element.getPublisherElement()); 20841 } 20842 if (element.hasContact()) { 20843 for (TestScript.TestScriptContactComponent e : element.getContact()) 20844 composeTestScriptTestScriptContactComponent("contact", e); 20845 } 20846 if (element.hasDateElement()) { 20847 composeDateTime("date", element.getDateElement()); 20848 } 20849 if (element.hasDescriptionElement()) { 20850 composeString("description", element.getDescriptionElement()); 20851 } 20852 if (element.hasUseContext()) { 20853 for (CodeableConcept e : element.getUseContext()) 20854 composeCodeableConcept("useContext", e); 20855 } 20856 if (element.hasRequirementsElement()) { 20857 composeString("requirements", element.getRequirementsElement()); 20858 } 20859 if (element.hasCopyrightElement()) { 20860 composeString("copyright", element.getCopyrightElement()); 20861 } 20862 if (element.hasMetadata()) { 20863 composeTestScriptTestScriptMetadataComponent("metadata", element.getMetadata()); 20864 } 20865 if (element.hasMultiserverElement()) { 20866 composeBoolean("multiserver", element.getMultiserverElement()); 20867 } 20868 if (element.hasFixture()) { 20869 for (TestScript.TestScriptFixtureComponent e : element.getFixture()) 20870 composeTestScriptTestScriptFixtureComponent("fixture", e); 20871 } 20872 if (element.hasProfile()) { 20873 for (Reference e : element.getProfile()) 20874 composeReference("profile", e); 20875 } 20876 if (element.hasVariable()) { 20877 for (TestScript.TestScriptVariableComponent e : element.getVariable()) 20878 composeTestScriptTestScriptVariableComponent("variable", e); 20879 } 20880 if (element.hasSetup()) { 20881 composeTestScriptTestScriptSetupComponent("setup", element.getSetup()); 20882 } 20883 if (element.hasTest()) { 20884 for (TestScript.TestScriptTestComponent e : element.getTest()) 20885 composeTestScriptTestScriptTestComponent("test", e); 20886 } 20887 if (element.hasTeardown()) { 20888 composeTestScriptTestScriptTeardownComponent("teardown", element.getTeardown()); 20889 } 20890 composeElementClose(element); 20891 xml.exit(FHIR_NS, name); 20892 } 20893 } 20894 20895 protected void composeTestScriptTestScriptContactComponent(String name, TestScript.TestScriptContactComponent element) throws IOException { 20896 if (element != null) { 20897 composeElementAttributes(element); 20898 xml.enter(FHIR_NS, name); 20899 composeBackboneElements(element); 20900 if (element.hasNameElement()) { 20901 composeString("name", element.getNameElement()); 20902 } 20903 if (element.hasTelecom()) { 20904 for (ContactPoint e : element.getTelecom()) 20905 composeContactPoint("telecom", e); 20906 } 20907 composeElementClose(element); 20908 xml.exit(FHIR_NS, name); 20909 } 20910 } 20911 20912 protected void composeTestScriptTestScriptMetadataComponent(String name, TestScript.TestScriptMetadataComponent element) throws IOException { 20913 if (element != null) { 20914 composeElementAttributes(element); 20915 xml.enter(FHIR_NS, name); 20916 composeBackboneElements(element); 20917 if (element.hasLink()) { 20918 for (TestScript.TestScriptMetadataLinkComponent e : element.getLink()) 20919 composeTestScriptTestScriptMetadataLinkComponent("link", e); 20920 } 20921 if (element.hasCapability()) { 20922 for (TestScript.TestScriptMetadataCapabilityComponent e : element.getCapability()) 20923 composeTestScriptTestScriptMetadataCapabilityComponent("capability", e); 20924 } 20925 composeElementClose(element); 20926 xml.exit(FHIR_NS, name); 20927 } 20928 } 20929 20930 protected void composeTestScriptTestScriptMetadataLinkComponent(String name, TestScript.TestScriptMetadataLinkComponent element) throws IOException { 20931 if (element != null) { 20932 composeElementAttributes(element); 20933 xml.enter(FHIR_NS, name); 20934 composeBackboneElements(element); 20935 if (element.hasUrlElement()) { 20936 composeUri("url", element.getUrlElement()); 20937 } 20938 if (element.hasDescriptionElement()) { 20939 composeString("description", element.getDescriptionElement()); 20940 } 20941 composeElementClose(element); 20942 xml.exit(FHIR_NS, name); 20943 } 20944 } 20945 20946 protected void composeTestScriptTestScriptMetadataCapabilityComponent(String name, TestScript.TestScriptMetadataCapabilityComponent element) throws IOException { 20947 if (element != null) { 20948 composeElementAttributes(element); 20949 xml.enter(FHIR_NS, name); 20950 composeBackboneElements(element); 20951 if (element.hasRequiredElement()) { 20952 composeBoolean("required", element.getRequiredElement()); 20953 } 20954 if (element.hasValidatedElement()) { 20955 composeBoolean("validated", element.getValidatedElement()); 20956 } 20957 if (element.hasDescriptionElement()) { 20958 composeString("description", element.getDescriptionElement()); 20959 } 20960 if (element.hasDestinationElement()) { 20961 composeInteger("destination", element.getDestinationElement()); 20962 } 20963 if (element.hasLink()) { 20964 for (UriType e : element.getLink()) 20965 composeUri("link", e); 20966 } 20967 if (element.hasConformance()) { 20968 composeReference("conformance", element.getConformance()); 20969 } 20970 composeElementClose(element); 20971 xml.exit(FHIR_NS, name); 20972 } 20973 } 20974 20975 protected void composeTestScriptTestScriptFixtureComponent(String name, TestScript.TestScriptFixtureComponent element) throws IOException { 20976 if (element != null) { 20977 composeElementAttributes(element); 20978 xml.enter(FHIR_NS, name); 20979 composeBackboneElements(element); 20980 if (element.hasAutocreateElement()) { 20981 composeBoolean("autocreate", element.getAutocreateElement()); 20982 } 20983 if (element.hasAutodeleteElement()) { 20984 composeBoolean("autodelete", element.getAutodeleteElement()); 20985 } 20986 if (element.hasResource()) { 20987 composeReference("resource", element.getResource()); 20988 } 20989 composeElementClose(element); 20990 xml.exit(FHIR_NS, name); 20991 } 20992 } 20993 20994 protected void composeTestScriptTestScriptVariableComponent(String name, TestScript.TestScriptVariableComponent element) throws IOException { 20995 if (element != null) { 20996 composeElementAttributes(element); 20997 xml.enter(FHIR_NS, name); 20998 composeBackboneElements(element); 20999 if (element.hasNameElement()) { 21000 composeString("name", element.getNameElement()); 21001 } 21002 if (element.hasHeaderFieldElement()) { 21003 composeString("headerField", element.getHeaderFieldElement()); 21004 } 21005 if (element.hasPathElement()) { 21006 composeString("path", element.getPathElement()); 21007 } 21008 if (element.hasSourceIdElement()) { 21009 composeId("sourceId", element.getSourceIdElement()); 21010 } 21011 composeElementClose(element); 21012 xml.exit(FHIR_NS, name); 21013 } 21014 } 21015 21016 protected void composeTestScriptTestScriptSetupComponent(String name, TestScript.TestScriptSetupComponent element) throws IOException { 21017 if (element != null) { 21018 composeElementAttributes(element); 21019 xml.enter(FHIR_NS, name); 21020 composeBackboneElements(element); 21021 if (element.hasMetadata()) { 21022 composeTestScriptTestScriptMetadataComponent("metadata", element.getMetadata()); 21023 } 21024 if (element.hasAction()) { 21025 for (TestScript.TestScriptSetupActionComponent e : element.getAction()) 21026 composeTestScriptTestScriptSetupActionComponent("action", e); 21027 } 21028 composeElementClose(element); 21029 xml.exit(FHIR_NS, name); 21030 } 21031 } 21032 21033 protected void composeTestScriptTestScriptSetupActionComponent(String name, TestScript.TestScriptSetupActionComponent element) throws IOException { 21034 if (element != null) { 21035 composeElementAttributes(element); 21036 xml.enter(FHIR_NS, name); 21037 composeBackboneElements(element); 21038 if (element.hasOperation()) { 21039 composeTestScriptTestScriptSetupActionOperationComponent("operation", element.getOperation()); 21040 } 21041 if (element.hasAssert()) { 21042 composeTestScriptTestScriptSetupActionAssertComponent("assert", element.getAssert()); 21043 } 21044 composeElementClose(element); 21045 xml.exit(FHIR_NS, name); 21046 } 21047 } 21048 21049 protected void composeTestScriptTestScriptSetupActionOperationComponent(String name, TestScript.TestScriptSetupActionOperationComponent element) throws IOException { 21050 if (element != null) { 21051 composeElementAttributes(element); 21052 xml.enter(FHIR_NS, name); 21053 composeBackboneElements(element); 21054 if (element.hasType()) { 21055 composeCoding("type", element.getType()); 21056 } 21057 if (element.hasResourceElement()) { 21058 composeCode("resource", element.getResourceElement()); 21059 } 21060 if (element.hasLabelElement()) { 21061 composeString("label", element.getLabelElement()); 21062 } 21063 if (element.hasDescriptionElement()) { 21064 composeString("description", element.getDescriptionElement()); 21065 } 21066 if (element.hasAcceptElement()) 21067 composeEnumeration("accept", element.getAcceptElement(), new TestScript.ContentTypeEnumFactory()); 21068 if (element.hasContentTypeElement()) 21069 composeEnumeration("contentType", element.getContentTypeElement(), new TestScript.ContentTypeEnumFactory()); 21070 if (element.hasDestinationElement()) { 21071 composeInteger("destination", element.getDestinationElement()); 21072 } 21073 if (element.hasEncodeRequestUrlElement()) { 21074 composeBoolean("encodeRequestUrl", element.getEncodeRequestUrlElement()); 21075 } 21076 if (element.hasParamsElement()) { 21077 composeString("params", element.getParamsElement()); 21078 } 21079 if (element.hasRequestHeader()) { 21080 for (TestScript.TestScriptSetupActionOperationRequestHeaderComponent e : element.getRequestHeader()) 21081 composeTestScriptTestScriptSetupActionOperationRequestHeaderComponent("requestHeader", e); 21082 } 21083 if (element.hasResponseIdElement()) { 21084 composeId("responseId", element.getResponseIdElement()); 21085 } 21086 if (element.hasSourceIdElement()) { 21087 composeId("sourceId", element.getSourceIdElement()); 21088 } 21089 if (element.hasTargetIdElement()) { 21090 composeId("targetId", element.getTargetIdElement()); 21091 } 21092 if (element.hasUrlElement()) { 21093 composeString("url", element.getUrlElement()); 21094 } 21095 composeElementClose(element); 21096 xml.exit(FHIR_NS, name); 21097 } 21098 } 21099 21100 protected void composeTestScriptTestScriptSetupActionOperationRequestHeaderComponent(String name, TestScript.TestScriptSetupActionOperationRequestHeaderComponent element) throws IOException { 21101 if (element != null) { 21102 composeElementAttributes(element); 21103 xml.enter(FHIR_NS, name); 21104 composeBackboneElements(element); 21105 if (element.hasFieldElement()) { 21106 composeString("field", element.getFieldElement()); 21107 } 21108 if (element.hasValueElement()) { 21109 composeString("value", element.getValueElement()); 21110 } 21111 composeElementClose(element); 21112 xml.exit(FHIR_NS, name); 21113 } 21114 } 21115 21116 protected void composeTestScriptTestScriptSetupActionAssertComponent(String name, TestScript.TestScriptSetupActionAssertComponent element) throws IOException { 21117 if (element != null) { 21118 composeElementAttributes(element); 21119 xml.enter(FHIR_NS, name); 21120 composeBackboneElements(element); 21121 if (element.hasLabelElement()) { 21122 composeString("label", element.getLabelElement()); 21123 } 21124 if (element.hasDescriptionElement()) { 21125 composeString("description", element.getDescriptionElement()); 21126 } 21127 if (element.hasDirectionElement()) 21128 composeEnumeration("direction", element.getDirectionElement(), new TestScript.AssertionDirectionTypeEnumFactory()); 21129 if (element.hasCompareToSourceIdElement()) { 21130 composeString("compareToSourceId", element.getCompareToSourceIdElement()); 21131 } 21132 if (element.hasCompareToSourcePathElement()) { 21133 composeString("compareToSourcePath", element.getCompareToSourcePathElement()); 21134 } 21135 if (element.hasContentTypeElement()) 21136 composeEnumeration("contentType", element.getContentTypeElement(), new TestScript.ContentTypeEnumFactory()); 21137 if (element.hasHeaderFieldElement()) { 21138 composeString("headerField", element.getHeaderFieldElement()); 21139 } 21140 if (element.hasMinimumIdElement()) { 21141 composeString("minimumId", element.getMinimumIdElement()); 21142 } 21143 if (element.hasNavigationLinksElement()) { 21144 composeBoolean("navigationLinks", element.getNavigationLinksElement()); 21145 } 21146 if (element.hasOperatorElement()) 21147 composeEnumeration("operator", element.getOperatorElement(), new TestScript.AssertionOperatorTypeEnumFactory()); 21148 if (element.hasPathElement()) { 21149 composeString("path", element.getPathElement()); 21150 } 21151 if (element.hasResourceElement()) { 21152 composeCode("resource", element.getResourceElement()); 21153 } 21154 if (element.hasResponseElement()) 21155 composeEnumeration("response", element.getResponseElement(), new TestScript.AssertionResponseTypesEnumFactory()); 21156 if (element.hasResponseCodeElement()) { 21157 composeString("responseCode", element.getResponseCodeElement()); 21158 } 21159 if (element.hasSourceIdElement()) { 21160 composeId("sourceId", element.getSourceIdElement()); 21161 } 21162 if (element.hasValidateProfileIdElement()) { 21163 composeId("validateProfileId", element.getValidateProfileIdElement()); 21164 } 21165 if (element.hasValueElement()) { 21166 composeString("value", element.getValueElement()); 21167 } 21168 if (element.hasWarningOnlyElement()) { 21169 composeBoolean("warningOnly", element.getWarningOnlyElement()); 21170 } 21171 composeElementClose(element); 21172 xml.exit(FHIR_NS, name); 21173 } 21174 } 21175 21176 protected void composeTestScriptTestScriptTestComponent(String name, TestScript.TestScriptTestComponent element) throws IOException { 21177 if (element != null) { 21178 composeElementAttributes(element); 21179 xml.enter(FHIR_NS, name); 21180 composeBackboneElements(element); 21181 if (element.hasNameElement()) { 21182 composeString("name", element.getNameElement()); 21183 } 21184 if (element.hasDescriptionElement()) { 21185 composeString("description", element.getDescriptionElement()); 21186 } 21187 if (element.hasMetadata()) { 21188 composeTestScriptTestScriptMetadataComponent("metadata", element.getMetadata()); 21189 } 21190 if (element.hasAction()) { 21191 for (TestScript.TestScriptTestActionComponent e : element.getAction()) 21192 composeTestScriptTestScriptTestActionComponent("action", e); 21193 } 21194 composeElementClose(element); 21195 xml.exit(FHIR_NS, name); 21196 } 21197 } 21198 21199 protected void composeTestScriptTestScriptTestActionComponent(String name, TestScript.TestScriptTestActionComponent element) throws IOException { 21200 if (element != null) { 21201 composeElementAttributes(element); 21202 xml.enter(FHIR_NS, name); 21203 composeBackboneElements(element); 21204 if (element.hasOperation()) { 21205 composeTestScriptTestScriptSetupActionOperationComponent("operation", element.getOperation()); 21206 } 21207 if (element.hasAssert()) { 21208 composeTestScriptTestScriptSetupActionAssertComponent("assert", element.getAssert()); 21209 } 21210 composeElementClose(element); 21211 xml.exit(FHIR_NS, name); 21212 } 21213 } 21214 21215 protected void composeTestScriptTestScriptTeardownComponent(String name, TestScript.TestScriptTeardownComponent element) throws IOException { 21216 if (element != null) { 21217 composeElementAttributes(element); 21218 xml.enter(FHIR_NS, name); 21219 composeBackboneElements(element); 21220 if (element.hasAction()) { 21221 for (TestScript.TestScriptTeardownActionComponent e : element.getAction()) 21222 composeTestScriptTestScriptTeardownActionComponent("action", e); 21223 } 21224 composeElementClose(element); 21225 xml.exit(FHIR_NS, name); 21226 } 21227 } 21228 21229 protected void composeTestScriptTestScriptTeardownActionComponent(String name, TestScript.TestScriptTeardownActionComponent element) throws IOException { 21230 if (element != null) { 21231 composeElementAttributes(element); 21232 xml.enter(FHIR_NS, name); 21233 composeBackboneElements(element); 21234 if (element.hasOperation()) { 21235 composeTestScriptTestScriptSetupActionOperationComponent("operation", element.getOperation()); 21236 } 21237 composeElementClose(element); 21238 xml.exit(FHIR_NS, name); 21239 } 21240 } 21241 21242 protected void composeValueSet(String name, ValueSet element) throws IOException { 21243 if (element != null) { 21244 composeDomainResourceAttributes(element); 21245 xml.enter(FHIR_NS, name); 21246 composeDomainResourceElements(element); 21247 if (element.hasUrlElement()) { 21248 composeUri("url", element.getUrlElement()); 21249 } 21250 if (element.hasIdentifier()) { 21251 composeIdentifier("identifier", element.getIdentifier()); 21252 } 21253 if (element.hasVersionElement()) { 21254 composeString("version", element.getVersionElement()); 21255 } 21256 if (element.hasNameElement()) { 21257 composeString("name", element.getNameElement()); 21258 } 21259 if (element.hasStatusElement()) 21260 composeEnumeration("status", element.getStatusElement(), new Enumerations.ConformanceResourceStatusEnumFactory()); 21261 if (element.hasExperimentalElement()) { 21262 composeBoolean("experimental", element.getExperimentalElement()); 21263 } 21264 if (element.hasPublisherElement()) { 21265 composeString("publisher", element.getPublisherElement()); 21266 } 21267 if (element.hasContact()) { 21268 for (ValueSet.ValueSetContactComponent e : element.getContact()) 21269 composeValueSetValueSetContactComponent("contact", e); 21270 } 21271 if (element.hasDateElement()) { 21272 composeDateTime("date", element.getDateElement()); 21273 } 21274 if (element.hasLockedDateElement()) { 21275 composeDate("lockedDate", element.getLockedDateElement()); 21276 } 21277 if (element.hasDescriptionElement()) { 21278 composeString("description", element.getDescriptionElement()); 21279 } 21280 if (element.hasUseContext()) { 21281 for (CodeableConcept e : element.getUseContext()) 21282 composeCodeableConcept("useContext", e); 21283 } 21284 if (element.hasImmutableElement()) { 21285 composeBoolean("immutable", element.getImmutableElement()); 21286 } 21287 if (element.hasRequirementsElement()) { 21288 composeString("requirements", element.getRequirementsElement()); 21289 } 21290 if (element.hasCopyrightElement()) { 21291 composeString("copyright", element.getCopyrightElement()); 21292 } 21293 if (element.hasExtensibleElement()) { 21294 composeBoolean("extensible", element.getExtensibleElement()); 21295 } 21296 if (element.hasCodeSystem()) { 21297 composeValueSetValueSetCodeSystemComponent("codeSystem", element.getCodeSystem()); 21298 } 21299 if (element.hasCompose()) { 21300 composeValueSetValueSetComposeComponent("compose", element.getCompose()); 21301 } 21302 if (element.hasExpansion()) { 21303 composeValueSetValueSetExpansionComponent("expansion", element.getExpansion()); 21304 } 21305 composeElementClose(element); 21306 xml.exit(FHIR_NS, name); 21307 } 21308 } 21309 21310 protected void composeValueSetValueSetContactComponent(String name, ValueSet.ValueSetContactComponent element) throws IOException { 21311 if (element != null) { 21312 composeElementAttributes(element); 21313 xml.enter(FHIR_NS, name); 21314 composeBackboneElements(element); 21315 if (element.hasNameElement()) { 21316 composeString("name", element.getNameElement()); 21317 } 21318 if (element.hasTelecom()) { 21319 for (ContactPoint e : element.getTelecom()) 21320 composeContactPoint("telecom", e); 21321 } 21322 composeElementClose(element); 21323 xml.exit(FHIR_NS, name); 21324 } 21325 } 21326 21327 protected void composeValueSetValueSetCodeSystemComponent(String name, ValueSet.ValueSetCodeSystemComponent element) throws IOException { 21328 if (element != null) { 21329 composeElementAttributes(element); 21330 xml.enter(FHIR_NS, name); 21331 composeBackboneElements(element); 21332 if (element.hasSystemElement()) { 21333 composeUri("system", element.getSystemElement()); 21334 } 21335 if (element.hasVersionElement()) { 21336 composeString("version", element.getVersionElement()); 21337 } 21338 if (element.hasCaseSensitiveElement()) { 21339 composeBoolean("caseSensitive", element.getCaseSensitiveElement()); 21340 } 21341 if (element.hasConcept()) { 21342 for (ValueSet.ConceptDefinitionComponent e : element.getConcept()) 21343 composeValueSetConceptDefinitionComponent("concept", e); 21344 } 21345 composeElementClose(element); 21346 xml.exit(FHIR_NS, name); 21347 } 21348 } 21349 21350 protected void composeValueSetConceptDefinitionComponent(String name, ValueSet.ConceptDefinitionComponent element) throws IOException { 21351 if (element != null) { 21352 composeElementAttributes(element); 21353 xml.enter(FHIR_NS, name); 21354 composeBackboneElements(element); 21355 if (element.hasCodeElement()) { 21356 composeCode("code", element.getCodeElement()); 21357 } 21358 if (element.hasAbstractElement()) { 21359 composeBoolean("abstract", element.getAbstractElement()); 21360 } 21361 if (element.hasDisplayElement()) { 21362 composeString("display", element.getDisplayElement()); 21363 } 21364 if (element.hasDefinitionElement()) { 21365 composeString("definition", element.getDefinitionElement()); 21366 } 21367 if (element.hasDesignation()) { 21368 for (ValueSet.ConceptDefinitionDesignationComponent e : element.getDesignation()) 21369 composeValueSetConceptDefinitionDesignationComponent("designation", e); 21370 } 21371 if (element.hasConcept()) { 21372 for (ValueSet.ConceptDefinitionComponent e : element.getConcept()) 21373 composeValueSetConceptDefinitionComponent("concept", e); 21374 } 21375 composeElementClose(element); 21376 xml.exit(FHIR_NS, name); 21377 } 21378 } 21379 21380 protected void composeValueSetConceptDefinitionDesignationComponent(String name, ValueSet.ConceptDefinitionDesignationComponent element) throws IOException { 21381 if (element != null) { 21382 composeElementAttributes(element); 21383 xml.enter(FHIR_NS, name); 21384 composeBackboneElements(element); 21385 if (element.hasLanguageElement()) { 21386 composeCode("language", element.getLanguageElement()); 21387 } 21388 if (element.hasUse()) { 21389 composeCoding("use", element.getUse()); 21390 } 21391 if (element.hasValueElement()) { 21392 composeString("value", element.getValueElement()); 21393 } 21394 composeElementClose(element); 21395 xml.exit(FHIR_NS, name); 21396 } 21397 } 21398 21399 protected void composeValueSetValueSetComposeComponent(String name, ValueSet.ValueSetComposeComponent element) throws IOException { 21400 if (element != null) { 21401 composeElementAttributes(element); 21402 xml.enter(FHIR_NS, name); 21403 composeBackboneElements(element); 21404 if (element.hasImport()) { 21405 for (UriType e : element.getImport()) 21406 composeUri("import", e); 21407 } 21408 if (element.hasInclude()) { 21409 for (ValueSet.ConceptSetComponent e : element.getInclude()) 21410 composeValueSetConceptSetComponent("include", e); 21411 } 21412 if (element.hasExclude()) { 21413 for (ValueSet.ConceptSetComponent e : element.getExclude()) 21414 composeValueSetConceptSetComponent("exclude", e); 21415 } 21416 composeElementClose(element); 21417 xml.exit(FHIR_NS, name); 21418 } 21419 } 21420 21421 protected void composeValueSetConceptSetComponent(String name, ValueSet.ConceptSetComponent element) throws IOException { 21422 if (element != null) { 21423 composeElementAttributes(element); 21424 xml.enter(FHIR_NS, name); 21425 composeBackboneElements(element); 21426 if (element.hasSystemElement()) { 21427 composeUri("system", element.getSystemElement()); 21428 } 21429 if (element.hasVersionElement()) { 21430 composeString("version", element.getVersionElement()); 21431 } 21432 if (element.hasConcept()) { 21433 for (ValueSet.ConceptReferenceComponent e : element.getConcept()) 21434 composeValueSetConceptReferenceComponent("concept", e); 21435 } 21436 if (element.hasFilter()) { 21437 for (ValueSet.ConceptSetFilterComponent e : element.getFilter()) 21438 composeValueSetConceptSetFilterComponent("filter", e); 21439 } 21440 composeElementClose(element); 21441 xml.exit(FHIR_NS, name); 21442 } 21443 } 21444 21445 protected void composeValueSetConceptReferenceComponent(String name, ValueSet.ConceptReferenceComponent element) throws IOException { 21446 if (element != null) { 21447 composeElementAttributes(element); 21448 xml.enter(FHIR_NS, name); 21449 composeBackboneElements(element); 21450 if (element.hasCodeElement()) { 21451 composeCode("code", element.getCodeElement()); 21452 } 21453 if (element.hasDisplayElement()) { 21454 composeString("display", element.getDisplayElement()); 21455 } 21456 if (element.hasDesignation()) { 21457 for (ValueSet.ConceptDefinitionDesignationComponent e : element.getDesignation()) 21458 composeValueSetConceptDefinitionDesignationComponent("designation", e); 21459 } 21460 composeElementClose(element); 21461 xml.exit(FHIR_NS, name); 21462 } 21463 } 21464 21465 protected void composeValueSetConceptSetFilterComponent(String name, ValueSet.ConceptSetFilterComponent element) throws IOException { 21466 if (element != null) { 21467 composeElementAttributes(element); 21468 xml.enter(FHIR_NS, name); 21469 composeBackboneElements(element); 21470 if (element.hasPropertyElement()) { 21471 composeCode("property", element.getPropertyElement()); 21472 } 21473 if (element.hasOpElement()) 21474 composeEnumeration("op", element.getOpElement(), new ValueSet.FilterOperatorEnumFactory()); 21475 if (element.hasValueElement()) { 21476 composeCode("value", element.getValueElement()); 21477 } 21478 composeElementClose(element); 21479 xml.exit(FHIR_NS, name); 21480 } 21481 } 21482 21483 protected void composeValueSetValueSetExpansionComponent(String name, ValueSet.ValueSetExpansionComponent element) throws IOException { 21484 if (element != null) { 21485 composeElementAttributes(element); 21486 xml.enter(FHIR_NS, name); 21487 composeBackboneElements(element); 21488 if (element.hasIdentifierElement()) { 21489 composeUri("identifier", element.getIdentifierElement()); 21490 } 21491 if (element.hasTimestampElement()) { 21492 composeDateTime("timestamp", element.getTimestampElement()); 21493 } 21494 if (element.hasTotalElement()) { 21495 composeInteger("total", element.getTotalElement()); 21496 } 21497 if (element.hasOffsetElement()) { 21498 composeInteger("offset", element.getOffsetElement()); 21499 } 21500 if (element.hasParameter()) { 21501 for (ValueSet.ValueSetExpansionParameterComponent e : element.getParameter()) 21502 composeValueSetValueSetExpansionParameterComponent("parameter", e); 21503 } 21504 if (element.hasContains()) { 21505 for (ValueSet.ValueSetExpansionContainsComponent e : element.getContains()) 21506 composeValueSetValueSetExpansionContainsComponent("contains", e); 21507 } 21508 composeElementClose(element); 21509 xml.exit(FHIR_NS, name); 21510 } 21511 } 21512 21513 protected void composeValueSetValueSetExpansionParameterComponent(String name, ValueSet.ValueSetExpansionParameterComponent element) throws IOException { 21514 if (element != null) { 21515 composeElementAttributes(element); 21516 xml.enter(FHIR_NS, name); 21517 composeBackboneElements(element); 21518 if (element.hasNameElement()) { 21519 composeString("name", element.getNameElement()); 21520 } 21521 if (element.hasValue()) { 21522 composeType("value", element.getValue()); 21523 } composeElementClose(element); 21524 xml.exit(FHIR_NS, name); 21525 } 21526 } 21527 21528 protected void composeValueSetValueSetExpansionContainsComponent(String name, ValueSet.ValueSetExpansionContainsComponent element) throws IOException { 21529 if (element != null) { 21530 composeElementAttributes(element); 21531 xml.enter(FHIR_NS, name); 21532 composeBackboneElements(element); 21533 if (element.hasSystemElement()) { 21534 composeUri("system", element.getSystemElement()); 21535 } 21536 if (element.hasAbstractElement()) { 21537 composeBoolean("abstract", element.getAbstractElement()); 21538 } 21539 if (element.hasVersionElement()) { 21540 composeString("version", element.getVersionElement()); 21541 } 21542 if (element.hasCodeElement()) { 21543 composeCode("code", element.getCodeElement()); 21544 } 21545 if (element.hasDisplayElement()) { 21546 composeString("display", element.getDisplayElement()); 21547 } 21548 if (element.hasContains()) { 21549 for (ValueSet.ValueSetExpansionContainsComponent e : element.getContains()) 21550 composeValueSetValueSetExpansionContainsComponent("contains", e); 21551 } 21552 composeElementClose(element); 21553 xml.exit(FHIR_NS, name); 21554 } 21555 } 21556 21557 protected void composeVisionPrescription(String name, VisionPrescription element) throws IOException { 21558 if (element != null) { 21559 composeDomainResourceAttributes(element); 21560 xml.enter(FHIR_NS, name); 21561 composeDomainResourceElements(element); 21562 if (element.hasIdentifier()) { 21563 for (Identifier e : element.getIdentifier()) 21564 composeIdentifier("identifier", e); 21565 } 21566 if (element.hasDateWrittenElement()) { 21567 composeDateTime("dateWritten", element.getDateWrittenElement()); 21568 } 21569 if (element.hasPatient()) { 21570 composeReference("patient", element.getPatient()); 21571 } 21572 if (element.hasPrescriber()) { 21573 composeReference("prescriber", element.getPrescriber()); 21574 } 21575 if (element.hasEncounter()) { 21576 composeReference("encounter", element.getEncounter()); 21577 } 21578 if (element.hasReason()) { 21579 composeType("reason", element.getReason()); 21580 } if (element.hasDispense()) { 21581 for (VisionPrescription.VisionPrescriptionDispenseComponent e : element.getDispense()) 21582 composeVisionPrescriptionVisionPrescriptionDispenseComponent("dispense", e); 21583 } 21584 composeElementClose(element); 21585 xml.exit(FHIR_NS, name); 21586 } 21587 } 21588 21589 protected void composeVisionPrescriptionVisionPrescriptionDispenseComponent(String name, VisionPrescription.VisionPrescriptionDispenseComponent element) throws IOException { 21590 if (element != null) { 21591 composeElementAttributes(element); 21592 xml.enter(FHIR_NS, name); 21593 composeBackboneElements(element); 21594 if (element.hasProduct()) { 21595 composeCoding("product", element.getProduct()); 21596 } 21597 if (element.hasEyeElement()) 21598 composeEnumeration("eye", element.getEyeElement(), new VisionPrescription.VisionEyesEnumFactory()); 21599 if (element.hasSphereElement()) { 21600 composeDecimal("sphere", element.getSphereElement()); 21601 } 21602 if (element.hasCylinderElement()) { 21603 composeDecimal("cylinder", element.getCylinderElement()); 21604 } 21605 if (element.hasAxisElement()) { 21606 composeInteger("axis", element.getAxisElement()); 21607 } 21608 if (element.hasPrismElement()) { 21609 composeDecimal("prism", element.getPrismElement()); 21610 } 21611 if (element.hasBaseElement()) 21612 composeEnumeration("base", element.getBaseElement(), new VisionPrescription.VisionBaseEnumFactory()); 21613 if (element.hasAddElement()) { 21614 composeDecimal("add", element.getAddElement()); 21615 } 21616 if (element.hasPowerElement()) { 21617 composeDecimal("power", element.getPowerElement()); 21618 } 21619 if (element.hasBackCurveElement()) { 21620 composeDecimal("backCurve", element.getBackCurveElement()); 21621 } 21622 if (element.hasDiameterElement()) { 21623 composeDecimal("diameter", element.getDiameterElement()); 21624 } 21625 if (element.hasDuration()) { 21626 composeSimpleQuantity("duration", element.getDuration()); 21627 } 21628 if (element.hasColorElement()) { 21629 composeString("color", element.getColorElement()); 21630 } 21631 if (element.hasBrandElement()) { 21632 composeString("brand", element.getBrandElement()); 21633 } 21634 if (element.hasNotesElement()) { 21635 composeString("notes", element.getNotesElement()); 21636 } 21637 composeElementClose(element); 21638 xml.exit(FHIR_NS, name); 21639 } 21640 } 21641 21642 @Override 21643 protected void composeResource(Resource resource) throws IOException { 21644 if (resource instanceof Parameters) 21645 composeParameters("Parameters", (Parameters)resource); 21646 else if (resource instanceof Account) 21647 composeAccount("Account", (Account)resource); 21648 else if (resource instanceof AllergyIntolerance) 21649 composeAllergyIntolerance("AllergyIntolerance", (AllergyIntolerance)resource); 21650 else if (resource instanceof Appointment) 21651 composeAppointment("Appointment", (Appointment)resource); 21652 else if (resource instanceof AppointmentResponse) 21653 composeAppointmentResponse("AppointmentResponse", (AppointmentResponse)resource); 21654 else if (resource instanceof AuditEvent) 21655 composeAuditEvent("AuditEvent", (AuditEvent)resource); 21656 else if (resource instanceof Basic) 21657 composeBasic("Basic", (Basic)resource); 21658 else if (resource instanceof Binary) 21659 composeBinary("Binary", (Binary)resource); 21660 else if (resource instanceof BodySite) 21661 composeBodySite("BodySite", (BodySite)resource); 21662 else if (resource instanceof Bundle) 21663 composeBundle("Bundle", (Bundle)resource); 21664 else if (resource instanceof CarePlan) 21665 composeCarePlan("CarePlan", (CarePlan)resource); 21666 else if (resource instanceof Claim) 21667 composeClaim("Claim", (Claim)resource); 21668 else if (resource instanceof ClaimResponse) 21669 composeClaimResponse("ClaimResponse", (ClaimResponse)resource); 21670 else if (resource instanceof ClinicalImpression) 21671 composeClinicalImpression("ClinicalImpression", (ClinicalImpression)resource); 21672 else if (resource instanceof Communication) 21673 composeCommunication("Communication", (Communication)resource); 21674 else if (resource instanceof CommunicationRequest) 21675 composeCommunicationRequest("CommunicationRequest", (CommunicationRequest)resource); 21676 else if (resource instanceof Composition) 21677 composeComposition("Composition", (Composition)resource); 21678 else if (resource instanceof ConceptMap) 21679 composeConceptMap("ConceptMap", (ConceptMap)resource); 21680 else if (resource instanceof Condition) 21681 composeCondition("Condition", (Condition)resource); 21682 else if (resource instanceof Conformance) 21683 composeConformance("Conformance", (Conformance)resource); 21684 else if (resource instanceof Contract) 21685 composeContract("Contract", (Contract)resource); 21686 else if (resource instanceof Coverage) 21687 composeCoverage("Coverage", (Coverage)resource); 21688 else if (resource instanceof DataElement) 21689 composeDataElement("DataElement", (DataElement)resource); 21690 else if (resource instanceof DetectedIssue) 21691 composeDetectedIssue("DetectedIssue", (DetectedIssue)resource); 21692 else if (resource instanceof Device) 21693 composeDevice("Device", (Device)resource); 21694 else if (resource instanceof DeviceComponent) 21695 composeDeviceComponent("DeviceComponent", (DeviceComponent)resource); 21696 else if (resource instanceof DeviceMetric) 21697 composeDeviceMetric("DeviceMetric", (DeviceMetric)resource); 21698 else if (resource instanceof DeviceUseRequest) 21699 composeDeviceUseRequest("DeviceUseRequest", (DeviceUseRequest)resource); 21700 else if (resource instanceof DeviceUseStatement) 21701 composeDeviceUseStatement("DeviceUseStatement", (DeviceUseStatement)resource); 21702 else if (resource instanceof DiagnosticOrder) 21703 composeDiagnosticOrder("DiagnosticOrder", (DiagnosticOrder)resource); 21704 else if (resource instanceof DiagnosticReport) 21705 composeDiagnosticReport("DiagnosticReport", (DiagnosticReport)resource); 21706 else if (resource instanceof DocumentManifest) 21707 composeDocumentManifest("DocumentManifest", (DocumentManifest)resource); 21708 else if (resource instanceof DocumentReference) 21709 composeDocumentReference("DocumentReference", (DocumentReference)resource); 21710 else if (resource instanceof EligibilityRequest) 21711 composeEligibilityRequest("EligibilityRequest", (EligibilityRequest)resource); 21712 else if (resource instanceof EligibilityResponse) 21713 composeEligibilityResponse("EligibilityResponse", (EligibilityResponse)resource); 21714 else if (resource instanceof Encounter) 21715 composeEncounter("Encounter", (Encounter)resource); 21716 else if (resource instanceof EnrollmentRequest) 21717 composeEnrollmentRequest("EnrollmentRequest", (EnrollmentRequest)resource); 21718 else if (resource instanceof EnrollmentResponse) 21719 composeEnrollmentResponse("EnrollmentResponse", (EnrollmentResponse)resource); 21720 else if (resource instanceof EpisodeOfCare) 21721 composeEpisodeOfCare("EpisodeOfCare", (EpisodeOfCare)resource); 21722 else if (resource instanceof ExplanationOfBenefit) 21723 composeExplanationOfBenefit("ExplanationOfBenefit", (ExplanationOfBenefit)resource); 21724 else if (resource instanceof FamilyMemberHistory) 21725 composeFamilyMemberHistory("FamilyMemberHistory", (FamilyMemberHistory)resource); 21726 else if (resource instanceof Flag) 21727 composeFlag("Flag", (Flag)resource); 21728 else if (resource instanceof Goal) 21729 composeGoal("Goal", (Goal)resource); 21730 else if (resource instanceof Group) 21731 composeGroup("Group", (Group)resource); 21732 else if (resource instanceof HealthcareService) 21733 composeHealthcareService("HealthcareService", (HealthcareService)resource); 21734 else if (resource instanceof ImagingObjectSelection) 21735 composeImagingObjectSelection("ImagingObjectSelection", (ImagingObjectSelection)resource); 21736 else if (resource instanceof ImagingStudy) 21737 composeImagingStudy("ImagingStudy", (ImagingStudy)resource); 21738 else if (resource instanceof Immunization) 21739 composeImmunization("Immunization", (Immunization)resource); 21740 else if (resource instanceof ImmunizationRecommendation) 21741 composeImmunizationRecommendation("ImmunizationRecommendation", (ImmunizationRecommendation)resource); 21742 else if (resource instanceof ImplementationGuide) 21743 composeImplementationGuide("ImplementationGuide", (ImplementationGuide)resource); 21744 else if (resource instanceof List_) 21745 composeList_("List", (List_)resource); 21746 else if (resource instanceof Location) 21747 composeLocation("Location", (Location)resource); 21748 else if (resource instanceof Media) 21749 composeMedia("Media", (Media)resource); 21750 else if (resource instanceof Medication) 21751 composeMedication("Medication", (Medication)resource); 21752 else if (resource instanceof MedicationAdministration) 21753 composeMedicationAdministration("MedicationAdministration", (MedicationAdministration)resource); 21754 else if (resource instanceof MedicationDispense) 21755 composeMedicationDispense("MedicationDispense", (MedicationDispense)resource); 21756 else if (resource instanceof MedicationOrder) 21757 composeMedicationOrder("MedicationOrder", (MedicationOrder)resource); 21758 else if (resource instanceof MedicationStatement) 21759 composeMedicationStatement("MedicationStatement", (MedicationStatement)resource); 21760 else if (resource instanceof MessageHeader) 21761 composeMessageHeader("MessageHeader", (MessageHeader)resource); 21762 else if (resource instanceof NamingSystem) 21763 composeNamingSystem("NamingSystem", (NamingSystem)resource); 21764 else if (resource instanceof NutritionOrder) 21765 composeNutritionOrder("NutritionOrder", (NutritionOrder)resource); 21766 else if (resource instanceof Observation) 21767 composeObservation("Observation", (Observation)resource); 21768 else if (resource instanceof OperationDefinition) 21769 composeOperationDefinition("OperationDefinition", (OperationDefinition)resource); 21770 else if (resource instanceof OperationOutcome) 21771 composeOperationOutcome("OperationOutcome", (OperationOutcome)resource); 21772 else if (resource instanceof Order) 21773 composeOrder("Order", (Order)resource); 21774 else if (resource instanceof OrderResponse) 21775 composeOrderResponse("OrderResponse", (OrderResponse)resource); 21776 else if (resource instanceof Organization) 21777 composeOrganization("Organization", (Organization)resource); 21778 else if (resource instanceof Patient) 21779 composePatient("Patient", (Patient)resource); 21780 else if (resource instanceof PaymentNotice) 21781 composePaymentNotice("PaymentNotice", (PaymentNotice)resource); 21782 else if (resource instanceof PaymentReconciliation) 21783 composePaymentReconciliation("PaymentReconciliation", (PaymentReconciliation)resource); 21784 else if (resource instanceof Person) 21785 composePerson("Person", (Person)resource); 21786 else if (resource instanceof Practitioner) 21787 composePractitioner("Practitioner", (Practitioner)resource); 21788 else if (resource instanceof Procedure) 21789 composeProcedure("Procedure", (Procedure)resource); 21790 else if (resource instanceof ProcedureRequest) 21791 composeProcedureRequest("ProcedureRequest", (ProcedureRequest)resource); 21792 else if (resource instanceof ProcessRequest) 21793 composeProcessRequest("ProcessRequest", (ProcessRequest)resource); 21794 else if (resource instanceof ProcessResponse) 21795 composeProcessResponse("ProcessResponse", (ProcessResponse)resource); 21796 else if (resource instanceof Provenance) 21797 composeProvenance("Provenance", (Provenance)resource); 21798 else if (resource instanceof Questionnaire) 21799 composeQuestionnaire("Questionnaire", (Questionnaire)resource); 21800 else if (resource instanceof QuestionnaireResponse) 21801 composeQuestionnaireResponse("QuestionnaireResponse", (QuestionnaireResponse)resource); 21802 else if (resource instanceof ReferralRequest) 21803 composeReferralRequest("ReferralRequest", (ReferralRequest)resource); 21804 else if (resource instanceof RelatedPerson) 21805 composeRelatedPerson("RelatedPerson", (RelatedPerson)resource); 21806 else if (resource instanceof RiskAssessment) 21807 composeRiskAssessment("RiskAssessment", (RiskAssessment)resource); 21808 else if (resource instanceof Schedule) 21809 composeSchedule("Schedule", (Schedule)resource); 21810 else if (resource instanceof SearchParameter) 21811 composeSearchParameter("SearchParameter", (SearchParameter)resource); 21812 else if (resource instanceof Slot) 21813 composeSlot("Slot", (Slot)resource); 21814 else if (resource instanceof Specimen) 21815 composeSpecimen("Specimen", (Specimen)resource); 21816 else if (resource instanceof StructureDefinition) 21817 composeStructureDefinition("StructureDefinition", (StructureDefinition)resource); 21818 else if (resource instanceof Subscription) 21819 composeSubscription("Subscription", (Subscription)resource); 21820 else if (resource instanceof Substance) 21821 composeSubstance("Substance", (Substance)resource); 21822 else if (resource instanceof SupplyDelivery) 21823 composeSupplyDelivery("SupplyDelivery", (SupplyDelivery)resource); 21824 else if (resource instanceof SupplyRequest) 21825 composeSupplyRequest("SupplyRequest", (SupplyRequest)resource); 21826 else if (resource instanceof TestScript) 21827 composeTestScript("TestScript", (TestScript)resource); 21828 else if (resource instanceof ValueSet) 21829 composeValueSet("ValueSet", (ValueSet)resource); 21830 else if (resource instanceof VisionPrescription) 21831 composeVisionPrescription("VisionPrescription", (VisionPrescription)resource); 21832 else if (resource instanceof Binary) 21833 composeBinary("Binary", (Binary)resource); 21834 else 21835 throw new Error("Unhandled resource type "+resource.getClass().getName()); 21836 } 21837 21838 protected void composeResource(String name, Resource resource) throws IOException { 21839 if (resource instanceof Parameters) 21840 composeParameters(name, (Parameters)resource); 21841 else if (resource instanceof Account) 21842 composeAccount(name, (Account)resource); 21843 else if (resource instanceof AllergyIntolerance) 21844 composeAllergyIntolerance(name, (AllergyIntolerance)resource); 21845 else if (resource instanceof Appointment) 21846 composeAppointment(name, (Appointment)resource); 21847 else if (resource instanceof AppointmentResponse) 21848 composeAppointmentResponse(name, (AppointmentResponse)resource); 21849 else if (resource instanceof AuditEvent) 21850 composeAuditEvent(name, (AuditEvent)resource); 21851 else if (resource instanceof Basic) 21852 composeBasic(name, (Basic)resource); 21853 else if (resource instanceof Binary) 21854 composeBinary(name, (Binary)resource); 21855 else if (resource instanceof BodySite) 21856 composeBodySite(name, (BodySite)resource); 21857 else if (resource instanceof Bundle) 21858 composeBundle(name, (Bundle)resource); 21859 else if (resource instanceof CarePlan) 21860 composeCarePlan(name, (CarePlan)resource); 21861 else if (resource instanceof Claim) 21862 composeClaim(name, (Claim)resource); 21863 else if (resource instanceof ClaimResponse) 21864 composeClaimResponse(name, (ClaimResponse)resource); 21865 else if (resource instanceof ClinicalImpression) 21866 composeClinicalImpression(name, (ClinicalImpression)resource); 21867 else if (resource instanceof Communication) 21868 composeCommunication(name, (Communication)resource); 21869 else if (resource instanceof CommunicationRequest) 21870 composeCommunicationRequest(name, (CommunicationRequest)resource); 21871 else if (resource instanceof Composition) 21872 composeComposition(name, (Composition)resource); 21873 else if (resource instanceof ConceptMap) 21874 composeConceptMap(name, (ConceptMap)resource); 21875 else if (resource instanceof Condition) 21876 composeCondition(name, (Condition)resource); 21877 else if (resource instanceof Conformance) 21878 composeConformance(name, (Conformance)resource); 21879 else if (resource instanceof Contract) 21880 composeContract(name, (Contract)resource); 21881 else if (resource instanceof Coverage) 21882 composeCoverage(name, (Coverage)resource); 21883 else if (resource instanceof DataElement) 21884 composeDataElement(name, (DataElement)resource); 21885 else if (resource instanceof DetectedIssue) 21886 composeDetectedIssue(name, (DetectedIssue)resource); 21887 else if (resource instanceof Device) 21888 composeDevice(name, (Device)resource); 21889 else if (resource instanceof DeviceComponent) 21890 composeDeviceComponent(name, (DeviceComponent)resource); 21891 else if (resource instanceof DeviceMetric) 21892 composeDeviceMetric(name, (DeviceMetric)resource); 21893 else if (resource instanceof DeviceUseRequest) 21894 composeDeviceUseRequest(name, (DeviceUseRequest)resource); 21895 else if (resource instanceof DeviceUseStatement) 21896 composeDeviceUseStatement(name, (DeviceUseStatement)resource); 21897 else if (resource instanceof DiagnosticOrder) 21898 composeDiagnosticOrder(name, (DiagnosticOrder)resource); 21899 else if (resource instanceof DiagnosticReport) 21900 composeDiagnosticReport(name, (DiagnosticReport)resource); 21901 else if (resource instanceof DocumentManifest) 21902 composeDocumentManifest(name, (DocumentManifest)resource); 21903 else if (resource instanceof DocumentReference) 21904 composeDocumentReference(name, (DocumentReference)resource); 21905 else if (resource instanceof EligibilityRequest) 21906 composeEligibilityRequest(name, (EligibilityRequest)resource); 21907 else if (resource instanceof EligibilityResponse) 21908 composeEligibilityResponse(name, (EligibilityResponse)resource); 21909 else if (resource instanceof Encounter) 21910 composeEncounter(name, (Encounter)resource); 21911 else if (resource instanceof EnrollmentRequest) 21912 composeEnrollmentRequest(name, (EnrollmentRequest)resource); 21913 else if (resource instanceof EnrollmentResponse) 21914 composeEnrollmentResponse(name, (EnrollmentResponse)resource); 21915 else if (resource instanceof EpisodeOfCare) 21916 composeEpisodeOfCare(name, (EpisodeOfCare)resource); 21917 else if (resource instanceof ExplanationOfBenefit) 21918 composeExplanationOfBenefit(name, (ExplanationOfBenefit)resource); 21919 else if (resource instanceof FamilyMemberHistory) 21920 composeFamilyMemberHistory(name, (FamilyMemberHistory)resource); 21921 else if (resource instanceof Flag) 21922 composeFlag(name, (Flag)resource); 21923 else if (resource instanceof Goal) 21924 composeGoal(name, (Goal)resource); 21925 else if (resource instanceof Group) 21926 composeGroup(name, (Group)resource); 21927 else if (resource instanceof HealthcareService) 21928 composeHealthcareService(name, (HealthcareService)resource); 21929 else if (resource instanceof ImagingObjectSelection) 21930 composeImagingObjectSelection(name, (ImagingObjectSelection)resource); 21931 else if (resource instanceof ImagingStudy) 21932 composeImagingStudy(name, (ImagingStudy)resource); 21933 else if (resource instanceof Immunization) 21934 composeImmunization(name, (Immunization)resource); 21935 else if (resource instanceof ImmunizationRecommendation) 21936 composeImmunizationRecommendation(name, (ImmunizationRecommendation)resource); 21937 else if (resource instanceof ImplementationGuide) 21938 composeImplementationGuide(name, (ImplementationGuide)resource); 21939 else if (resource instanceof List_) 21940 composeList_(name, (List_)resource); 21941 else if (resource instanceof Location) 21942 composeLocation(name, (Location)resource); 21943 else if (resource instanceof Media) 21944 composeMedia(name, (Media)resource); 21945 else if (resource instanceof Medication) 21946 composeMedication(name, (Medication)resource); 21947 else if (resource instanceof MedicationAdministration) 21948 composeMedicationAdministration(name, (MedicationAdministration)resource); 21949 else if (resource instanceof MedicationDispense) 21950 composeMedicationDispense(name, (MedicationDispense)resource); 21951 else if (resource instanceof MedicationOrder) 21952 composeMedicationOrder(name, (MedicationOrder)resource); 21953 else if (resource instanceof MedicationStatement) 21954 composeMedicationStatement(name, (MedicationStatement)resource); 21955 else if (resource instanceof MessageHeader) 21956 composeMessageHeader(name, (MessageHeader)resource); 21957 else if (resource instanceof NamingSystem) 21958 composeNamingSystem(name, (NamingSystem)resource); 21959 else if (resource instanceof NutritionOrder) 21960 composeNutritionOrder(name, (NutritionOrder)resource); 21961 else if (resource instanceof Observation) 21962 composeObservation(name, (Observation)resource); 21963 else if (resource instanceof OperationDefinition) 21964 composeOperationDefinition(name, (OperationDefinition)resource); 21965 else if (resource instanceof OperationOutcome) 21966 composeOperationOutcome(name, (OperationOutcome)resource); 21967 else if (resource instanceof Order) 21968 composeOrder(name, (Order)resource); 21969 else if (resource instanceof OrderResponse) 21970 composeOrderResponse(name, (OrderResponse)resource); 21971 else if (resource instanceof Organization) 21972 composeOrganization(name, (Organization)resource); 21973 else if (resource instanceof Patient) 21974 composePatient(name, (Patient)resource); 21975 else if (resource instanceof PaymentNotice) 21976 composePaymentNotice(name, (PaymentNotice)resource); 21977 else if (resource instanceof PaymentReconciliation) 21978 composePaymentReconciliation(name, (PaymentReconciliation)resource); 21979 else if (resource instanceof Person) 21980 composePerson(name, (Person)resource); 21981 else if (resource instanceof Practitioner) 21982 composePractitioner(name, (Practitioner)resource); 21983 else if (resource instanceof Procedure) 21984 composeProcedure(name, (Procedure)resource); 21985 else if (resource instanceof ProcedureRequest) 21986 composeProcedureRequest(name, (ProcedureRequest)resource); 21987 else if (resource instanceof ProcessRequest) 21988 composeProcessRequest(name, (ProcessRequest)resource); 21989 else if (resource instanceof ProcessResponse) 21990 composeProcessResponse(name, (ProcessResponse)resource); 21991 else if (resource instanceof Provenance) 21992 composeProvenance(name, (Provenance)resource); 21993 else if (resource instanceof Questionnaire) 21994 composeQuestionnaire(name, (Questionnaire)resource); 21995 else if (resource instanceof QuestionnaireResponse) 21996 composeQuestionnaireResponse(name, (QuestionnaireResponse)resource); 21997 else if (resource instanceof ReferralRequest) 21998 composeReferralRequest(name, (ReferralRequest)resource); 21999 else if (resource instanceof RelatedPerson) 22000 composeRelatedPerson(name, (RelatedPerson)resource); 22001 else if (resource instanceof RiskAssessment) 22002 composeRiskAssessment(name, (RiskAssessment)resource); 22003 else if (resource instanceof Schedule) 22004 composeSchedule(name, (Schedule)resource); 22005 else if (resource instanceof SearchParameter) 22006 composeSearchParameter(name, (SearchParameter)resource); 22007 else if (resource instanceof Slot) 22008 composeSlot(name, (Slot)resource); 22009 else if (resource instanceof Specimen) 22010 composeSpecimen(name, (Specimen)resource); 22011 else if (resource instanceof StructureDefinition) 22012 composeStructureDefinition(name, (StructureDefinition)resource); 22013 else if (resource instanceof Subscription) 22014 composeSubscription(name, (Subscription)resource); 22015 else if (resource instanceof Substance) 22016 composeSubstance(name, (Substance)resource); 22017 else if (resource instanceof SupplyDelivery) 22018 composeSupplyDelivery(name, (SupplyDelivery)resource); 22019 else if (resource instanceof SupplyRequest) 22020 composeSupplyRequest(name, (SupplyRequest)resource); 22021 else if (resource instanceof TestScript) 22022 composeTestScript(name, (TestScript)resource); 22023 else if (resource instanceof ValueSet) 22024 composeValueSet(name, (ValueSet)resource); 22025 else if (resource instanceof VisionPrescription) 22026 composeVisionPrescription(name, (VisionPrescription)resource); 22027 else if (resource instanceof Binary) 22028 composeBinary(name, (Binary)resource); 22029 else 22030 throw new Error("Unhandled resource type "+resource.getClass().getName()); 22031 } 22032 22033 protected void composeType(String prefix, Type type) throws IOException { 22034 if (type == null) 22035 ; 22036 else if (type instanceof Money) 22037 composeMoney(prefix+"Money", (Money) type); 22038 else if (type instanceof SimpleQuantity) 22039 composeSimpleQuantity(prefix+"SimpleQuantity", (SimpleQuantity) type); 22040 else if (type instanceof Duration) 22041 composeDuration(prefix+"Duration", (Duration) type); 22042 else if (type instanceof Count) 22043 composeCount(prefix+"Count", (Count) type); 22044 else if (type instanceof Distance) 22045 composeDistance(prefix+"Distance", (Distance) type); 22046 else if (type instanceof Age) 22047 composeAge(prefix+"Age", (Age) type); 22048 else if (type instanceof Identifier) 22049 composeIdentifier(prefix+"Identifier", (Identifier) type); 22050 else if (type instanceof Coding) 22051 composeCoding(prefix+"Coding", (Coding) type); 22052 else if (type instanceof Reference) 22053 composeReference(prefix+"Reference", (Reference) type); 22054 else if (type instanceof Signature) 22055 composeSignature(prefix+"Signature", (Signature) type); 22056 else if (type instanceof SampledData) 22057 composeSampledData(prefix+"SampledData", (SampledData) type); 22058 else if (type instanceof Quantity) 22059 composeQuantity(prefix+"Quantity", (Quantity) type); 22060 else if (type instanceof Period) 22061 composePeriod(prefix+"Period", (Period) type); 22062 else if (type instanceof Attachment) 22063 composeAttachment(prefix+"Attachment", (Attachment) type); 22064 else if (type instanceof Ratio) 22065 composeRatio(prefix+"Ratio", (Ratio) type); 22066 else if (type instanceof Range) 22067 composeRange(prefix+"Range", (Range) type); 22068 else if (type instanceof Annotation) 22069 composeAnnotation(prefix+"Annotation", (Annotation) type); 22070 else if (type instanceof CodeableConcept) 22071 composeCodeableConcept(prefix+"CodeableConcept", (CodeableConcept) type); 22072 else if (type instanceof HumanName) 22073 composeHumanName(prefix+"HumanName", (HumanName) type); 22074 else if (type instanceof ContactPoint) 22075 composeContactPoint(prefix+"ContactPoint", (ContactPoint) type); 22076 else if (type instanceof Meta) 22077 composeMeta(prefix+"Meta", (Meta) type); 22078 else if (type instanceof Address) 22079 composeAddress(prefix+"Address", (Address) type); 22080 else if (type instanceof Timing) 22081 composeTiming(prefix+"Timing", (Timing) type); 22082 else if (type instanceof ElementDefinition) 22083 composeElementDefinition(prefix+"ElementDefinition", (ElementDefinition) type); 22084 else if (type instanceof DateType) 22085 composeDate(prefix+"Date", (DateType) type); 22086 else if (type instanceof DateTimeType) 22087 composeDateTime(prefix+"DateTime", (DateTimeType) type); 22088 else if (type instanceof CodeType) 22089 composeCode(prefix+"Code", (CodeType) type); 22090 else if (type instanceof StringType) 22091 composeString(prefix+"String", (StringType) type); 22092 else if (type instanceof IntegerType) 22093 composeInteger(prefix+"Integer", (IntegerType) type); 22094 else if (type instanceof OidType) 22095 composeOid(prefix+"Oid", (OidType) type); 22096 else if (type instanceof UriType) 22097 composeUri(prefix+"Uri", (UriType) type); 22098 else if (type instanceof UuidType) 22099 composeUuid(prefix+"Uuid", (UuidType) type); 22100 else if (type instanceof InstantType) 22101 composeInstant(prefix+"Instant", (InstantType) type); 22102 else if (type instanceof BooleanType) 22103 composeBoolean(prefix+"Boolean", (BooleanType) type); 22104 else if (type instanceof Base64BinaryType) 22105 composeBase64Binary(prefix+"Base64Binary", (Base64BinaryType) type); 22106 else if (type instanceof UnsignedIntType) 22107 composeUnsignedInt(prefix+"UnsignedInt", (UnsignedIntType) type); 22108 else if (type instanceof MarkdownType) 22109 composeMarkdown(prefix+"Markdown", (MarkdownType) type); 22110 else if (type instanceof TimeType) 22111 composeTime(prefix+"Time", (TimeType) type); 22112 else if (type instanceof IdType) 22113 composeId(prefix+"Id", (IdType) type); 22114 else if (type instanceof PositiveIntType) 22115 composePositiveInt(prefix+"PositiveInt", (PositiveIntType) type); 22116 else if (type instanceof DecimalType) 22117 composeDecimal(prefix+"Decimal", (DecimalType) type); 22118 else 22119 throw new Error("Unhandled type"); 22120 } 22121 22122}